• Писать ли статью о программировании драйвера в Windows?

    @Omega
    тема интересная, и, я думаю, такую статью будут неоднократно находить поиском
    подумайте, что будет искать человек, который статью найдет и напишите в таком ключе, чтобы это была реальная помощь при написании подобной реализации
    Ответ написан
    1 комментарий
  • Писать ли статью о программировании драйвера в Windows?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Наверное все же стоит начать с основ, а затем уже углубляться. Но по сути вы можете опубликовать сначала статью о разделяемой памяти, а уже затем, как дополнение, статью о написании мини драйвера. Порядок написания статей особо роли не играет, если они интересные.

    Если бы вы написали эти статьи с 3 месяца назад, мне бы они, например, очень пригодились бы.
    Ответ написан
    1 комментарий
  • Посоветуйте IDE для школьников

    Riateche
    @Riateche
    Qt Creator выполняет все ваши требования и довольно приятен в работе.
    Ответ написан
    3 комментария
  • Кто какую книгу считает своим "стартом" в мир IT?

    Nastradamus
    @Nastradamus
    Мне родители купили эти две:




    Потом еще была еще про C++, тоже Симоновича. :)
    Ответ написан
    Комментировать
  • Кто какую книгу считает своим "стартом" в мир IT?

    shogunkub
    @shogunkub
    Программист+Инженер-электронщик
    По спектруму было много книжек, тогда начал писать на бейсике по чуть-чуть. Точных названий не упомню. Была ещё одна отличная книжка, после которой уже было ничего не страшно:
    image
    Ответ написан
    2 комментария
  • Шуточная шпаргалка по срокам выполнения проектов

    sefus
    @sefus
    Ответ написан
    Комментировать
  • Статистический анализ кода на С

    Gluttton
    @Gluttton
    Если за две недели успеешь, то Understand Scitools.
    Очень классный рекомендую (это как раз про картинки и графики).

    Есть еще Splint, но мне он не понравился, т.к. я не осилил его настройку.

    Т.к. С — это подможество С++, то вполне можно использовать cppcheck.

    Ну и в заключении, gcc c параметрами: -Wall -Wextra -Wdouble-promotion -Winit-self -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Wunused-local-typedefs -Wunused-parameter -Wuninitialized -Wno-div-by-zero -Wtrampolines -Wfloat-equal -Wtraditional -Wtraditional-conversion -Wundef -Wno-endif-labels -Wshadow -Wunsafe-loop-optimizations -Wpointer-arith -Wbad-function-cast -Wc++-compat -Wcast-qual -Wcast-align -Wwrite-strings -Wjump-misses-init -Wlogical-op -Waggregate-return -Wold-style-definition -Wmissing-prototypes -Wmissing-declarations -Wpacked -Wpacked-bitfield-compat -Wpadded -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wlong-long -Wvector-operation-performance -Wvla -Wvolatile-register-var -Woverlength-strings -Wunsuffixed-float-constants.

    Удачного рефакторинга и поддержки!
    Ответ написан
    4 комментария
  • Музыка и программирование

    philpirj
    @philpirj
    ТОЛЬКО ХАРДКОР!
    Ответ написан
    Комментировать
  • Как лучше организовать процесс разработки?

    retran
    @retran
    Мне кажется, что тут более правильный подход — branch by architecture.
    Т. е. вы реализуете в проекте IoC и включаете/отключаете нужную функциональность через конкретные конфиги для каждого клиента.

    Кодовая база при этом для всех одна.
    Рефакторинг может оказаться достаточно дорогим, но, ИМХО, branch hell — это еще дороже, если клиентов много.
    Ответ написан
    1 комментарий
  • Порекомендуйте систему контроля версий

    MastaEx
    @MastaEx
    Git, он может быть и локальный и удаленный и все вместе и какой угодно, ключевое слово децентрализованный. В качестве удаленного хранилища посмотрите BitBucket, они дают любое количество закрытых репозиториев.
    Ответ написан
    Комментировать
  • Double в kernel-mode (WinXp)?

    @amirul
    Налицо недопонимание :-), попробую прояснить ситуацию
    В общем, каждый поток имеет свой «контекст» (хранится в _KTHREAD::StateSaveArea), который включает в себя в том числе и состояние FPU (а также MMX, SSE и прочих) регистров. От этого никуда не денешься и при переключении контекста все это состояние сохраняется и перезагружается новыми значениями.

    Но учитывая то, что
    1. Все эти векторные расширения/плавающие точки имеют довольно много довольно больших регистров
    2. Для подавляющего большинства «ядерного» кода они все равно не нужны
    3. Переключение из юзермода в ядро и обратно должно быть как можно более быстрым

    то было принято решение, что ядерщики не облезут закатывать солнце вручную. Другими словами, при переключении в режим ядра и обратно перезагружаются только целочисленные регистры общего назначения (ну и флаги, сегментные регистры и пр.). Чтоб не нагадить в результаты вычислений пользовательской части потока, которая имела неосторожность вызвать (прямо или косвенно) Ваш код, нужно перед модификацией FP контекста сохранить его, а перед возвратом в юзермод — восстановить. Хранить результаты можно где угодно (в том числе и в девайс экстеншне).
    Ответ написан
    1 комментарий
  • Double в kernel-mode (WinXp)?

    AterCattus
    @AterCattus
    Люблю быстрый backend
    В силу специфики темы, я бы рекомендовал с таким вопросом обратиться на wasm.ru.
    Ответ написан
    1 комментарий
  • Какие есть методы тренировки памяти?

    Evengard
    @Evengard
    Совет знакомого врача:
    Судя по вашим словам («диагноз для галочки», «врач утверждает, что стану идиотом»), вас осматривал не очень профессиональный врач. Первым делом срочно обратитесь к квалифицированным специалистам в данной области, получите консультацию известных специалистов. Вам ещё неизвестно, что именно за патология, более того, непонятно, МРТ сделали впервые в жизни или была какая-то динамика? Какие-нибудь ещё обследования проводили? Были ли в семье случаи ранней смерти от неврологических заболеваний?
    Болезнь Паркинсона в 37 лет — это весьма маловероятно. Не исключён даже вариант, при котором симптомы обусловлены снижением кровообращения и хронической ишемией мозга (по сути транзиторные ишемические атаки, микроинсульты), в таком случае вам может помочь восстановление кровообращения по сосудам (чаще это сонные артерии). Так что пока у вас нет ясного диагноза, не впадайте в панику, а сосредоточьте усилия на том, чтобы его всё-таки получить.
    Что до советов по сохранению функций левого полушария и тренировки памяти — учите стихи, имена сотрудников, музыкальные произведения, даты исторических событий. Старайтесь говорить с подчёркнутой артикуляцией, максимально чётко. Решайте задачи по точным наукам.
    Ответ написан
    2 комментария
  • Какие мониторы меньше всего влияют на зрение?

    4dmonster
    @4dmonster
    «Какие мониторы меньше всего влияют на зрение?» — Выключенные!

    «А так же, какой должна быть яркость, контрастность? Цвета теплые?» — Определяется на глаз, яркость и контрастность — чтобы было хорошо видно, но не резало глаза. Температура цвета — дело привычки.

    «Использую минимальную яркость и теплые цвета + максимальную контрастность. Но днем плохо видно. Увеличивать яркость?» — Нужен баланс! Найдите себе несколько комфортных наборов. На день на вечер на ночь. И помните что очень сильно рекомендуют избегать контраста освещённости. т.е. вокруг монитора должно быть светло.
    Ответ написан
    2 комментария
  • Чьи портреты должны висеть в кабинете информатики?

    ximaera
    @ximaera
    Бэббидж, Тьюринг, Чёрч, Дейкстра, Шеннон, Маккарти, Керниган, Мур (который Гордон), Хоар, Кнут, Хомский, Томпсон, Вирт.

    А то это ж просто фейспалм какой-то — школьники из выдающихся людей в области CS знают только Джобса и Цукерберга. Про них и так фильмы снимают, оставьте их популяризацию Голливуду.
    Ответ написан
    Комментировать
  • Qt типы данных?

    hybridcattt
    @hybridcattt
    Про «почему» — не совсем так. каждая переменная будет округляться до машинного слова. то есть у Вас 16 + 4 + 4.
    А если будет BYTE, DOUBLE, BYTE, то в результате будет не 1 + 8 + 1 =10 -> 12, а 4 + 8 + 4 = 16!
    Ответ написан
    1 комментарий
  • Qt типы данных?

    maxpelevin
    @maxpelevin
    Java-разработчик
    Ответ на «почему?»: структуры и классы в C++ по умолчанию выравниваются в памяти кратно машинному слову, в данном случае 21 округлилось до 24.

    Как решить проблему уже ответили.
    Ответ написан
    1 комментарий
  • Qt типы данных?

    @BaJlepa
    #pragma pack (push, 1)
    struct TEST_STRUCT
    {
    char descriptor[16];
    DWORD val1;
    BYTE val2;
    };
    #pragma pack (pop)
    Ответ написан
    2 комментария
  • Цены на винчестеры

    Zverenish
    @Zverenish
    Потоп подкосил не только WD, но и других производителей. Потому как Seagate, сборочные линии которой не утонули — зависят от комплектующих, которые закупала у производителей, которые так же пострадали от наводнения.
    И хотя некоторые рапортуют о возобновлении производства (перенос в другие страны или на заводах после наводнения) — учтите, что конечный продукт — это сумма всех компонентов и от того, что кто-то возобновил и снизил цены — это не означает, что все так сделали.
    Например Hitachi серию дисков 7K1000.D, что использует терабайтные пластины, выпустила уже с высокой рекомендованной ценой, чем были в августе на аналогичные модели.

    Так же учесть надо, что WD надо отстроить достаточно много чуть ли не с нуля… это означает большие капиталовложения. Компания физически не может скинуть цену, учитывая, что рентабельность жестких дисков и так низкая. Ну а на повышенных ценах будут играть и остальные. Если можно продавать дороже ты знаешь, что конкурент дешевле не сделает (на рынке не так много производителей) — смысл продавать дешевле? И так ведь купят.

    Плюс вспомните российские реалии — во многих странах устраивают рождественские скидки. Но к нам это не относится. Каждый год с декабря по середину февраля в сфере железа у нас наблюдается «цены выше, ассортимент ниже, а то и вообще отсутствует». И цены возвращаются к «додекабрьским» только к марту.

    Итог — цены на жесткие диски вернутся к «допотопным» (имеется в виду не до потопа Ноя с ковчегом) только к лету.
    Ответ написан
    Комментировать