Мобильное программирование приложений реального времени в стандарте POSIX

Системы обнаружения атак на сетевом уровне

Атака - это событие, при котором кто-то (либо "хакер", либо "взломщик") пытается проникнуть внутрь вашей системы или совершить по отношению к ней какие-либо злоупотребления. (Термин атака может толковаться и как "любое действие нарушителя, приводящее к реализации угрозы, путем использования уязвимостей" - примечание переводчика). Слово "злоупотребления" имеет широкое толкование, и может отражать различные события, начиная от кражи конфиденциальных данных, и заканчивая засорением спамом вашей системы (хотя, для многих из нас это является более приоритетной проблемой!).

Продолжение

Обнаружение атак

Существующие сегодня на рынке коммерческие системы обнаружения атак (Intrusion Detection Systems, IDS) используют для распознавания и отражения атак либо сетевой, либо системный подход. В любом случае эти продукты ищут сигнатуры атак, специфические шаблоны, которые обычно указывают на враждебные или подозрительные действия. В случае поиска этих шаблонов в сетевом трафике, IDS работает на сетевом уровне. Если IDS ищет сигнатуры атак в журналах регистрации операционной системы или приложения, то это системный уровень. Каждый подход имеет свои достоинства и недостатки, но они оба дополняют друг друга. Наиболее эффективной является система обнаружения атак, которая использует в своей работе обе технологии. В данном материале обсуждаются различия в методах обнаружения атак на сетевом и системном уровнях с целью демонстрации их слабых и сильных сторон. Также описываются варианты применения каждого из способов для наиболее эффективного обнаружения атак.

Продолжение

Мобильное программирование - POSIX

Процесс – это адресное пространство вместе с выполняемыми в нем потоками управления, а также системными ресурсами, которые этим потокам требуются.
После того, как процесс создан с помощью функции fork(), он считается активным. Сразу после создания в его рамках существует ровно один поток управления – копия того, что вызвал fork().
До завершения процесса в его рамках существуют по крайней мере один поток управления и адресное пространство.
Большинство атрибутов процесса разделяются существующими в его рамках потоками управления. К числу индивидуальных атрибутов относятся идентификатор, приоритет и политика планирования, значение переменной errno, ассоциированные с потоком управления пары ключ/значение (служащие для организации индивидуальных данных потока и доступа к ним), а также системные ресурсы, требующиеся для поддержки потока управления.
Идентификатор потока управления уникален в пределах процесса, но не системы в целом.
Идентификаторы потоков управления представлены значениями типа pthread_t, который трактуется в стандарте POSIX-2001 как абстрактный. В частности, для него определен метод сравнения значений на равенство.

Основные идеи, понятия и объекты
Особенности синхронизации потоков управления
Одношаговое порождение процессов
Передача и прием сообщений в реальном времени
Отображение объектов в адресное пространство процессов
Функции управления планированием
Функции асинхронного ввода/вывода
Функции для работы с атрибутными объектами потоков трассировки
Функции и утилиты для работы с системным журналом
Управление средой вещественной арифметики
Потоки управления

Пособие по настройке и оптимизации компьютера

Процедуру настройки подсистем компьютера целесообразно повторять в зависимости от изменения характера решаемых задач, а также после проведения соответствующих операций по аппаратной и программной модернизации. С помощью соответствующей настройки и выполнения некоторых утилит можно, до некоторой степени, компенсировать изменение параметров ряда элементов в процессе их длительной эксплуатации (ухудшение параметров вследствие естественной деградации элементов). Для повышения производительности полезно периодически обновлять драйверы устройств и их BIOS. А такие операции, как сканирование и дефрагментация жестких дисков, следует проводить вообще регулярно. Игнорирование данных операций приводит в лучшем случае к уменьшению скорости, в худшем — к потере данных. Необходимо также периодически следить за новостями, связанными с исправлением ошибок и обновлением операционных систем и офисных программ. А сжатие жестких дисков — сжатие информации с помощью различных программных средств типа DriveSpace и Agent? Сжатие может не только существенно увеличить доступную емкость, но при некоторых обстоятельствах увеличить и скорость считывания информации, а следовательно, и скорость работы большинства программ.
Однако следует отметить, что даже тщательно настроенный и регулярно обслуживаемый компьютер не может длительное время соответствовать постоянно возрастающим требованиям. Рано или поздно каждый пользователь компьютера сталкивается с проблемой недостаточной его производительности для решения поставленных задач. После того как все резервы по увеличению производительности за счет всесторонней оптимизации работы аппаратных и программных средств компьютера полностью исчерпаны, приходится переходить к более радикальным мерам. Как правило, проблему недостаточной производительности одни пользователи решают путем покупки нового компьютера, другие — модернизации (upgrade) существующего. Оба варианта связаны со значительными финансовыми затратами, нередко весьма существенными. При этом достаточно часто указанные действия касаются еще нестарого и прекрасно работающего компьютера, возможно, купленного всего лишь год-два назад, а может быть и меньше!
Однако следует отметить, что кроме оптимизации работы аппаратно-программных средств и их модернизации, существует еще один путь, продлевающий период эксплуатации еще новой, но уже стремительно устаревающей вычислительной техники. Этот путь нередко дает вторую жизнь и тем компьютерам, которые современными уже никак не назовешь. Речь идет о методе, который по-английски называется "overclocking", а по-русски — "разгон". Суть данного метода заключается в эксплуатации некоторых элементов и узлов компьютера в форсированных режимах. Это, как правило, позволяет существенно повысить быстродействие каждого из них и соответственно производительность всей системы. Правда, следует отметить, что иногда все это достигается ценой некоторого снижения надежности работы и сокращения ресурса безаварийной эксплуатации, что во многих случаях вполне допустимо.

