Определим структуру struct S {char a; bool b; int c}. Считаем, что sizeof(a) = sizeof(b) = 1, sizeof(c) = 4. Что выдаст sizeof(S)?
Может быть, 6? Не-а! Восемь. Все из-за выравнивания. Если считать, что поле a размещается по адресу 0, то с - по адресу 2 (по логике). Но процессору удобнее, если слова (word) расоплагаются по четным адресам, а int - по адресам, кратным 4. Т.е. поле с будет сдвинуто, память между b и с будет забита мусором.
среда, 8 июля 2009 г.
Линейная регрессия
Наконец-то мне объяснили, как проводить линейную регрессию!
Итак, пусть у нас есть N результатов наблюдений за случайной величиной X: (xi, zi). Мы предполагаем, что мат.ожидание X - это линейная функция ax+b. Параметры a и b находим с помощью МНК: минимизируем сумму квадратов отклонений (a * xi + b - zi)^2 по i от 1 до N.
Дифференцируем эту сумму по a и по b и приравниваем производные нулю. Получаем два уравнения для определения двух параметров (а и b).
Итак, пусть у нас есть N результатов наблюдений за случайной величиной X: (xi, zi). Мы предполагаем, что мат.ожидание X - это линейная функция ax+b. Параметры a и b находим с помощью МНК: минимизируем сумму квадратов отклонений (a * xi + b - zi)^2 по i от 1 до N.
Дифференцируем эту сумму по a и по b и приравниваем производные нулю. Получаем два уравнения для определения двух параметров (а и b).
воскресенье, 5 июля 2009 г.
Chord note
Пример запроса на www.chordie.com для получения аппликатур аккорда Dm6:
http://www.chordie.com/voicings.php?chord=Dm6&tuning=EADGBE
Нашел еще сайт с кучей видеоуроков: www.fretplay.com. В частности - как играть песню Offsprin "Have you ever seen".
http://www.chordie.com/voicings.php?chord=Dm6&tuning=EADGBE
Нашел еще сайт с кучей видеоуроков: www.fretplay.com. В частности - как играть песню Offsprin "Have you ever seen".
понедельник, 29 июня 2009 г.
Антивирусные утилиты
Еще раз коснусь этой темы - оказалось, что не только DrWeb делает "одноразовые" антивирусы.
Итак.
1. DrWeb CureIt - антивирусный сканер, не обновляется, скачивать непосредственно перед использованием. Качать отсюда: ftp.drweb.com/pub/drweb/cureit.
2. Kaspersky AVPTool. Аналогичная прога от Каспера.
ftp.kaspersky.ru/devbuilds/AVPTool
3. Kaspersky klwk. Утилита для удаления вирусов, блокирующих доступ к антивирусным сайтам.
ftp.kaspersky.ru/utils/klwk
Все перечисленное - бесплатно.
Итак.
1. DrWeb CureIt - антивирусный сканер, не обновляется, скачивать непосредственно перед использованием. Качать отсюда: ftp.drweb.com/pub/drweb/cureit.
2. Kaspersky AVPTool. Аналогичная прога от Каспера.
ftp.kaspersky.ru/devbuilds/AVPTool
3. Kaspersky klwk. Утилита для удаления вирусов, блокирующих доступ к антивирусным сайтам.
ftp.kaspersky.ru/utils/klwk
Все перечисленное - бесплатно.
вторник, 23 июня 2009 г.
Antivirus System Pro
Это такая дрянь, которая ставится на комп и прикидывается антивирусом. И давай - "Ваш компьютер инфицирован! Покупайте наш антивирус!". На самом деле это вирус. Он (как и Win32.HLLW.Shadow.based) делает комп частью преступной ботсети.
Убить его, в целом, просто - удалить пару файлов и ветку в реестре. Вот скрипт для Avenger.
Registry keys to delete: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{BAD4551D-9B24-42cb-9BCD-818CA2DA7B63}
Files to delete: %windir%\sysguard.exe %windir%\system32\iehelper.dll
Можно ли руками удалить? Не факт. У меня iehelper.dll (компонент, отвечающий за блокировку доступа к антивирусным сайтам) кто-то "держал" (Access denied при попытке удалить)
Убить его, в целом, просто - удалить пару файлов и ветку в реестре. Вот скрипт для Avenger.
Registry keys to delete: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{BAD4551D-9B24-42cb-9BCD-818CA2DA7B63}
Files to delete: %windir%\sysguard.exe %windir%\system32\iehelper.dll
Можно ли руками удалить? Не факт. У меня iehelper.dll (компонент, отвечающий за блокировку доступа к антивирусным сайтам) кто-то "держал" (Access denied при попытке удалить)
Win32.HLLW.Shadow.based
Свалился на меня злобный вирус. Он не дает заходить на антивирусные сайты (напр. www.symantec .com, а также все, содержащие в названии слова virus, trojan и т.д.) и на портал Microsoft. Не дает запускать некоторые проги - например, Process Explorer (от SysInternals), Avenger (это антивирусная утилитка) и т.д. Делает, короче, что хочет.
И что таки тут можно сделать:
1. Если прога не запускается (моргнул экранчик - и никакого окна), то надо переименовать соответствующий файл .exe .
2. Если не можем зайти на сайт - делаем (в консоли) nslookup имя сайта, он выдает один или несколько айпишников, можно зайти по ip
3. Качаем с ftp://ftp.drweb.com/ самую последнюю версию проги CureIt. Это необновляющийся антивир - качать надо каждый раз заново. Запускаем.
4. У меня он нашел вирий Win32.HLLW.Shadow.based. Его основной файл это name.dll, где name - случайная последовательность символов. CureIt удалила его, все заработало.
Во время лечения отыскал прогу Avenger. Она умеет сканировать на руткиты, но главное не это. В инете можно найти скрипты для Avenger, которые помогают лечить конкретный вирус. Скрипт состоит из набора файлов и ключей реестра, которые надо удалить. Avenger можно скачать с swandog46.geekstogo.com. Поддержка - на forums.spyware.info.
И что таки тут можно сделать:
1. Если прога не запускается (моргнул экранчик - и никакого окна), то надо переименовать соответствующий файл .exe .
2. Если не можем зайти на сайт - делаем (в консоли) nslookup имя сайта, он выдает один или несколько айпишников, можно зайти по ip
3. Качаем с ftp://ftp.drweb.com/ самую последнюю версию проги CureIt. Это необновляющийся антивир - качать надо каждый раз заново. Запускаем.
4. У меня он нашел вирий Win32.HLLW.Shadow.based. Его основной файл это name.dll, где name - случайная последовательность символов. CureIt удалила его, все заработало.
Во время лечения отыскал прогу Avenger. Она умеет сканировать на руткиты, но главное не это. В инете можно найти скрипты для Avenger, которые помогают лечить конкретный вирус. Скрипт состоит из набора файлов и ключей реестра, которые надо удалить. Avenger можно скачать с swandog46.geekstogo.com. Поддержка - на forums.spyware.info.
среда, 17 июня 2009 г.
Конференция им. А.А. Самарского - 2009
Проходит на ф-те ВМК МГУ 16-18 июня 2009 года.
Запомнилось:
Бобылев А.А. (Днепропетровск) Численное моделирование вынужденных колебаний вязкоупругих тел с трещинами с учетом контакта их берегов.
На образец с трещиной давят штампами, сила давления меняется, трещина открывается и закрывается, как рот.
Дьяченко С.В. и др (ИММ РАН) Трехмерный параллельный МГД-код на основе современных технологий вычислений и программирования.
Проект MARPLE, команда из 8-10 разработчиков. Используют продукты: Doxygen (составляет документацию по файлам кода, обеспечивает когерентность кода и документации); Subversion (контроль версий); cmake (кроссплатформенная сборка приложений на С++); trac (сервер для совместной работы над проектом; содержит доки, историю изменений, доступ к системе контроля версий и т.д.). Параллелят с помощью MPI, который умеет использовать многоядерность проца.
Запомнилось:
Бобылев А.А. (Днепропетровск) Численное моделирование вынужденных колебаний вязкоупругих тел с трещинами с учетом контакта их берегов.
На образец с трещиной давят штампами, сила давления меняется, трещина открывается и закрывается, как рот.
Дьяченко С.В. и др (ИММ РАН) Трехмерный параллельный МГД-код на основе современных технологий вычислений и программирования.
Проект MARPLE, команда из 8-10 разработчиков. Используют продукты: Doxygen (составляет документацию по файлам кода, обеспечивает когерентность кода и документации); Subversion (контроль версий); cmake (кроссплатформенная сборка приложений на С++); trac (сервер для совместной работы над проектом; содержит доки, историю изменений, доступ к системе контроля версий и т.д.). Параллелят с помощью MPI, который умеет использовать многоядерность проца.
Подписаться на:
Сообщения (Atom)