Введение
Следует отметить, что кроме оптимизации работы аппаратно-программных средств и их модернизации, существует еще один путь, продлевающий период эксплуатации еще новой, но уже стремительно устаревающей вычислительной техники. Этот путь нередко дает вторую жизнь и тем компьютерам, которые современными уже никак не назовешь. Речь идет о методе, который по-английски называется "overclocking", а по-русски — "разгон". Суть данного метода заключается в эксплуатации некоторых элементов и узлов компьютера в форсированных режимах. Это, как правило, позволяет существенно повысить быстродействие каждого из них и соответственно производительность всей системы. Правда, следует отметить, что иногда все это достигается ценой некоторого снижения надежности работы и сокращения ресурса безаварийной эксплуатации, что во многих случаях вполне допустимо.

Настройка BIOS Setup
BIOS ROM, например, фирмы Award, имеет встроенную setup-программу, которая позволяет менять базовую конфигурацию системы. Эта информация записывается в CMOS RAM, чтобы не потерять ее при отсутствии электропитания компьютера. Переход на setup-программу BIOS — BIOS Setup — осуществляется по нажатию ключевых клавиш при включении компьютера или его перезагрузке. Обычно для этих целей используется клавиша Delete.

Оптимизация работы жестких дисков
Эксплуатация жестких дисков нередко осложняется как сбоями в работе электроники, так и механических частей, а также файловой системы. Следствием этого могут служить частые сбои в работе компьютера, крах всей системы в целом и потеря ценной информации. В связи с этим все современные операционные системы включают в себя специальные программные средства, способные бороться с различного рода проблемами

Сжатие жестких дисков
Использование специализированных средств динамического сжатия информации, хранимой на жестких дисках компьютеров, позволяет эффективнее использовать доступное информационное пространство данных устройств. Это позволяет во многих случаях ослабить остроту недостаточности существующих ресурсов дисковой памяти без приобретения дополнительного оборудования. Выбору, настройке и анализу ряда особенностей некоторых средств сжатия информации, используемых в среде популярных операционных систем Windows, посвящен предлагаемый материал.

Кэширование жестких и компакт дисков
Повысить производительность устройств внешней памяти — жестких и компакт-дисков (CD-ROM) можно с помощью кэширования. В результате использования данного режима эксплуатации накопителей выделяется часть оперативной памяти для буферизации данных. Буферизация используется при операциях записи и чтения для жестких дисков и чтения для CD-ROM.

Оптимизация работы видео подсистемы
Возможности видеоподсистемы определяются видеоадаптером и размером его видеопамяти, и, конечно, качеством монитора. Потребности — прикладным и системным математическим обеспечением. Очевидно, что использование высокого разрешения при широкой палитре цветов порождает большие потоки цифровых данных, которые необходимо обрабатывать видеоподсистеме компьютера за ограниченное время.

Оптимизация работы оперативной памяти
В архитектуре компьютеров, построенных на основе традиционной архитектуры и системы команд процессоров фирмы Intel, первый мегабайт оперативной памяти занимает особое положение. Не случайно 640 Кбайт оперативной памяти, входящие в этот мегабайт и доступные для программ, называются основной или базовой (basic) памятью компьютера. Часть этой памяти занимают системные программы, остальное — прикладные программы.

Обновление BIOS материнской платы
BIOS материнской платы отвечает за корректную работу всей системы компьютера. От возможностей BIOS, отсутствия ошибок в программном коде, его эффективности в значительной степени зависит устойчивость работы и производительность компьютера в разных режимах эксплуатации. Фирмы, выпускающие материнские платы, совместно с разработчиками BIOS постоянно улучшают программный код.

Тестирование мониторинг и диагностика
Настройка и оптимизация аппаратно-профаммных средств нередко связана с анализом и установкой многочисленных параметров. При этом часто возникает проблема оценки эффективности тех или иных параметров, их значений, а также выбранных процедур программной и аппаратной настройки компьютера и т. д.



Локальная сеть в ОС Windows 9д/МТ/2000/ХР
Важным фактором повышения функциональных возможностей компьютеров является объединение их в локальную сеть. Это дает возможность обеспечить не только оперативную пересылку информации между компьютерами, но и совместное использование общих ресурсов с целью их более эффективного использования, исключения дублирования, существенной экономии средств.

Форсированные режимы
Существенно повысить общую производительность компьютера можно за счет установки для некоторых его подсистем форсированных режимов, задающих повышенную скорость их работы. К таким подсистемам относится процессор, который играет главную роль в обработке данных и управлении остальными подсистемами компьютера. Значительно повысить производительность компьютера можно с помощью увеличения внутренней частоты процессора и/или частоты шины процессора, определяющей его внешнюю частоту.

Требования к разгоняемым элементам
Для разгона, как правило, хорошо подходят процессоры фирмы Intel, например, такие как Pentium, Pentium MMX, Pentium II, Pentium III, Celeron. Хотя процессоры и других фирм нередко тоже не плохо поддаются данной процедуре. Не существует разгоняемых и неразгоняемых процессоров.

Разгон процессоров
Компьютеры с процессорами 286 — сильно устарели. Конечно, можно повысить их производительность за счет оптимальной настройки, можно и разогнать процессоры, но все равно они по скорости обработки данных будут уступать в десятки раз даже компьютерам с процессорами 486. Однако если рассматривать такие компьютеры как устройство, используемое для экспериментов, а процедуры повышения производительности компьютера как тренировку собственного интеллекта, то такие действия могут быть оправданными

Разгон видеоадаптеров и жестких дисков
Для архитектуры большинства материнских плат существуют средства, предоставляющие возможность корректировки значений частот шин AGP и PCI не только с помощью изменения частоты FSB, но и соответствующих коэффициентов деления частоты шины процессора. Это осуществляется либо с помощью ввода специальных параметров в BIOS Setup

Пошаговая схема разгона
Выключить компьютер, снять крышку с системного блока и открыть документацию по материнской плате. Выполнять основные правила работы при открытом (!) корпусе компьютера: опасаться статического электричества, поэтому перед работой коснуться корпуса, а лучше и в процессе работы держаться одной рукой за корпус компьютера; стараться не допустить попадания инородных предметов, особенно металлических, на платы устройств, в случае попадания — немедленно убрать; делать все уверенно, но осторожно и аккуратно. Определить все основные характеристики процессора, написанные на нем. Эти данные целесообразно записать.

Тестирование разогнанных систем
В следующей таблице представлены 20 результатов тестирования систем с повышенными частотами host-шины. Использовались различные материнские платы, процессоры, память

Материнские платы и чипсеты форсированных режимов
Рассматривая проблемы разгона, следует напомнить, что одной из задач исследования и использования форсированных режимов является повышение производительности уже существующих у пользователей компьютеров. Во многих случаях эти компьютеры имеют в своем составе комплектующие, параметры которых нельзя назвать очень уж современными и перспективными.

Методы и средства охлаждения
Для обеспечения надежной и устойчивой работы элементов и подсистем компьютера в штатных и особенно в форсированных режимах необходимо обеспечить их эффективное охлаждение. Это достигается следующими методами: выбором и использованием соответствующего корпуса; применением эффективных радиаторов; применением эффективных охлаждающих вентиляторов; использованием соответствующих программных средств.

Нейрокомпьютеры - архитектура и реализация

Общие принципы построения нейронных сетей были заложены в начале второй половины 20 века в работах таких ученых, как: Д. Хебб, М. Минский, Ф. Розенблат. Первые нейросети состояли из одного слоя искусственных нейронов-персептронов. М. Минским были строго доказаны ряд теорем определяющих принципы функционирования нейронных сетей. Несмотря на многочисленные преимущества персептронов: линейность, простота реализации параллельных вычислений, оригинальный алгоритм обучения и т.п., М. Минским вместе с соавторами было показано, что реализованные на его основе однослойные нейронные сети не способны решить большое число разнообразных задач. Это вызвало некоторое ослабление темпов развития нейросетевых технологий в 60-е годы. В дальнейшем многие ограничения по использованию нейросетей были сняты с разработкой многослойных нейронных сетей, определение которых было впервые введено Ф.Розенблатом: "под многослойной нейронной сетью понимается такое свойство структуры преобразования, которое осуществляется стандартной разомкнутой нейронной сетью при топологическом, а не символьном описании".

Элементы нейрологики с позиции аппаратной реализации
Что такое генетические алгоритмы