Оглавление
Лекция 1. ОСНОВНЫЕ ПОНЯТИЯ ИНФОРМАТИКИ
1.1 Понятие, содержание, объект и предмет информатики
1.2 Задачи, роль и место курса информатики в подготовке
специалистов
1.3 Информатизация общества
1.4 Информация и ее свойства
1.4.1 Информация и данные
1.4.2 Меры информации
1.4.2.1 Синтаксическая мера информации
1.4.2.2 Семантическая мера информации
1.4.2.3 Прагматическая мера информации
1.4.3 Качество информации
1.5 Кодирование сигналов
1.5.1 Основные виды и способы обработки и кодирования данных
1.5.2 Кодирование текста
1.5.3 Два способа кодирования изображения
1.5.4 Кодирование звука
1.5.5 Цифровое кодирование
1.5.5.1 Метод биполярного кодирования с альтернативной инверсией
1.5.5.2 Потенциальный код с инверсией при единице
1.5.5.3 Биполярный импульсный код
1.5.5.4 Манчестерский код
1.5.6 Обработка аналоговой и цифровой информации
1.5.7 Модуляция сигналов
1.6 Структура и закономерности протекания информационных
процессов
1.6.1 Информационная система
1.6.2 Процесс сбора информации
1.6.3 Процесс передачи информации
1.6.4 Обработка информации
1.6.5 Хранение информации
1.6.6 Системы хранения данных
1.7 Правовые аспекты информационных технологий
1.7.1 Информация, информационные процессы и системы как объект правового регулирования общественных отношений
1.7.1.1 Принципы информационного права
1.7.1.2 Методы информационного права
1.7.2. Информационное законодательство в сфере
информационных технологий
1.8 Основы защиты информации
1.8.1 Основные понятия, актуальность и основные проблемы
защиты информации современных информационных
систем
1.8.2 Классификация угроз современным системам обработки
информации
1.8.3 Классификация способов и средств защиты информации
Лекция 2 АРХИТЕКТУРА ЭВМ
2.1 Арифметические и логические основы ЭВМ
2.1.1 Представление данных в ЭВМ
2.1.1.1 Представление команд в ЭВМ
2.1.2 Системы счисления
2.1.2.1 Десятичная система счисления
2.1.2.2 Двоичная система счисления
2.1.2.3 Восьмеричная система счисления
2.1.2.4 Шестнадцатеричная система счисления
2.1.3 Элементы математической логики
2.1.4 Методы перевода чисел из одной системы счисления
в другую
2.1.4.1 Метод прямого замещения
2.1.4.2 Метод деления
2.1.4.3 Метод умножения
2.2 Структурная схема ПЭВМ
2.2.1 Состав и технические характеристики ПЭВМ
2.2.1.1 Понятие архитектуры
2.2.1.2 Структура компьютера
2.2.2 Состав и назначение основных блоков и узлов ПЭВМ
2.2.2.1 Назначение основных устройств ЭВМ
2.2.3 Внутри машинный системный интерфейс
2.2.4 Функциональные характеристики ПЭВМ
2.3 Микропроцессоры
2.3.1 Типы и структура микропроцессоров
2.3.1.1 Основные характеристики МП
2.3.1.2 Типовая структура микропроцессора
2.3.1.3 Программно-логическая модель центрального
процессора
2.3.1.4 Особенности процессоров фирмы Intel
2.4 Запоминающие устройства
2.4.1 Организация оперативной памяти
2.4.1.1 Организация доступа памяти в Intel-совместимых
процессорах
2.4.1.2 Области памяти IBM совместимых персональных
компьютеров
2.4.1.3 Общая характеристика способов реализации запоминающих
устройств
2.4.2 Регистровая КЭШ - память
2.4.3 Внешняя память
2.4.3.1 Классификация внешних запоминающих устройств
2.4.3.2 Накопители на гибких магнитных дисках
2.4.3.3 Правила обращения с дисками
2.4.3.4 Накопители на жестких магнитных дисках
2.4.3.5 Накопители на оптических дисках
2.4.3.6 Накопители на магнитной ленте
Лекция 3. Программное обеспечение ПЭВМ
3.1 Общая характеристика и состав программного
обеспечения
3.1.1 Состав и назначение программного обеспечения
3.1.1.1 Классификация программного обеспечения
3.1.2 Система программирования
3.1.2.1 Языки программирования
3.1.3 Прикладное программирование
3.2 Операционные системы
3.2.1 Общие сведения об операционных системах
3.2.2 Состав и структура операционной системы MS-DOS
3.3 Операционная система MS-DOS
3.3.1 Логическая структура дисков
3.3.1.1 Логическая структура гибкого магнитного диска
3.3.1.2 Логическая структура жесткого магнитного диска
3.3.2 Начальная загрузка MS-DOS
3.3.3 Файловая система MS-DOS
3.3.3.1 Файлы
3.3.3.2 Каталоги
3.3.3.3 Путь и приглашение
3.4 Сервисное программное обеспечение
3.4.1 Характеристика компьютерных вирусов
3.4.2 Способы распространения и структура компьютерных
вирусов
3.4.2.1 Файловые вирусы
3.4.2.2 Загрузочные вирусы
3.4.3 Программы обнаружения и защиты от компьютерных вирусов
3.4.4 Общие сведения об архивации файлов
3.5 Операционная система Windows
3.5.1 Общие сведения об операционной системе Windows
3.5.2 Концепция виртуальных машин
3.5.3 Архитектура файловой системы
3.5.4 Интерфейс прикладного программирования (Windows API)
3.5.5 Компоненты подсистемы Plug and Play
Список используемых сокращений
АИС - автоматизированная информационная система;
АМ - амплитудная модуляция;
АРМ - автоматизированное рабочее место;
АСОД - автоматизированная система обработки данных;
АЦП - аналого-цифровой преобразователь;
БЗ - база знаний;
ДИ - декодер информации;
ИБ - информационная безопасность;
ИВЦ - информационно-вычислительный центр;
ИВЦКП - информационно-вычислительный центр коллективного
пользования;
ИКТ - информационные и коммуникационные технологии;
ИП - информационный процесс;
ИР - информационные ресурсы;
ИС - информационная система
ИТ - информационная технология;
ИТКС - информационная телекоммуникационная система;
КИ - кодер источника;
КС - канал связи;
ЛВС - локальная вычислительная сеть;
МККТТ - Международный консультационный комитет по
телеграфии и телефонии;
МП - микропроцессор;
МСЭ - Международный совет электросвязи;
НГМД - накопитель на гибком магнитном диске;
НЖМД - накопитель на жестком магнитном диске;
ОС - операционная система;
ОУ - объект управления;
ПРД - передатчик;
ПРМ - приемник;
ПЭВМ - персональная электронная вычислительная машина;
СВТ - средства вычислительной техники;
СИБ - система информационной безопасности;
СМИ - средства массовой информации;
СУБД - система управления базами данных;
СХД - система хранения данных;
ТСОИ - технические средства обработки информации;
ФЗ - Федеральный закон;
ФМ - фазовая модуляция;
ФСО – Федеральная служба охраны;
ФСБ - Федеральная служба безопасности;
ЦАП - цифроаналоговый преобразователь;
ЧМ - частотная модуляция;
ЭВМ - электронная вычислительная машина;
ЭВТ - электронная вычислительная техника;
ЭЦП – электронная цифровая подпись;
AMI - метод биполярного кодирования с альтернативной
инверсией;
ASCII - American Standard Code of Information Interchange
(американский стандартный код обмена
информацией);
IBM - International Business Machine Corp;
FC - fiber channel;
HBA - host bus adapter;
PIT - point-in-time;
PC - personal computer (персональный компьютер);
SAN - storage area network.
ЛЕКЦИЯ 1. ОСНОВНЫЕ ПОНЯТИЯ ИНФОРМАТИКИ
1.1 Понятие, содержание, объект и предмет информатики
Термин "информатика" начал использоваться в отечественной научно-технической литературе в начале 80-х гг. и быстро приобрел широкую популярность. Первоначально он зародился во Франции в середине 60-х гг. ХХ в. (от фр. informatique) и применяется в странах Европы для обозначения области научных знаний, связанных с автоматизацией обработки информации с помощью электронных вычислительных машин (ЭВМ). В англоязычных странах для этой цели используется термин "computer science" (вычислительная наука).
Выделение информатики как самостоятельной области человеческой деятельности в первую очередь связано с развитием компьютерной техники, причем основная заслуга в этом принадлежит микропроцессорной технике, появление которой в середине 70-х гг. послужило началом второй электронной революции. С этого времени элементной базой вычислительной машины становятся интегральные схемы и микропроцессоры, а область, связанная с созданием и использованием компьютеров, получила мощный импульс в своем развитии.
В 1978 г. международный научный конгресс официально закрепил за понятием "информатика" направления, связанные с разработкой, созданием, использованием и материально-техническим обслуживанием систем обработки информации, включая компьютеры и их программное обеспечение, а также организационные, коммерческие, административные и социально-политические аспекты компьютеризации, т. е. массовое внедрение компьютерной техники во все области жизни людей.
Существует множество определений информатики, что связано с многогранностью ее функций, возможностей, средств и методов. Обобщая опубликованные в литературе по информатике определения этого термина, предлагаем следующую трактовку.
Информатика - это основанная на использовании компьютерной техники дисциплина, изучающая структуру и общие свойства информации, а также закономерности и методы ее создания, хранения, поиска, преобразования, передачи и применения в различных сферах человеческой деятельности.
Часто возникает путаница понятий "информатика" и "кибернетика". Попытаемся разъяснить их сходство и различие.
Кибернетика – это наука об общих принципах управления в различных системах: технических, биологических, социальных и др.
Информатика занимается изучением процессов преобразования и создания новой информации более широко, практически не решая задачи управления различными объектами, как кибернетика. Информатика появилась благодаря развитию компьютерной техники, базируется на ней и совершенно немыслима без нее. Кибернетика развивается сама по себе и, активно используя достижения компьютерной техники, совершенно от нее не зависит, так как строит различные модели управления объектами.
Информатика – научная дисциплина с широчайшим диапазоном применения:
в разработке вычислительных систем и пpогpаммного обеспечения;
теории информации, изучающей процессы, связанные с передачей, приемом, преобразованием и хранением информации;
методах искусственного интеллекта, позволяющих создавать программы для решения задач, требующих определенных интеллектуальных усилий при выполнении их человеком (логический вывод, обучение, понимание речи, визуальное восприятие, игры и др.);
системном анализе, заключающемся в анализе назначения проектируемой системы и в установлении требований, которым она должна отвечать;
методах машинной графики, анимации, средствах мультимедиа;
средствах телекоммуникации, в том числе глобальных компьютерных сетях, объединяющих все человечество в единое информационное сообщество;
разнообразных приложениях, охватывающих производство, науку, образование, медицину, торговлю, сельское хозяйство и все другие виды хозяйственной и общественной деятельности.
Информатику представляют состоящей из трех частей: технические, программные и алгоритмические средства.
Технические средства, т. е. аппаратура компьютеров, в английском языке обозначаются словом Hardware, которое буквально переводится как "твердые изделия".
Для программных средств выбрано (а точнее, создано) слово Software (буквально – "мягкие изделия"), подчеркивающее равнозначность программного обеспечения и самой машины и способность программного обеспечения модифицироваться, приспосабливаться, развиваться.
Программное обеспечение – это совокупность всех программ, используемых компьютерами, а также вся область деятельности по их созданию и применению.
Алгоритмические средства российский академик А. А. Дородницин предложил называть Brainware (от англ. brain – интеллект). Эта часть информатики связана с разработкой алгоритмов и изучением методов и приемов их построения. Нельзя приступить к программированию, не разработав предварительно алгоритм решения задачи.
В Академии ФСО России дисциплина "Информатика" предназначена для подготовки специалистов по направлению "Информатика и вычислительная техника" и является одной из основных дисциплин естественнонаучного цикла. Это теоретический базис, основа для подготовки специалиста, умеющего решать задачи профессиональной деятельности в области автоматизированных систем обработки информации и управления. Освоение учебного материала дисциплины базируется на общей физико-математической подготовке обучаемых, знаниях основ информатики, иностранного языка; умениях использовать математические методы при формализации и решении прикладных задач.
Такие знания и умения обучаемые приобретают при изучении дисциплин "Физика", "Высшая математика", "Информатика" (в объеме средней школы) и соответствующих дисциплин вуза.
Дисциплина содержит материал, необходимый для изучения информации, как основного объекта государственно-правового регулирования деятельности должностных лиц в различных сферах и видах деятельности, в том числе органов государственной власти и местного самоуправления. Она носит теоретико-прикладную направленность. Ее содержание включает как фундаментальные знания информационной науки, так и основные вопросы практического использования новых информационных технологий, в основе которых лежит применение ЭВМ, систем и сетей ЭВМ.
Объектом информатики выступают автоматизированные, основанные на ЭВМ и телекоммуникационной технике, информационные системы различного класса и назначения. Рассматриваются все стороны их разработки, проектирования, создания, анализа и использования на практике.
Предмет информатики как науки составляют аппаратное и программное обеспечение средств вычислительной техники, средства взаимодействия аппаратного и программного обеспечения, средства взаимодействия человека с аппаратными и программными средствами.
Средства взаимодействия в информатике принято называть интерфейсом, поэтому средства взаимодействия аппаратного и программного обеспечения называют также программно-аппаратным интерфейсом, а средства взаимодействия человека с аппаратными и программными средствами – интерфейсом пользователя.
1. 2 Задачи, роль и место курса информатики в подготовке специалистов
Цели изучения дисциплины:
1. Подготовка выпускника к деятельности в территориальных органах и подразделениях связи специального назначения Службы специальной связи и информации ФСО РФ на инженерных и командных должностях на базе полученных в соответствии со специальностью, знаний, умений и навыков в области автоматизированных систем обработки информации и управления.
2. Развитие у подготавливаемых специалистов основ информационного мышления и культуры, адекватных современному уровню развития информационной науки и новым информационным технологиям.
3. Формирование знаний и умения использовать естественно-научные знания информатики и математики, необходимые для выполнения служебной деятельности в различных сферах развивающегося информационного общества: социально-правовой, информационной, обеспечения информационной безопасности личности, общества и государства, защиты конфиденциальной информации и сведений, составляющих государственную, коммерческую и другие виды тайны; постановки информационных задач, моделирования и анализа информации; осуществления дальнейшего профессионального самообразования в области информатики и математики.
Задачи изучения дисциплины:
Создание научных представлений об информатике как особом способе познания мира, об их месте и роли в общей системе социально-экономических, гуманитарных, естественнонаучных, общепрофессиональных и специальных дисциплин.
Развитие информационной культуры, в которой рассматриваются основные положения информатизации общества, понятия информации, ее свойств, характеристик, современных информационных технологий.
Ознакомление с научно-методологической, методической, понятийной основами информатики, а также с особенностями использования в изучении и исследовании правовых учений, процессов, общественных отношений.
Изучение концептуальных взглядов, направлений, проблем, перспектив развития информатики.
Изучение современных принципов, методов и средств сбора, обработки, передачи, хранения и переработки информации, в том числе правовой.
Изучение методических и практических проблем технологии автоматизации видов и сфер государственно-правовой деятельности и связанных с ними процессов обработки информации.
7. Приобретение необходимых знаний в области алгоритмизации и программирования задач профессиональной деятельности.
8. Получение знаний устройства и основных принципов работы персонального компьютера как основного инструмента по обработке информации.
9. Овладение умениями использования и работы с современными информационными технологиями, а также со стандартным и специализированным программным обеспечением:
привитие умения эффективного использования персональных компьютеров в правореализационной и правотворческой деятельности;
формирование адаптивности специалиста к непрерывному изучению основных видов и средств представления и обработки информации;
приобретение знаний об организации внедрения, методах и способах использования новых информационных технологий для повышения эффективности государственной деятельности;
изучение базовых понятий, положений, современных проблем и направлений обеспечения информационной безопасности личности, общества и государства и информационных систем;
привитие навыков информационного мышления при решении задач оперативно-служебной деятельности;
раскрытие содержания общих понятий о численной реализации задач с целевыми функциями на персональных компьютерах.
В результате изучения дисциплины "Информатика" специалисты должны соответствовать государственным требованиям к минимуму содержания и уровню подготовки специалиста, а также дополнениям к государственным требованиям к минимуму содержания и уровню подготовки выпускника Академии ФСО России.
В результате изучения дисциплины "Информатика" курсанты должны
знать:
характеристики и архитектуру основных классов ЭВМ;
структуру, технические характеристики и особенности построения основных устройств современных ЭВМ;
принципы алгоритмизации, технологию разработки программ решения информационных и вычислительных задач с помощью ЭВМ;
один из языков программирования высокого уровня (Turbo Pascal);
назначение и возможности текстовых и табличных процессоров, интегрированных программных средств;
назначение, принцип построения и возможности систем управления базами данных (СУБД);
назначение и возможности операционных систем и системного программирования;
уметь:
работать с операционной системой (ОС) и ее оболочками;
составлять программу обработки информации;
формализовать прикладную задачу и разработать алгоритм ее решения на ЭВМ;
работать с текстовыми и табличными процессорами и СУБД;
работать с пакетами прикладных программ специального назначения;
организовывать грамотную эксплуатацию вычислительной техники;
иметь представление:
о современной технологии программирования сложных систем обработки информации;
способах защиты информации, обрабатываемой на ЭВМ, от несанкционированного доступа, копирования, уничтожения, а также основных способах борьбы с компьютерными вирусами.
Роль информатики в развитии общества чрезвычайно велика. С ней связано начало революции в области накопления, передачи и обработки информации. Эта революция, следующая за революциями в области овладения веществом и энергией, затрагивает и коренным образом преобразует не только сферу материального производства, но и интеллектуальную, духовную сферы жизни.
Рост производства компьютерной техники, развитие информационных сетей, создание новых информационных технологий приводят к значительным изменениям во всех сферах общества: производстве, науке, образовании, медицине и т. д.
1.3 Информатизация общества
В истории развития цивилизации произошло несколько информационных революций – преобразований общественных отношений из-за кардинальных изменений в сфере обработки информации. Их следствием явилось приобретение человеческим обществом нового качества.
Первая революция произошла с изобретением письменности, что привело к гигантскому качественному и количественному скачку. Появилась возможность передачи знаний от поколения к поколению.
Вторая (середина XVI в.) вызвана изобретением книгопечатания, радикально изменившим индустриальное общество, культуру, организацию деятельности.
Третья (конец XIX в.) обусловлена изобретением электричества, благодаря чему появились телеграф, телефон, радио (1895 г.), позволяющие оперативно передавать информацию.
Четвертая (70-е гг. XX в.) связана с изобретением микропроцессорной технологии и появлением персонального компьютера. На микропроцессорах и интегральных схемах создаются компьютеры, компьютерные сети, системы передачи данных (информационные коммуникации). Этот период характеризуют три фундаментальные инновации:
Переход от механических и электрических средств преобразования информации к электронным.
Миниатюризация всех узлов, устройств, приборов, машин.
Создание программно-управляемых устройств и процессов.
Для создания более целостного представления об этом периоде целесообразно познакомиться с приведенной ниже справкой о смене поколений ЭВМ и сопоставить эти сведения с этапами развития в области обработки и передачи информации (табл. 1.1).
История зарождения и развития вычислительной техники довольно коротка. Ее принято исчислять с 1833 г., когда английский математик Чарльз Беббидж впервые проникся идеей создания механического "вычислительного помощника", в котором используется принцип программного управления. Потребовалось более 100 лет, чтобы эта идея, обогащенная американским математиком Дж. фон Нейманом в 1945–1947 гг., положила начало эры ЭВМ, базирующихся на появившихся к тому времени электронных лампах.
Первая быстродействующая ЭВМ ЭНИАК, созданная американскими специалистами в Пенсильванском университете, состояла из 18 тыс. электронных ламп, потребляла более 100 кВт электроэнергии, весила 30 т и занимала комнату длиной 30 м. Машина была специализированной и предназначалась для решения дифференциальных уравнений в задачах расчета траекторий. С момента создания в 1947 г. первой программно-управляемой цифровой ЭВМ начался бурный прогресс вычислительной техники.
Таблица 1.1Справка о смене поколений ЭВМ
Поко-ление | Время | Элементная база | Характеристика |
1-е | Начало 50-х гг. | Электронные лампы | ЭВМ отличались большими габаритами, высоким потреблением энергии, малым быстродействием, низкой надежностью, программированием в кодах |
2-е | С конца 50-х гг. | Полупроводни-ковые элементы | Улучшились все технические характеристики. Для программирования использовались алгоритмические языки |
3-е | Начало 60-х гг. | Интегральные схемы, многослойный печатный монтаж | Резкое снижение габаритов ЭВМ, повышение их надежности, увеличение производительности |
4-е | С сере-дины 70-х гг. | Микропроцессоры, большие интегральные схемы (БИС) | Улучшились технические характеристики. Массовый выпуск персональных компьютеров. Направление развития: мощные многопроцессорные вычислительные системы с высокой производительностью, создание дешевых микроЭВМ |
5-е | С сере-дины 80-х гг. | Разработка интеллектуальных компьютеров | Внедрение во все сферы компьютерных сетей и их объединение, использование распределенной обработки данных, повсеместное применение компьютерных технологий |
Совершенствование элементной базы привело к существенному уменьшению размеров, стоимости и энергопотребления, а также к повышению быстродействия и надежности ЭВМ. Эволюция архитектурных решений способствовала успешному росту последних двух показателей. Большие успехи были достигнуты также в области периферийного оборудования, что существенно облегчило общение пользователей ЭВМ.
В 1982 г. Х. Тунг и А. Гупта провели сравнение, иллюстрирующее высокие темпы развития средств вычислительной техники (СВТ): "Если бы за последние 25 лет авиационная промышленность развивалась столь же стремительно, как и вычислительная техника, то "Боинг-767" можно было бы приобрести сегодня за 500 долл. и облететь на нем земной шар за 20 минут, израсходовав при этом 19 литров горючего". С тех пор скорость вычислений возросла в 20 раз, а размеры и энергопотребление ЭВМ стали в 10 000 раз меньше, чем у машин сравниваемой производительности 25-летней давности. В последние годы отмеченные тенденции не только сохранились, но и усилились. Исходя из этого вполне закономерным явилось появление микропроцессоров (МП) и создание на их основе микроЭВМ, венцом которых стали ПЭВМ. Первая персональная машина была сконструирована американской фирмой MITS в 1975 г. и названа Altair 8800. По сегодняшним меркам она, ощетинившаяся индикаторными лампочками и переключателями, выглядит довольно странно. Цена ее составляла около 6 000 долл. Эта машина давно уже не выпускается.
Следующая ПЭВМ была создана в буквальном смысле в гараже двумя американцами С. Возняком и С. Джобсоном в 1976 г. Она получила название Apple-I. Весной 1977 г. ими же был изготовлен относительно дешевый и вместе с тем вполне законченный персональный компьютер Apple-II. В результате домашняя мастерская превратилась в процветающую фирму Apple Computer, которая продолжительное время занимала достойное место на рынке ПЭВМ.
В начале 80-х гг. в ряды производителей ЭВМ влились компьютерные гиганты International Business Machine Corp (IBM), DEC и Hewlett-Packard.
Во второй половине XX в. человечество вступило в новый этап своего развития. В этот период начался переход от индустриального общества к информационному.
Бурное развитие компьютерной техники и информационных технологий послужило толчком к развитию общества, построенного на использовании различной информации и получившего название информационного общества.
Информационное общество – общество, в котором большинство работающих занято производством, хранением, переработкой и реализацией информации, особенно высшей ее формы – знаний.
Японские ученые считают, что в информационном обществе процесс компьютеризации даст людям доступ к надежным источникам информации, избавит их от рутинной работы, обеспечит высокий уровень автоматизации обработки информации в производственной и социальной сферах. Движущей силой развития общества должно стать производство информационного, а не материального продукта. Материальный продукт станет информационно более емким, что означает увеличение доли инноваций, дизайна и маркетинга в его стоимости.
В информационном обществе изменятся не только производство, но и весь уклад жизни, система ценностей, возрастет значимость культурного досуга по отношению к материальным ценностям. По сравнению с индустриальным обществом, где все направлено на производство и потребление товаров, в информационном обществе производятся и потребляются интеллект, знания, что приводит к увеличению доли умственного труда.
Для информационного общества характерно обеспечение требуемой степени информированности всех его членов, возрастание объема и уровня информационных услуг, предоставляемых пользователю. Такое общество в теоретическом аспекте характеризуется высокоразвитой информационной сферой (инфосферой), которая включает деятельность человека по созданию, переработке, хранению, передаче и накоплению информации.
Информационное общество имеет следующие признаки:
Большинство работающих (около 70 %) занято в информационной сфере, т. е. сфере производства информации и информационных услуг.
Обеспечены техническая, технологическая и правовая возможности доступа любому члену общества практически в любом пункте расположения и в приемлемое время к нужной ему информации (за исключением военных и государственных секретов, точно оговоренных в соответствующих законодательных актах).
Информация становится важнейшим стратегическим ресурсом общества и занимает ключевое место в экономике, образовании и культуре.
Материальной и технологической базой информационного общества станут различного рода системы на базе компьютерной техники и компьютерных сетей, информационной технологии, телекоммуникационной связи.
Процесс, обеспечивающий этот переход, получил название "информатизация". Информатизация общества – организованный социально-экономический и научно-технический процесс создания условий для удовлетворения информационных потребностей и реализации прав граждан, органов государственной власти, органов местного самоуправления, организаций, общественных объединений на основе формирования и использования информационных ресурсов. При этом информация становится важнейшим стратегическим ресурсом общества и занимает ключевое место в экономике, образовании и культуре.
Неизбежность информатизации общества обусловлена возрастанием объема информации, которое особенно стало заметно в середине XX в. Лавинообразный поток информации хлынул на человека, не давая ему возможности воспринять эту информацию в полной мере. В ежедневно появляющемся новом потоке информации ориентироваться становилось все труднее. Подчас выгоднее стало создавать новый материальный или интеллектуальный продукт, чем вести розыск аналога, сделанного ранее.
Образование больших потоков информации обусловливается:
чрезвычайно быстрым ростом числа документов, отчетов, диссертаций, докладов и т. п., в которых излагаются результаты научных исследований и опытно-конструкторских работ;
постоянно увеличивающимся числом периодических изданий по разным областям человеческой деятельности;
появлением разнообразных данных (метеорологических, геофизических, медицинских, экономических и др.), записываемых обычно на магнитных лентах и поэтому не попадающих в сферу действия системы коммуникации.
Как результат – наступает информационный кризис (взрыв), следующие проявления:
появляются противоречия между ограниченными возможностями человека по восприятию и переработке информации и существующими мощными потоками и массивами хранящейся информации. Так, общая сумма знаний менялась вначале очень медленно, но уже с 1900 г. она удваивалась каждые 50 лет, а к 1950 г. удвоение происходило каждые 10 лет, к 1970 г. – каждые 5 лет, с 1990 г. – ежегодно;
существует большое количество избыточной информации, которая затрудняет восприятие полезной для потребителя информации;
возникают определенные экономические, политические и другие социальные барьеры, препятствующие распространению информации. Например, по причине соблюдения секретности часто к необходимой информации запрещен доступ работникам разных ведомств.
Эти причины породили весьма парадоксальную ситуацию: в мире накоплен громадный информационный потенциал, но люди не могут им воспользоваться в полном объеме в силу ограниченности своих возможностей. Выходом из создавшегося положения явилось бурное развитие компьютерной техники и информационных технологий.
Современная информационная технология опирается на достижения в области компьютерной техники и средств связи.
Информационная технология (ИТ) – процесс, использующий совокупность средств и методов сбора, обработки и передачи данных (первичной информации) для получения информации нового качества о состоянии объекта, процесса или явления.
Важнейшим видом информационных технологий является телекоммуникация – дистанционная передача данных на базе компьютерных сетей и современных технических средств связи.
Процесс перехода от постиндустриального общества к информационному происходит не одновременно в различных странах и характеризуется разными темпами развития. Первыми на этот путь встали в конце 50-х гг. – начале 60-х гг. XX в. США, Япония и страны Западной Европы. В этих государствах, начиная с 60–70-х гг., проводится политика повсеместной информатизации всех сфер деятельности человека. Были разработаны и приняты на государственном уровне программы информатизации с целью наиболее полного использования информационного ресурса для ускорения экономического, социального и культурного развития общества. Предполагается, что США завершат переход к информационному обществу к 2020 г., Япония и основные страны Западной Европы – к 2030–2040 гг.
В СССР в 1989 г. была разработана Концепция информатизации общества. По предварительным оценкам информатизация в России завершится к 2050 г. при условии стабилизации экономической и политической обстановки в стране. По мнению специалистов, любая страна, насколько бы индустриально развитой она ни была, перейдет в разряд стран третьего мира, если опоздает с информатизацией.
Если предшествующие этапы развития человечества длились каждый около трех веков, то ученые прогнозируют, что информационный этап продлится значительно меньше. Срок его существования ограничится, вероятно, сотней лет. Это означает, что основные регионы мира войдут в развитое информационное общество в XXI в., и в этом же веке начнется переход к постинформационному обществу.
В процессе информатизации общества происходит создание и накопление основного вида ресурса – информационного. Информационные ресурсы (ИР) – это идеи человечества и указания по их реализации, накопленные в форме, позволяющей их воспроизводство.
Основные особенности информационных ресурсов:
отличие от других видов ресурсов (в частности материальных) практически неисчерпаемы; по мере развития общества и роста потребления знаний их запасы не убывают, а растут;
по мере использования не исчезают, а сохраняются и даже увеличиваются (за счет трансформации полученных сообщений с учетом опыта и местных условий);
несамостоятельны и имеют лишь потенциальное значение. Только соединяясь с другими ресурсами (опытом, трудом, квалификацией, техникой, энергией, сырьем), проявляются как движущая сила;
являются формой непосредственного включения науки в состав производительных сил. В индустриальном обществе наука выступает опосредованной производительной силой;
возникают в результате не просто умственного труда, а его творческой части. Рутинная часть умственной работы сама по себе не информативна: она не увеличивает потенциала нужных знаний, не меняет представлений о путях достижения цели;
превращение знаний в информационные ресурсы зависит от возможностей их кодирования, распределения и передачи.
Существуют две формы ИР: пассивная и активная.
К пассивной относятся книги, журнальные статьи, патенты и банки данных, а также знания, привязанные к конкретным предметным областям (например, выборки, извлечения данных и т. п.), если они некомплексные, т. е. недостаточные для целенаправленного применения.
Активные формы: модель, алгоритм, проект, программа и база знаний (БЗ).
Модель – это описание системы, отображающее определенную группу ее свойств. Создание модели системы позволяет предсказывать ее поведение в определенном диапазоне условий.
Алгоритм – это совокупность правил, предписывающих выполнение последовательности действий, приводящих к решению задачи.
Программа и проект – конечные синтетические формы существования ИР в его жизненном цикле.
База знаний (knowledge base) – это совокупность знаний о некоторой предметной области, на основе которых можно производить рассуждения; основная часть экспертных систем, где с по-мощью БЗ представляются навыки и опыт экспертов, разрабатывающих эвристические подходы в ходе решения проблем. БЗ представляет собой набор фактов и правил, формализующих опыт специалистов в этой области и позволяющих давать ответы на вопросы об этой предметной области, которые в явном виде не содержатся в БЗ.
В отличие от баз данных, содержащих сведения о количественных и качественных характеристиках конкретных объектов, БЗ содержат концептуальные, понятийные знания, выраженные на естественном языке в терминах предметной области, т. е. знания о стоящих за этими терминами классах объектов, их свойствах и логических связях, которыми может оперировать машина логического вывода как элемент искусственного интеллекта.
1.4 Информация и ее свойства
1.4.1 Информация и данные
Слово "информация", известное в наше время каждому, было введено в постоянное употребление в середине ХХ в. Клодом Шенноном в узком техническом смысле применительно к теории связи или передачи кодов, получившей название "теория информации". В настоящее время этот термин имеет гораздо более глубокий смысл. Это стало следствием необходимости осознанной организации процессов движения и обработки того, что имеет общее название "информация" (от лат. informatio – разъяснение, осведомление, изложение) и является основным понятием информатики. Несмотря на значительное развитие этой науки и ее составных частей, однозначного и всеми принятого определения информации нет.
Информация – это настолько общее и глубокое понятие, что его нельзя объяснить одной фразой. В это слово вкладывают различный смысл в науке, технике и житейских ситуациях.
Информация – это совокупность знаний о фактических данных и зависимостях между ними; содержание, которое присваивается данным посредством соглашений, распространяющихся на них; данные, подлежащие вводу в компьютер, обрабатываемые на нем и выдаваемые пользователю; законы, методы и способы накопления, обработки и передачи информации с помощью компьютеров и иных технических устройств.
В рамках дисциплины "Информатика" оперируют следующим определением:
"Информация – сведения об объектах и явлениях окружающей среды, их параметрах, свойствах и состоянии, которые уменьшают имеющуюся о них степень неопределенности и неполноты знаний".
Информатика рассматривает информацию как концептуально связанные между собой знания, сведения, изменяющие наши представления о явлении или объекте окружающего мира. Эти знания можно разделить на две категории: знание фактов ("Я знаю, что..." – декларативные знания) и знание правил ("Я знаю, как..." – процедурные знания). Для того чтобы правильно определить свои действия в конкретной ситуации, равно необходимы и те, и другие.
Информация может существовать в самых разнообразных формах: в виде текстов, рисунков, чертежей, фотографий, световых или звуковых сигналов, радиоволн, электрических и нервных импульсов, магнитных записей, жестов и мимики, запахов и вкусовых ощущений, хромосом, посредством которых передаются по наследству признаки и свойства организмов, и т. д.
Предметы, процессы, явления материального или нематериального свойства, рассматриваемые с точки зрения их информационных свойств, называются информационными объектами.
Классификация видов информации представлена в таблице 1.2.
Таблица 1.2
Направления классификации | Виды информации |
Сфера использования |
экономическая; техническая; генетическая |
Форма представления |
текстовая; числовая; графическая |
Способ передачи и восприятия |
визуальная (передаваемая видимыми образами и символами); аудиальная (передаваемая звуками); тактильная (передаваемая ощущениями); органолептическая (передаваемая запахом и вкусом); машинная (выдаваемая или воспринимаемая ЭВМ) |
Область возникновения |
элементарная (отражающая процессы и явления неодушевленной природы); биологическая (процессы живой природы); социальная (человеческого общества) |
Вид |
непрерывная (величина характеризующая процесс, не имеющий перерывов или промежутков); дискретная (последовательность символов, характеризующая прерывистую изменяющуюся величину) |
Внутренняя организация |
данные или простой, логически неупорядоченный набор сведений; логически упорядоченные наборы данных |
Упорядоченность данных достигается наложением на них некоторой структуры (отсюда часто используемый термин – структура данных).
Особым образом при этом выделяют организованную информацию – знания. Они в отличие от данных представляют собой информацию не о каком-то единичном и конкретном факте, а о том, как устроены все факты определенного типа.
Знание – совокупность специализированных (ориентированных на решение многих задач из определенной предметной области) фактов, правил обработки фактов, условий применения этих правил к конкретным фактам, методов получения новых фактов и способов организации процесса логического вывода.
Свойства знаний:
внутренняя интерпретируемость (сопоставление исходных данных, понятий и отношений с некоторыми математическими или логическими объектами и отношениями между ними);
понимание смыслового содержания информационных единиц в ЭВМ;
активность (переосмысливание известных фактов при появлении новых сведений);
связность (возможность установления функциональных, структурных, семантических и других отношений между фактами и правилами);
конвертируемость (изменение формы представления знаний в процессе принятия решений).
Не программы управляют данными, а появление новых сведений приводит к вызову программ обработки информации, уже имеющейся в системе.
Знания – это "живая", диалектическая система; они передаются другим людям, материализуются и существуют в трех формах:
"живые" (квалификация);
овеществленные;
информация (сообщения).
Наряду с понятием "информация" в информатике часто употребляется понятие "данные", которые можно рассматривать:
как признаки или записанные наблюдения, которые по каким-то причинам не используются, а только хранятся;
информация, представленная в виде, пригодном для обработки автоматическими средствами при возможном участии человека [4];
факты, понятия или команды, представленные в формализованном виде, позволяющем осуществлять их передачу, интерпре-тацию или обработку как вручную, так и с помощью систем автоматизации [12].
Если появляется возможность использовать эти данные для уменьшения неопределенности о чем-либо, они превращаются в информацию, поэтому можно утверждать, что информацией являются используемые данные. Например: Напишите на листе десять номеров телефонов в виде последовательности десяти чисел и покажите их вашему другу. Он воспримет эти цифры как данные, так как они не предоставляют ему никаких сведений. Затем против каждого номера укажите название фирмы и род деятельности. Для вашего друга непонятные цифры обретут определенность и превратятся из данных в информацию, которую он в дальнейшем мог бы использовать.
Когда говорят об автоматизированной работе с информацией посредством каких-либо технических устройств, обычно в первую очередь интересуются не содержанием сообщения, а количеством символов, которое содержит это сообщение.
1.4.2 Меры информации
Важным вопросом теории информации является установление меры количества и качества информации (рис. 1.1).
Рис. 1.1. Меры информации
Синтаксическая мера оперирует объемом данных и количеством информации Ia, выраженной через энтропию (понятие неопределенности состояния системы).
Семантическая мера оперирует количеством информации, выраженной через ее объем и степень содержательности.
Прагматическая мера определяется ее полезностью, выраженной через соответствующие экономические эффекты.
1.4.2.1 Синтаксическая мера информации
Эта мера количества информации оперирует с обезличенной информацией, не выражающей смыслового отношения к объекту.
На сегодняшний день наиболее известны следующие способы количественного измерения информации: объемный, энтропийный, алгоритмический.
Объемный является самым простым и грубым способом измерения информации. Соответствующую количественную оценку информации естественно назвать объемом информации.
Объем информации – это количество символов в сообщении. Поскольку одно и то же число может быть записано многими разными способами, т. е. с использованием разных алфавитов, например двадцать один – 21– XXI– 11001, то этот способ чувствителен к форме представления (записи) сообщения. В вычислительной технике вся обрабатываемая и хранимая информация вне зависимости от ее природы (число, текст, отображение) представлена в двоичной форме (с использованием алфавита, состоящего всего из двух символов "0" и "1").
В двоичной системе счисления единица измерения – бит (bit – binary digit – двоичный разряд).
В теории информации бит – количество информации, необходимое для различения двух равновероятных сообщений; а в вычислительной технике битом называют наименьшую "порцию" памяти, необходимую для хранения одного из двух знаков "0" и "1", используемых для внутримашинного представления данных и команд. Это слишком мелкая единица измерения, на практике чаще применяется более крупная единица – байт, – равная 8 бит, необходимых для того, чтобы закодировать любой из 256 символов алфавита клавиатуры компьютера (256 = 28).
Широко используются также еще более крупные производные единицы информации:
1 килобайт (кбайт) = 1024 байт = 210 байт;
1 Мегабайт (Мбайт) = 1024 кбайт = 220 байт;
1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт.
В последнее время в связи с увеличением объемов обрабатываемой информации входят в употребление следующие производные единицы:
1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт;
1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт.
В десятичной системе счисления единица измерения – дит (десятичный разряд).
Пример.
Сообщение в двоичной системе в виде восьмиразрядного двоичного кода 1011 1011 имеет объем данных VД = 8 бит.
Сообщение в десятичной системе в виде шестиразрядного числа 275 903 имеет объем данных VД = 6 бит.
В теории информации и кодирования принят энтропийный подход к измерению информации. Получение информации о какой-либо системе всегда связано с изменением степени неосведомлен-ности получателя о состоянии этой системы. Этот способ измерения исходит из следующей модели.
Пусть до получения информации потребитель имеет некоторые предварительные (априорные) сведения о системе α. После получения сообщения b получатель приобрел некоторую дополнительную информацию I(b), уменьшившую его неосведомленность. Эта информация в общем случае недостоверна и выражается вероятностями, с которыми он ожидает то или иное событие. Общая мера неопределенности (энтропия) характеризуется некоторой математической зависимостью от совокупности этих вероятностей. Количество информации в сообщении определяется тем, насколько уменьшится эта мера после получения сообщения.
Так, американский инженер Р. Хартли (1928 г.) процесс получения информации рассматривает как выбор одного сообщения из конечного наперед заданного множества из N равновероятных сообщений, а количество информации i, содержащееся в выбранном сообщении, определяет как двоичный логарифм N (формула Хартли):
.
Допустим, нужно угадать одно число из набора чисел от единицы до ста. По формуле Хартли можно вычислить, какое количество информации для этого требуется: , т. е. сообщение о верно угаданном числе содержит количество информации, приблизительно равное 6,644 единицам информации.
Другие примеры равновероятных сообщений:
при бросании монеты "выпала решка", "выпал орел";
на странице книги "количество букв четное", "количество букв нечетное".
Нельзя ответить однозначно на вопрос, являются ли равновероятными сообщения "первой выйдет из дверей здания женщина" и "первым выйдет из дверей здания мужчина". Все зависит от того, о каком именно здании идет речь. Если это, например, станция метро, то вероятность выйти из дверей первым одинакова для мужчины и женщины, а если это военная казарма, то для мужчины эта вероятность значительно выше, чем для женщины.
Для задач такого рода американский ученый Клод Шеннон предложил в 1948 г. другую формулу определения количества информации, учитывающую возможную неодинаковую вероятность сообщений в наборе (формула Шеннона):
,
где – вероятность того, что именно i-е сообщение выделено в наборе из N сообщений.
Легко заметить, что если вероятности … равны, то каждая из них равна и формула Шеннона превращается в формулу Хартли.
Помимо двух рассмотренных подходов к определению количества информации, существуют и другие. Важно помнить, что любые теоретические результаты применимы лишь к определенному кругу случаев, очерченному первоначальными допущениями.
В алгоритмической теории информации (раздел теории алгоритмов) предлагается алгоритмический метод оценки информации в сообщении. Любому сообщению можно приписать количественную характеристику, отражающую сложность (размер) программы, которая позволяет ее произвести.
Коэффициент (степень) информативности (лаконичности) сообщения определяется отношением количества информации к общему объему полученных данных:
, причем 0 < Y < 1.
С увеличением Y уменьшаются объемы работ по преобразованию информации (данных) в системе. Поэтому необходимо стремиться к повышению информативности, для чего разрабатываются специальные методы оптимального кодирования информации.
1.4.2.2 Семантическая мера информации
Семантика – наука о смысле, содержании информации.
Для измерения смыслового содержания информации, т. е. ее количества на семантическом уровне, наибольшее признание получила тезаурусная мера, связывающая семантические свойства информации со способностью пользователя принимать поступившее сообщение. Одно и то же информационное сообщение (статья в газете, объявление, письмо, телеграмма, справка, рассказ, чертеж, радиопередача и т. п.) может содержать разное количество информации для разных людей в зависимости от их предшествующих знаний, уровня понимания этого сообщения и интереса к нему.
Для измерения количества семантической информации используется понятие "тезаурус пользователя", т. е. совокупность сведений, которыми располагает пользователь или система.
В зависимости от соотношений между смысловым содержанием информации S и тезаурусом пользователя Sp изменяется количество семантической информации Ic, воспринимаемой пользователем и включаемой им в дальнейшем в свой тезаурус. Характер такой зависимости показан на рисунке 1. 2.
Рис. 1. 2. Зависимость количества семантической информации, воспринимаемой потребителем, от его тезауруса IC = f(Sp)
Рассмотрим два предельных случая, когда количество семантической информации IC равно 0:
при пользователь не воспринимает, не понимает поступающую информацию;
при пользователь все знает и поступающая информация ему не нужна.
Максимальное количество семантической информации потребитель приобретает при согласовании ее смыслового содержания S со своим тезаурусом (), когда поступающая информация понятна пользователю и несет ему ранее неизвестные (отсутствующие в его тезаурусе) сведения.
Следовательно, количество семантической информации и новых знаний в сообщении, получаемое пользователем, является величиной относительной.
Относительной мерой количества семантической информации может служить коэффициент содержательности С, определяемый как отношение количества семантической информации к ее объему:
.
1.4.2.3 Прагматическая мера информации
Эта мера определяет полезность информации (ценность) для достижения пользователем поставленной цели. Это величина относительная, обусловленная особенностями использования информации в той или иной системе. Ценность информации целесообразно измерять в тех же самых единицах (или близких к ним), в которых измеряется целевая функция.
Введенные меры информации представлены в таблице 1.3.
Таблица 1.3 Единицы измерения информации и примеры
Мера информации | Единицы измерения | Примеры (для компьютерной области) |
Синтаксическая: шенноновский подход компьютерный подход |
Степень уменьшения неопределенности Единицы представления информации |
Вероятность события Бит, байт, кбайт и т. д. |
Семантическая |
Тезаурус Экономические показатели |
Пакет прикладных программ, персональный компьютер, компьютерные сети и т. д. Рентабельность, производительность, коэффициент амортизации и т. д. |
Прагматическая | Ценность использования |
Емкость памяти, производительность компьютера, скорость передачи данных и т. д.; денежное выражение; время обработки информации и принятия решений |
1.4.3 Качество информации
Получая какую-либо информацию, человек пытается ее осмыслить и оценить: Что в ней нового? Насколько она ему важна? Правдива ли она? Может возникнуть множество вопросов относительно полученной информации. Как же правильно ее оценить? Оказывается, любая информация должна обладать рядом свойств. Только определив, насколько ваша информация отвечает присущим ей свойствам, можно оценить ее качество. Качество информации – обобщенная положительная характеристика информации, отражающая степень ее полезности для пользователя.
Важнейшие свойства информации: достоверность, полнота, доступность, актуальность, защищенность, ценность, содержательность, своевременность, защищенность.
Одно из свойств информации – достоверность, означающая истинное, объективное отражение действительности. Как известно, каждый человек воспринимает окружающую действительность субъективно, имея свои собственные, отличные от других взгляд и мнение, поэтому передаваемая или получаемая человеком информация не может быть абсолютно объективна. Она лишь может быть максимально приближена к объективной, например прогноз погоды. Существуют различные источники получения информации о предстоящей погоде: собственные наблюдения, сводки погоды, составленные метеослужбами различных ведомств, городов, а также гидрометеорологическими службами целых регионов. Каждая из этих служб имеет свои средства наблюдения и составления прогнозов, учитывает какие-то показатели больше, какие-то меньше. У всех различная точность предсказания погоды.
Точность информации определяется степенью близости получаемой информации к реальному состоянию объекта, процесса, явления и т. п. Для информации, отображаемой цифровым кодом, известны четыре классификационных понятия точности:
формальная, измеряется значением единицы младшего разряда числа;
реальная, определяется значением единицы последнего разряда числа, верность которого гарантируется;
максимальная, ее можно получить в конкретных условиях функционирования системы;
необходимая, определяется функциональным назначением показателя.
Рассмотрим на примере прогноза погоды свойства информации. Получая сводку погоды, в одних случаях нас интересует температура и влажность воздуха, в других – осадки и направление ветра, в третьих, возможно, нам потребуется полная картина предстоящей погоды. Полнота информации означает, что она содержит минимальный, но достаточный для принятия правильного решения состав (набор) показателей. Как неполная, т. е. недостаточная для принятия правильного решения, так и избыточная информации снижают эффективность принимаемых пользователем решений.
Также важно, чтобы получаемая информация соответствовала данной ситуации. Например, можно получить полную сводку погоды из достоверного источника, но она окажется ненужной, если будет содержать сведения недельной давности. Иными словами, информация должна быть актуальной, что определяется степенью сохранения ценности информации для управления в момент ее использования и зависит от динамики изменения ее характеристик и интервала времени, прошедшего с момента возникновения данной информации.
Однако достоверная, полная и актуальная информация о погоде на предстоящую неделю может быть записана (или произнесена) в терминах и обозначениях синоптиков, непонятных большинству людей. В этом случае она окажется бесполезной. Значит информация должна быть выражена в таком виде, который был бы понятен получателю данной информации. В этом заключается следующее свойство информации – доступность, которая обеспечивается выполнением соответствующих процедур ее получения и преобразования.
Получая новую информацию, человек решает, нужна ли она для решения какой-то данной проблемы. Одна и та же информация может быть очень важной для одного и быть абсолютно бесполезной для другого. От того, какие задачи можно решить с помощью данной информации, зависит ее ценность. В зависимости от того, какой объем поступивших данных был переработан, определяется содержательность информации, которая отражает семантическую емкость.
С увеличением содержательности информации растет семантическая пропускная способность информационной системы, так как для получения одних и тех же сведений требуется преобразовать меньший объем данных. Одинаково нежелательны как преждевременная подача информации (когда она еще не может быть усвоена), так и ее задержка. Только своевременно полученная информация может принести ожидаемую пользу. Своевременность информации означает ее поступление в соответствии со временем решения поставленной задачи.
Защищенность – свойство, характеризующее невозможность несанкционированного использования или изменения.
1.5 Кодирование сигналов
1.5.1 Основные виды и способы обработки
и кодирования данных
Этап подготовки информации связан с процессом формирования структуры информационного потока. Такая структура должна обеспечивать возможность передачи информации от объекта к субъекту (от источника к потребителю) по каналам коммуникаций посредством определенных сигналов или знаков, а также возможность однозначного понимания этих сигналов и обеспечения их записи на соответствующие носители информации. Для этого осуществляется кодирование сигналов.
Кодирование информации – одна из базовых тем курса теоретических основ информатики, отражающая фундаментальную необходимость представления информации в какой-либо форме. При этом слово "кодирование" понимается не в узком смысле – как способ сделать сообщение непонятным для всех, кто не владеет ключом кода, а в широком – как представление информации в виде сообщения на любом языке. В канале связи сообщение, составленное из символов (букв) одного алфавита, может преобразоваться в сообщение из символов (букв) другого алфавита.
Код – правило (алгоритм), сопоставляющее каждое конкретное сообщение (информацию) со строго определенной комбинацией различных символов (или соответствующих им сигналов).
Кодирование – процесс преобразования сообщения (информации) в комбинацию различных символов или соответствующих им сигналов, осуществляющийся в момент поступления сообщения от источника в канал связи.
Кодовое слово – последовательность символов, которая в процессе кодирования присваивается каждому из множеств передаваемых сообщений.
Декодирование – процесс восстановления содержания сообщения по данному коду.
Необходимым условием декодирования является взаимно однозначное соответствие кодовых слов во вторичном алфавите кодируемым символам первичного алфавита.
Устройство, обеспечивающее кодирование, называют кодировщиком.
Система кодирования – совокупность правил кодового обозначения объектов – применяется для замены названия объекта на условное обозначение (код) в целях обеспечения удобной и более эффективной обработки информации, т. е. кодирование – это отображение информации с помощью некоторого языка. Любой язык состоит из алфавита, включающего в себя буквы, цифры и другие символы, и правил составления слов и фраз (синтаксических правил).
Первичный алфавит – символы, при помощи которых записано передаваемое сообщении; вторичный – символы, при помощи которых сообщение трансформируется в код.
Код характеризуется длиной (числом позиций в коде) и структурой (порядком расположения символов, используемых для обозначения классификационного признака).
Неравномерные (некомплектные) коды – это коды, с помощью которых сообщения кодируются комбинациями с неравномерным количеством символов; равномерные (комплектные) – коды, с помощью которых сообщения представлены комбинациями с равным количеством символов.
Для хранения в ЭВМ информация кодируется. При выборе языка создатели руководствовались следующими соображениями:
буквы алфавита должны надежно распознаваться (нельзя допустить, чтобы одна буква была принята за другую);
алфавит должен быть как можно проще, т. е. содержать поменьше букв;
синтаксис языка (правила построения слов и фраз) должен быть строгим, однозначным, не допускающим неопределенности.
Таким свойством обладают математические теории, в них все строго определено.
1.5.2 Кодирование текста
Не возникает никаких проблем при кодировании информации, представимой с помощью ограниченного набора символов – алфавита. Достаточно пронумеровать все знаки этого алфавита и затем записывать в память компьютера и обрабатывать соответствующие номера. Самым простым алфавитом является тот, в котором всего две буквы, два символа.
При кодировании текста для каждого его символа отводится обычно 1 байт. Именно по этой причине ячейка памяти в компьютере сделана так, что может хранить сразу восемь бит (1 байт), т. е. целый символ. Это позволяет использовать 28 = 256 различных символов, так как в ЭВМ надо кодировать все буквы: английские – 52 буквы (прописные и строчные), русские – 66 букв, 10 цифр, знаки препинания, арифметических операций и т. п.:
Разрядность | Пример | Количество |
1 | 0 | 2 = 21 |
2 | 00 | 4 = 22 |
3 | 000 | 8 = 23 |
4 | 0000 | 16 = 24 |
Хорошо видно, что если у числа разрядность равна n, то количество n-разрядных чисел равно 2n:
Разрядность | Количество чисел |
5 | 25 = 32 |
6 | 26 = 62 |
7 | 27 = 128 |
8 | 28 = 256 |
9 | 29 = 512 |
10 | 210 = 1024 |
и так далее.
Чтобы закодировать порядка 256 букв и символов, требуется использовать 8-разрядные числа.
Соответствие между символом и его кодом может быть выбрано совершенно произвольно. Однако на практике необходимо иметь возможность прочесть на одном компьютере текст, созданный на другом, поэтому таблицы кодировок стараются стандартизовать. Практически все использующиеся сейчас таблицы основаны на "американском стандартном коде обмена информацией" ASCII. Он определяет значения для нижней половины кодовой таблицы – первых 127 кодов (32 управляющих кода, основные знаки препинания и арифметические символы, цифры и латинские буквы). В результате, эти символы отображаются верно, какая бы кодировка не использовалась на конкретном компьютере. Хуже обстоит дело с национальными символами и типографскими знаками препинания. А особенно не повезло языкам, использующим кириллицу (русскому, украинскому, белорусскому, болгарскому и т. д.).
Например, для русского языка сейчас широко используются пять таблиц кодировок:
CP866 (альтернативная DOS) – на PC-совместимых компьютерах при работе с операционными системами DOS и OS/2, а также в любительской международной сети Фидо (Fidonet);
CP1251 (Windows-кодировка) – на PC-совместимых компью-терах при работе под Windows 3.1 и Windows 95;
KOI-8r – самая старая из использующихся до сих пор кодировок. Применяется на компьютерах, работающих под UNIX, является фактическим стандартом для русских текстов в сети Internet;
Macintosh Cyrillic – предназначена для работы со всеми кириллическими языками на Макинтошах.
ISO-8859. Эта кодировка задумывалась как международный стандарт для кириллицы, однако на территории России практически не применяется.
Сейчас, когда объем памяти компьютеров чрезвычайно вырос, уже нет необходимости очень сильно "экономить" при кодировании текста. Можно позволить себе роскошь "тратить" для хранения текста вдвое больше памяти (выделяя для каждого символа не 1, а 2 байт). При этом появляется возможность разместить в кодовой таблице – каждый на своем месте – не только буквы европейских алфавитов (латинского, кириллицы, греческого), но и буквы арабского, грузинского и многих других языков и даже большую часть японских и китайских иероглифов, поскольку два байта могут хранить число от 0 до 65 535. Двухбайтная международная кодировка Unicode, разработанная несколько лет назад, теперь начинает внедряться на практике. В компьютере все составные части соединяются между собой с помощью шины (магистрали), т. е. пучка проводов.
Теперь нам должно стать понятно, почему шина содержит 8, 16 или 32 провода. Если в шине 8 проводов, то по ней можно передать одновременно 8 бит, т. е. 1 байт (1 символ) информации. Такой компьютер называется восьмиразрядным, (первые персональные компьютеры IBM).
Если в шине 16 проводов, то по ней можно передать одновременно 2 байт информации; если 32 провода – 4 байт, если 64 провода – 8 байт.
1.5.3. Два способа кодирования изображения
Изображение на экране компьютера (или при печати с по-мощью принтера) составляется из маленьких точек – пикселов. Их так много, и они настолько малы, что человеческий глаз воспринимает картинку как непрерывную. Следовательно, качество изображения будет тем выше, чем плотнее расположены пиксели (т. е. чем больше разрешение устройства вывода) и точнее закодирован цвет каждого из них.
В простейшем случае каждый пиксел может быть или черным, или белым. Значит, для его кодирования достаточно одного бита. Однако при этом полутона приходится имитировать, чередуя черные и белые пиксели (заметим, что примерно так формируют полутоновое изображение на принтерах и при типографской печати). Чтобы получить реальные полутона, для хранения каждого пикселя нужно отводить большее количество разрядов. В этом случае черный цвет по-прежнему будет представлен нулем, а белый – максимально возможным числом. Например, при восьмибитном кодировании получится 256 разных значений яркости – 256 полутонов.
Сложнее обстоит дело с цветными изображениями, так как здесь нужно закодировать не только яркость, но и оттенок пикселя. Изображение на мониторе формируется путем сложения в различных пропорциях трех основных цветов: красного, зеленого и синего. Значит просто нам нужно хранить информацию о яркости каждой из этих составляющих.
Для получения наивысшей точности цветопередачи достаточно иметь по 256 значений для каждого из основных цветов (вместе это дает 2563 – более 16 млн. оттенков). Во многих случаях можно обойтись несколько меньшей точностью цветопередачи. Если использовать для представления каждой составляющей по 5 бит (тогда для хранения данных пикселя будет нужно не 3, а 2 байт), удастся закодировать 32 768 оттенков.
На практике встречаются (и нередко) ситуации, когда гораздо важнее не идеальная точность, а минимальный размер файла: бывают изображения, где изначально используется небольшое количество цветов. В этих случаях поступают так: собирают все нужные оттенки в таблицу и нумеруют, после чего хранят уже не полный код цвета каждого пикселя, а номера (индексы) цветов в таблице. Чаще всего используют 256-цветные таблицы. В разных компьютерах могут быть приняты разные стандартные таблицы цветов, поэтому не исключено, что открыв полученный от кого-нибудь графический файл, можно увидеть совершенно немыслимую картинку.
При печати на бумаге используется несколько иная цветовая модель: если монитор испускает свет, то оттенок получается в результате сложения цветов, а краски поглощают свет – цвета вычитаются. Поэтому в качестве основных используют голубую, сиреневую и желтую краски. Кроме того, из-за неидеальности красителей к ним обычно добавляют четвертую краску – черную. Для хранения информации о каждой краске чаще всего используют 1 байт.
Растровые изображения очень хорошо передают реальные образы. Они замечательно подходят для фотографий, картин и в случаях, когда требуется максимальная "естественность". Такие изображения легко выводить на монитор или принтер, поскольку эти устройства тоже основаны на растровом принципе. Однако есть у них и ряд недостатков. Растровое изображение высокого качества (с высоким разрешением и большой глубиной цвета) может занимать десятки, и даже сотни мегабайт памяти. Для их обработки нужны мощные компьютеры, но и они нередко "задумываются" на десятки минут. Любое изменение размеров неизбежно приводит к ухудшению качества: при увеличении пикселы не могут появиться "из ничего", при уменьшении – часть пикселов будет просто выброшена.
Есть другой способ представления изображений – объектная (векторная) графика. В этом случае в памяти хранится не сам рисунок, а правила его построения, т. е., например, не все пикселы круга, а команда "построить круг радиусом 30 с центром в точке с координатами (50, 135) и закрасить его красным цветом". Быстродействия современных компьютеров вполне достаточно, чтобы перерисовка происходила почти мгновенно.
На первый взгляд, все становится гораздо более сложным. Зачем же это нужно? Во-первых, и это самое главное, векторное изображение можно как угодно масштабировать, выводить на устройства, имеющие любое разрешение, – и всегда будет получаться результат с наивысшим для данного устройства качеством, ведь картинка каждый раз "рисуется" заново, используя столько пикселов, сколько возможно.
Во-вторых, в векторном изображении все части (так называемые "примитивы") могут быть изменены независимо друг от друга: любой из них можно увеличить, повернуть, деформировать, перекрасить, даже стереть, но остальных объектов это никоим образом не коснется.
В-третьих, даже очень сложные векторные рисунки, содержащие тысячи объектов, редко занимают более нескольких сотен килобайт, т. е. в десятки, сотни, а то и тысячи раз меньше аналогичного растрового.
Но почему, если все так хорошо, векторная графика не вытеснила растровую? Сам принцип ее формирования предполагает использование объектов с исключительно ровными четкими границами, а это сразу выдает их искусственность, поэтому область применения векторной графики довольно ограничена – это чертежи, схемы, стилизованные рисунки, эмблемы и другие подобные изображения.
1.5 Кодирование звука
Если преобразовать звук в электрический сигнал, например с помощью микрофона, можно увидеть плавно изменяющееся с течением времени напряжение. Для компьютерной обработки такой аналоговый сигнал нужно каким-то образом преобразовать в последовательность двоичных чисел. Если измерять напряжение через равные промежутки времени и записывать полученные значения в память компьютера, то этот процесс называется дискретизацией (оцифровкой), а устройство, выполняющее его, – аналого-цифровым преобразователем (АЦП).
Чтобы воспроизвести закодированный таким образом звук, нужно выполнить обратное преобразование, для чего служит цифро-аналоговый преобразователь (ЦАП), а затем сгладить получившийся ступенчатый сигнал.
Чем выше частота дискретизации (количество отсчетов за секунду) и больше разрядов отводится для каждого отсчета, тем точнее будет представлен звук. Размер звукового файла увеличивается, поэтому в зависимости от характера звука, требований, предъявляемых к его качеству и объему занимаемой памяти, выбирают некоторые компромиссные значения. Например, при записи на компакт-диски используются 16-битные отсчеты при частоте дискретизации 44 032 Гц. При работе только с речевыми сигналами достаточно 8-битных отсчетов при частоте 8 кГц.
Описанный способ кодирования звуковой информации универсален, он позволяет представить любой звук, преобразовывать его самыми разными способами. Бывают случаи, когда выгодней действовать по-иному. Человек издавна использует довольно компактный способ представления музыки – нотную запись. Чтобы перевести символьную информацию в понятную компьютеру форму, достаточно иметь таблицу соответствий символов этого языка их двоичным кодам.
В 1983 г. ведущие производители компьютеров и музыкальных синтезаторов разработали стандарт, определивший такую систему кодов, – MIDI.
Конечно, такая система кодирования позволяет записать далеко не всякий звук, она годится только для инструментальной музыки. Но есть у нее и неоспоримые преимущества: чрезвычайно компактная запись, естественность для музыканта (практически любой MIDI–редактор позволяет работать с музыкой в виде обычных нот), легкость замены инструментов, изменения темпа и тональности мелодии. Коме того, качество звучания зависит от возможностей синтезатора или звуковой платы компьютера, с помощью которых производится запись.
Заметим, что существуют и другие компьютерные форматы записи музыки, основанные на подобном же принципе.
1.5.5 Цифровое кодирование
При цифровом кодировании дискретной информации применяют потенциальные и импульсные коды.
В потенциальных кодах для представления логических единиц и нулей используется только значение потенциала, а его перепады, формирующие законченные импульсы, во внимание не принимаются. Импульсные коды позволяют представить двоичные данные либо импульсами определенной полярности, либо частью импульса – перепадом потенциала определенного направления.
При использовании прямоугольных импульсов для передачи дискретной информации необходимо выбрать такой способ кодирования, который одновременно достигал бы нескольких целей:
имел при одной и той же битовой скорости наименьшую ширину спектра результирующего сигнала;
обеспечивал синхронизацию между передатчиком и приемником;
обладал способностью распознавать ошибки;
обладал низкой стоимостью реализации.
Более узкий спектр сигналов позволяет на одной и той же линии добиваться более высокой скорости передачи данных. Кроме того, часто к спектру сигнала предъявляется требование отсутствия постоянной составляющей, т. е. наличия постоянного тока между передатчиком и приемником.
Синхронизация передатчика и приемника нужна для того, чтобы приемник точно знал, в какой момент времени необходимо считывать новую информацию с линии связи, поэтому в сетях применяются самосинхронизирующиеся коды, сигналы которых несут для передатчика указание о том, в какой момент времени нужно осуществлять распознавание очередного бита или нескольких бит, если код ориентирован более чем на два состояния сигнала. Любой резкий перепад сигнала, так называемый фронт, может служить хорошим указанием для синхронизации приемника с передатчиком.
Требования, предъявляемые к методам кодирования, являются взаимно противоречивыми, поэтому каждый из рассматриваемых ниже популярных методов цифрового кодирования обладает своими преимуществами и своими недостатками по сравнению с другими.
1.5.5.1 Метод биполярного кодирования с альтернативной
инверсией (AMI)
В этом методе используются три уровня потенциала: отрицательный, нулевой и положительный. Для кодирования логического нуля используется нулевой потенциал, а логическая единица кодируется либо положительным потенциалом, либо отрицательным, при этом потенциал каждой новой единицы противоположен потенциалу предыдущей. В AMI используются три уровня сигнала на линии. Дополнительный уровень требует увеличения мощности передатчика примерно на 3 дБ для обеспечения той же достоверности приема бит на линии, что является общим недостатком кодов с несколькими состояниями сигнала по сравнению с кодами, которые различают только два состояния.
1.5.5.2 Потенциальный код с инверсией при единице
Существует код, похожий на AMI, но только с двумя уровнями сигнала. При передаче нуля он передает потенциал, установленный в предыдущем такте, а при передаче единицы потенциал инвертируется на противоположный. Это называется потенциальным кодом с инверсией при единице. Для улучшения потенциальных кодов используют два метода. Первый метод основан на добавлении в исходный код избыточных бит, содержащих логические единицы; второй – на предварительном "перемешивании" исходной информации таким образом, чтобы установить примерно одинаковую вероятность появления единиц и нулей на линии. Устройство, или блоки, выполняющие "перемешивание", называются скремблерами (scramble – свалка, беспорядочная сборка).
1.5.5.3 Биполярный импульсный код
Кроме потенциальных в сетях используются и импульсные коды когда, данные представлены полным импульсом или его частью – фронтом. Наиболее простым случаем такого подхода является биполярный импульсный код, в котором единица представлена импульсом одной полярности, а ноль – другой. Он обладает отличными самосинхронизирующими свойствами, но постоянная составляющая может присутствовать. Кроме того, спектр у него шире, чем у потенциальных кодов. Из-за слишком широкого спектра биполярный импульсный код используется редко.
1.5.5 Манчестерский код
В локальных сетях до недавнего времени самым распространенным методом кодирования был так называемый манчестерский код. Он применяется в технологиях Ethernet и Token Ring. Здесь для кодирования единиц и нулей используется перепад потенциала, т. е. фронт импульса. Информация кодируется перепадами потенциала, происходящими в середине каждого такта.
Логическое кодирование используется для улучшения потенциальных кодов типа AMI и должно заменять длинные последовательности бит, приводящие к постоянному потенциалу, вкраплениями единиц. Для логического кодирования характерны два метода: избыточные коды и скремблирование.
Избыточные коды основаны на разбиении исходной последовательности бит на порции, часто называемые символами. Затем каждый исходный символ заменяется на новый, который имеет большее количество бит, чем исходный.
Скремблирование – это перемешивание данных скремблером перед передачей их в линию с помощью потенциального кода. Методы скремблирования заключаются в побитном вычислении результирующего кода на основании бит исходного кода и полученных в предыдущих тактах бит результирующего кода.
1.5.6 Обработка аналоговой и цифровой информации
Формы представления информации в современном мире весьма многообразны. Ее можно получить самыми разными способами: извлечь, наблюдая за окружающим миром, событиями в жизни общества; присутствуя в театре, кино; посещая выставки; при чтении книг, журналов; изучении различных документов, чертежей и т. п.
Информация, получаемая посредством визуального наблюдения, чтения, является зрительной. Ее можно не только получить, но и передать с помощью мимики и жестов, а также книг, газет, картин, чертежей и других различных изображений.
В общении людей присутствует звуковая информация. К ней относятся: устная речь, музыкальные звуки и всевозможные восклицания.
Особое внимание следует уделить письменности – знаковому (буквенному) представлению устной речи, в котором звукам соответствуют буквы.
С одной стороны, чтение книг, журналов и других источников, содержащих информацию в письменном виде, относится к зрительной информации; с другой стороны, письменность – это обозначение устной речи, которая относится к звуковой информации. Таким образом, одну и ту же информацию можно прочитать, т. е. увидеть и услышать.
Следует отметить, что устная передача информации намного богаче письменной. В разговоре всегда присутствуют различные интонации, выражающие эмоциональное состояние говорящего. Это придает особую выразительность и несет в себе дополнительную информацию. То же самое можно сказать и о музыкальных произведениях. Аналогично письменности ноты являются знаковым представлением музыкальных звуков. Но записанное в нотах музыкальное произведение не сравнимо с тем же произведением, исполненным музыкантом.
Обмен информацией происходит не только среди людей. Работа машин также невозможна без процессов обработки информации.
В существующих на сегодняшний день разнообразных технических устройствах и системах прием, обработка и передача информации осуществляются с помощью сигналов. Сигналы отражают физические характеристики изучаемых объектов и процессов. Кроме этого, информация в виде сигнала может различным образом перерабатываться, сохраняться, уничтожаться и т. п.
На сегодняшний день различают несколько видов сигналов: звуковые, которые можно услышать при работе милицейской сирены; световые, передающие информацию от пульта дистанционного управления к телевизору. Но наибольшее распространение в современных технических устройствах получили электрические сигналы. Это связано с тем, что для них в настоящее время созданы наилучшие технические средства обработки, хранения и передачи.
При передаче информации посредством электрического сигнала значение информации, заключенной в этом сигнале, выражается в параметрах электрического тока: силе тока и напряжении. При этом информация, переносимая таким сигналом, может быть самой разнообразной.
Существующие в технических устройствах сигналы делятся на непрерывные (аналоговые) и дискретные.
Непрерывность сигнала означает возможность его изменения на любую малую величину в любой заданный малый промежуток времени (рис. 1.3).
Непрерывный сигнал. Образование аналогового сигнала происходит, например, при получении первичной информации с датчиков,
Рис. 1.3. Непрерывный сигнал
связанных с изучаемым объектом или внешней средой. Полученный аналоговый сигнал, требует дальнейшей обработки. Это может быть передача, преобразование или сохранение. Продемонстрировать аналоговую обработку сигнала можно, рассматривая процесс преобразования сигнала, идущего от микрофона к динамику. Чтобы динамик мог воспроизвести звуковой сигнал, поступивший на вход микрофона, необходимо, чтобы произошел процесс обработки поступившего сигнала. Микрофон преобразует звуковой сигнал в слабый электрический, выходной характеристикой которого является напряжение. Микрофон и динамик применяются в случае, когда стоит проблема усиления звукового сигнала. Для этого производится обработка – целенаправленное усиление аналогового электрического сигнала до требуемой величины. Получив таким образом необходимый сигнал, динамик его преобразовывает в звуковой, но уже более сильный, чем поступивший на вход микрофона.
Примером аналоговой передачи сигнала является передача речевой информации по телефонным проводам.
Аналоговое сохранение информации является также довольно распространенным явлением, например, запись звукового сигнала на магнитофонную ленту.
До 70-х гг. ХХ в. технические устройства работали только с аналоговыми сигналами, каковыми являлись и способы их обработки. Это означало, что обработка сигнала проводилась на непрерывном интервале времени (в каждый малый промежуток времени). В результате получался также аналоговый сигнал (рис. 1.4).
Рис. 1.4. Аналоговое преобразование сигнала
С появлением в 70-х гг. ХХ в. микропроцессора (основного элемента ЭВМ), а также микросхем с высокой степенью интеграции стали получать распространение дискретные и цифровые сигналы, а вместе с ними и соответствующие способы их обработки.
Дискретность сигнала означает возможность его измерения только на конечном отрезке, в строго определенные моменты времени. Следовательно, сам сигнал представляет собой уже не непрерывную функцию, а последовательность дискретных значений. На рисунке 1. 5 показаны дискретные значения функции, полученные в дискретные моменты времени, имеющие лишь только приближенные числовые значения. В зависимости от решаемой задачи эти значения могут быть зафиксированы только в данных временных точках, но могут сохранять свое значение в промежутке от данной до следующей точки измерения.
Рис. 1.5. Дискретный сигнал
В случае когда наличие приближенных значений не удовлетворяет поставленной задаче, производят округление имеющихся значений с заданной степенью точности. Вместо приближенных значений получаются определенные конечные числовые значения (рис. 1.6). Дискретный сигнал, значения которого выражены определенными конечными числами, называется цифровым.
Аналогично аналоговым устройствам обработки аналоговых сигналов существуют также специальные технические устройства для обработки, хранения, передачи цифровых сигналов. Бурное развитие вычислительной техники, средств телекоммуникации непосредственно связано с обработкой цифровых сигналов, поскольку цифровая cвязь имеет множество преимуществ по сравнению с аналоговой.
Рис. 1.6. Цифровой сигнал
Цифровой способ хранения информации нашел широкое применение при записи различного рода информации на аудио- и видео-компакт-дисках (CD-ROM).
Цифровая передача данных используется при обмене информацией между компьютерами с помощью модема или при работе с факсимильными средствами связи.
Довольно сложной оказывается цифровая обработка сигнала, например, цифровыми фильтрами, основанными на алгоритмах преобразования Фурье.
Несмотря на то что цифровая обработка информации приобретает в настоящее время все большее распространение, отказаться от аналоговой невозможно: еще остается достаточно много систем и устройств, в которых информация может передаваться только в виде аналогового сигнала. В связи с этим решаются различные вопросы, ищутся способы преобразования аналогового сигнала в цифровой и наоборот.
Очевидно, при преобразовании исходного аналогового сигнала в цифровой появляется определенная погрешность, что является недостатком. Но, увеличивая число дискретов по оси времени и функции сигнала, можно достичь уменьшения погрешности. Использование современных высокоскоростных технических средств обработки и хранения цифровых сигналов позволяет значительно упростить и удешевить процесс преобразования аналогового сигнала в цифровой, а также устранить недостатки, присущие аналоговой передаче сигнала (например влияние шумов) и получить ряд важных преимуществ.
В результате даже такие области телекоммуникации, как телефонная связь и радиовещание, где традиционным являлся аналоговый сигнал, переходят на цифровую форму обработки и передачи сигналов. Этот процесс получил наибольшее развитие с появлением глобальных компьютерных сетей. Распространенным средством осуществления связи между компьютерами является телефонная сеть. Исходное сообщение, поступающее в телефонную линию, преобразуется в аналоговый сигнал. После этого специальные технические средства производят последующее преобразование этого аналогового сигнала в цифровой, и уже в цифровом виде он обрабатывается, хранится, передается. Только достигнув получателя, цифровой сигнал преобразуется обратно в аналоговый и воспринимается абонентом в привычном ему виде.
Таким образом, существующие виды информации: зрительная и звуковая, с помощью которых общаются люди, а также информация в виде сигналов, непосредственно связаны между собой. Преобразования информации из одного вида в другой показывают, насколько важен и непрерывен процесс обмена информацией. Применение технических устройств делает этот процесс неотъемлемой частью жизни человеческого общества.
1.5.7 Модуляция сигналов
Вследствие сильного затухания электромагнитной волны для передачи сигнала на расстояния приходится вызывать достаточно мощные электромагнитные колебания среды. Следовательно, перед передачей сигнал надо в достаточной мере усилить, произвести некоторые преобразования, чтобы получатель смог выделить (детектировать) полезный сигнал из общего фона электромагнитных колебаний среды.
Модуляция сигнала – процесс изменения одного сигнала в соответствии с формой другого сигнала.
Модуляция осуществляется для передачи данных с помощью электромагнитного излучения. Обычно модификации подвергается синусоидальный сигнал (несущая). Различают амплитудную, частотную, фазовую, импульсно-кодовую, спектральную, поляризационную модуляции.
В радиосвязи чаще всего используют амплитудную (АМ, AM –amplitude modulation), частотную (ЧМ, FM – frequency modulation) и фазовую (ФМ, РМ – phase modulation) модуляции. При передаче сообщения, представленного дискретными символами, вместо термина "модуляция" применяется термин "манипуляция", а само колебание называется манипулированным.
Несущая – синусоидальный сигнал определенной частоты с низким коэффициентом затухания для данной среды передачи, модулируемый полезным сигналом.
Амплитудная модуляция – это модуляция, при которой незатухающие колебания изменяются по амплитуде в соответствии с модулирующими колебаниями более низкой частоты (рис. 1.7).
В радиовещании в длинно- и средневолновом диапазонах радиоволн широко используется амплитудная модуляция сигнала. На вход модулятора подаются опорный и передаваемый (модулирующий) сигналы, а на выходе получают смодулированный, положительная огибающая которого и есть исходный сигнал. Для корректного преобразования необходимо, чтобы несущая частота была в два раза выше, чем верхняя граница полосы модулирующего сигнала. Спектр амплитудно-модулированного колебания содержит составляющую несущей частоты fн и две боковые полосы (верхнюю и нижнюю), имеющие спектр, подобный спектру модулирующего колебания.
Таким образом, спектр модулированного сигнала симметричен, и для рационального использования передающего оборудования одну из боковых полос спектра передаваемого сигнала подавляют. При использовании разных частот опорного сигнала можно одновременно передавать несколько независимых сигналов, только необходимо соблюсти условие непересечения полос смодулированных сигналов. Данный способ модуляции довольно прост в реализации, но менее устойчив к помехам, чем другие методы, рассматриваемые ниже. Помехонеустойчивость объясняется относительно узкой полосой модулированного сигнала (всего в два раза шире, чем у исходного). Тем не менее это обстоятельство позволяет использовать амплитудную модуляцию в низко- и среднечастотных диапазонах электромагнитного спектра. Амплитудная манипуляция используется в низкоскоростных информационных системах (скорость менее 600 бит/с).
Рис. 1.7. Амплитудная модуляция
Частотная модуляция – это модуляция, при которой несущая частота сигнала изменяется в соответствии с модулирующим колебанием.
При частотной модуляции модулирующий сигнал модулирует не мощность опорного сигнала, а его частоту (рис. 1.8), т. е. если уровень сигнала увеличивается, то частота растет и наоборот. Из-за этого спектр частотно-модулированного сигнала значительно шире, и соответственно, хорошая помехоустойчивость, но необходимо использовать высокочастотные диапазоны вещания. Частотная манипуляция находит применение в модемах, обеспечивающих скорость передачи 1200–1800 бит/с.
Рис. 1.8. Частотная модуляция
Модем – внешнее или внутреннее устройство, подключаемое к компьютеру для передачи и приема сигналов по телекоммуникационным (телефонным) линиям. Для трансляции сигнала по аналоговой линии связи модем преобразует цифровой сигнал, полученный от компьютера, в аналоговую форму. При приеме сигнала модем выполняет обратное преобразование.
Возможны два вида частотной манипуляции: с разрывом фазы и без разрыва. В настоящее время на высоких скоростях применяется только последний вид.
С увеличением числа используемых частот происходит переход к m-ичной частотной манипуляции, применение которой позволит повысить скорость передачи символов (бит/с).
Фазовая модуляция (ФМ) – это модуляция, в которой при изменении от "0" к "1" и от "1" к "0" фаза синусоидальной несущей изменяется на 180є.
При фазовой модуляции модулирующий сигнал модулирует фазу опорного сигнала. При модулировании цифровым (дискретным) сигналом получается сигнал с очень широким спектром, так как фаза резко поворачивается (двоичный сигнал – на 180є) (рис.1.9), поэтому ее с успехом применяют для обеспечения помехозащищенной цифровой связи в высокоскоростных модемах.
Рис. 1.9. Фазовая модуляция
Возможны два вида фазовой манипуляции: абсолютная и относительная. Абсолютная фазовая манипуляция – это такой вид манипуляции несущей, при котором ее фаза изменяется на π (180°) всякий раз при изменении знака (полярности) посылки первичного сигнала. Относительная фазовая манипуляция – это такой вид манипуляции несущей, при котором ее фаза изменяется на π (180°) всякий раз при изменении знака (полярности) посылки первичного сигнала "на минус" (0). Название "относительная" говорит о том, что фаза данной n-й посылки формируется относительно фазы предыдущей (n - 1)-й посылки.
Импульсно-кодовая модуляция (PCM – Pulse Code Modu-lation) – это модуляция, в которой аналоговый сигнал кодируется сериями импульсов, она используется в устройствах кодирования-декодиро-вания, а также в телефонных сетях.
Для передачи аналогового сигнала по цифровым линиям связи производят дискретизацию с определенной частотой, определенной из расчета не менее чем в 2 раза выше верхней границы полосы аналогового сигнала (по теореме Котельникова). В каждый момент квантования вычисляется и кодируется в цифровое значение уровень аналогового сигнала. Качество модуляции напрямую зависит от частоты дискретизации и разрядности кодирования каждого уровня. В цифровой телефонии используют 8-битное кодирование (256 уровней, 11 кГц), в CD-Audio используют 16-битное кодирование (65 536 уровней сигнала, 44,1 кГц), а в DVD-Audio, например, 24бит/192 кГц.
В телекоммуникационных сетях несколько ПЭВМ объединяются в модулированную сеть.
Модулированная сеть – это локальная вычислительная сеть, в которой устройства соединены коаксиальным или оптоволоконным кабелем; передача данных осуществляется с помощью модуляции аналоговых сигналов; вся полоса пропускания среды передачи разбивается на несколько интервалов (полос), каждый из которых служит каналом связи.
Модулированные сети могут одновременно передавать телепрограммы, речь, двоичные данные и т. п.
1.6 Структура и закономерности протекания
информационных процессов
1.6.1 Информационная система
В информатике понятие "система" чаще используют относительно набора технических средств и программ. Системой называют также аппаратную часть компьютера. Дополнение понятия "система" словом "информационная" отображает цель ее создания и функционирования.
Информационная система – взаимосвязанная совокупность средств, методов и персонала, используемая для сохранения, обработки и выдачи информации с целью решения конкретной задачи.
Современное понимание информационной системы предусматривает использование компьютера как основного технического средства обработки информации. Компьютеры, оснащенные специализированными программными средствами, являются технической базой и инструментом информационной системы.
В работе информационной системы можно выделить следующие этапы:
Зарождение данных – формирование первичных сообщений, фиксирующих результаты определенных операций, свойства объектов и субъектов управления, параметры процессов, содержание нормативных и юридических актов и т. п.
Накопление и систематизация данных – размещение их в порядке, обеспечивающем быстрый поиск и отбор нужных сведений, методическое обновление данных, защиту от искажений, потерь, деформирования целостности и др.
Обработка данных – процессы, в следствии которых, на основе прежде накопленных данных формируются новые виды данных: обобщающие, аналитические, рекомендательные, прогнозные. Производные данные тоже можно обрабатывать, получая более обобщенные сведения.
Отображение данных – представление их в форме, пригодной для восприятия человеком, прежде всего, вывод на печать, т. е. создание документов на так называемых твердых (бумажных) носителях. Широко используют построение графических иллюстративных материалов (графиков, диаграмм) и формирование звуковых сигналов.
Сообщения, формируемые на первом этапе, могут быть обычным бумажным документом, сообщением в "машинном виде" или тем и другим одновременно. В современных информационных системах сообщения массового характера большей частью имеют "машинный вид". Аппаратура, используемая при этом, имеет название "средства регистрации первичной информации".
Потребности второго и третьего этапов удовлетворяются в современных информационных системах в основном средствами вычислительной техники. Средства, которые обеспечивают доступность информации для человека, т. е. средства отображения данных, являются компонентами вычислительной техники.
Подавляющее большинство информационных систем работает в режиме диалога с пользователем. Типичные программные компоненты информационных систем включают диалоговую подсистему ввода-вывода, подсистему, реализующую логику диалога, подсистему прикладной логики обработки данных, подсистему логики управления данными. Для сетевых информационных систем важным элементом является коммуникационный сервис, обеспечивающий взаимодействие узлов сети при общем решении задачи. Значительная часть функциональных возможностей информационных систем закладывается в системном программном обеспечении: операционных системах, системных библиотеках и конструкциях инструментальных средств разработки. Кроме программной составляющей информационных систем важную роль играет информационная составляющая, которая задает структуру, атрибутику и типы данных, а также тесно связана с логикой управления данными.
В информационной системе осуществляются информационные процессы, определяющие полный цикл обращения информации (регистрация, формирование, обработка, передача, представление, поиск, выдача информации по запросам пользователей, хранение, уничтожение).
Все факторы, воздействующие на информационные системы и информационные процессы, в течение всего жизненного цикла от проектирования до использования входят в так называемую информационную среду. Информационная среда – это весь набор условий для технологической переработки и эффективного использования знаний в виде информационного ресурса. К ней относятся аппаратные средства, программное обеспечение, телекоммуникации, уровень подготовки кадров (специалистов и пользователей), формы стимулирования, контроля, методы и формы управления, документопотоки, процедуры, регламенты, юридические нормы и т. д., причем в информационную среду входит не только управляющая подсистема, но и объект. Исходя из понятия информационной среды удобно дать понятие информационного процесса.
С информацией можно производить следующие операции:
создавать передавать воспринимать иcпользовать запоминать принимать; копировать |
формализовать распространять преобразовывать комбинировать обрабатывать делить на части; упрощать |
собирать хранить искать измерять разрушать контролировать; и др. |
Все эти процессы, связанные с определенными операциями над информацией, называются информационными процессами.
Информационный процесс (ИП) – совокупность последовательных действий, функциональных и информационных связей, обеспечивающих обмен документами и информацией в системе социальной коммуникации с целью доведения их до потребителей.
К процессам социальной коммуникации относятся:
непосредственное общение между учеными и специалистами;
общение между учреждениями и организациями посредством переписки, рецензирования, консультирования и др.;
издательские процессы при подготовке рукописей к изданию;
распространение и пропаганда публикаций, публичные выступления;
научно-информационная и библиотечно-библиографическая деятельность;
управленческая деятельность специалистов, заключающаяся в подготовке управленческих воздействий по оптимизации функционирования систем;
средства массовой информации.
Рассматриваемая система социальной коммуникации представляет собой множество взаимосвязанных компонент (рис. 1.10).
Рис.1.10. Система социальной коммуникации
Документально-информационный поток включает в себя совокупность документов и информации, отображающих систему и уровень знаний, закрепленных в документальных источниках.
Эффективность информационного процесса, определяемого характеристиками документально-информационного потока, информационного массива или базы данных, лингвистических и технических средств, сферы потребителей, оценивается такими общими показателями функционирования, как полнота, точность, стоимость, трудоемкость процесса.
В существующих системах информационного обеспечения управления все этапы информационных процессов взаимосвязаны и выполняются в едином технологическом цикле. Их основная цель – обеспечение наибольшей устойчивости, непрерывности, оперативности, точности управления при минимальных затратах ресурсов на единицу обрабатываемой информации.
Основные существенные свойства, присущие ИП:
адекватность – способность преобразовывать информацию состояния в командную, на основе которой объект управления (ОУ) переходит в состояние, соответствующее сложившейся ситуации;
оптимальность – способность управления осуществлять "продвижение" ОУ в направлении достижения цели по траектории, лучшей относительно других в смысле принятого критерия;
оперативность – способность преобразовывать информацию в соответствии с установленными ограничениями на время преобразования;
скрытность – способность сохранять в тайне факт, время и место преобразования информации, ее содержание и принадлежность УО.
Для удобства управления информационными процессами организуются информационные потоки. В современных системах для этих целей создаются автоматизированные информационные системы (АИС) (рис. 1.11), представляющие системы сбора, хранения, обработки и передачи информации, необходимой для удовлетворения потребностей управления.
Элементарная информация – информация о событиях, ситуациях, известная до момента их свершения.
Основная задача таких систем – обеспечение субъекта управления систематизированной и должным образом обработанной информацией.
Для эффективного функционирования системы на всех этапах целесообразно проведение синтаксического, семантического и прагматического анализа циркулирующих информационных по-токов.
Рис. 1.11. Автоматизированная информационная система
Синтаксический анализ устанавливает важнейшие параметры информационных потоков, включая необходимые количественные характеристики, для выбора комплекса технических средств сбора, регистрации, передачи, обработки, накопления и хранения информации.
Семантический анализ позволяет изучить информацию с точки зрения смыслового содержания ее отдельных элементов, находить способы языкового соответствия (язык человека, язык ЭВМ) при однозначном распознавании вводимых в систему сообщений.
Прагматический анализ проводится с целью определения полезности информации, используемой для управления, выявления практической значимости сообщений, применяемых для выработки управляющих воздействий.
1.6.2 Процесс сбора информации
Восприятие информации – процесс преобразования сведений, поступающих в техническую систему или живой организм из внешнего мира, в форму, пригодную для дальнейшего использования. Благодаря восприятию информации обеспечивается связь системы с внешней средой, в качестве которой могут выступать человек, наблюдаемый объект, явление или процесс и т. д.
Для развитых систем восприятия можно выделить несколько этапов переработки поступающей информации: предварительная обработка для приведения входных данных к стандартному для такой системы виду, выделение в поступающей информации семантически и прагматически значимых информационных единиц, распознавание объектов и ситуаций, коррекция внутренней модели мира. Важнейшей проблемой восприятия информации является интеграция информации, поступающей из различных источников и от анализаторов разного типа в пределах одной ситуации.
Сбор информации – это процесс ее получения из внешнего мира и приведения к виду, стандартному для данной информационной системы, с целью обеспечения достаточной полноты для принятия решения.
Обмен информацией между воспринимающей информацию системой и окружающей средой осуществляется посредством сигналов.
Сигнал можно определить как средство перенесения информации в пространстве и времени. В качестве носителя сигнала могут выступать звук, свет, электрический ток, магнитное поле и т. д.
Совокупность технических средств ввода информации в ЭВМ, программ, управляющих всем комплексом технических средств, обеспечивающих ввод информации с отдельных устройств ввода (драйверов устройств), – вот что представляет собой современная развитая система сбора информации.
В процессе сбора происходит комплектование системы информационного обеспечения массивами первичных и вторичных документированных источников информации.
К первичным документированным источникам информации относятся опубликованные, неопубликованные и непубликуемые документы, содержащие исходную информацию; к вторичным – документы, полученные в результате аналитико-синтетической переработки одного или нескольких первичных источников, например: информационные издания (библиографические, реферативные, обзорные).
Применительно к информационным системам, созданным с применением ЭВТ, используется понятие "сбор данных".
Сбор данных – процесс идентификации и получения данных от различных источников, группирования их и представления в форме, необходимой для ввода в ЭВМ.
Сбор информации связывает систему информационного обеспечения с внешней средой. Эффективность процесса сбора информации (информационного массива) оценивается показателями полноты, точности, оперативности, стоимости, трудоемкости.
Полнота – количественная мера содержания в массиве пертинентных документов (информации), существующих на данный момент времени с точки зрения всех пользователей системы.
Пертинентность – соответствие содержания документа (информации) информационным потребностям пользователей.
Точность – количественная мера содержания в информационном массиве (системе) только пертинентных документов (информации). Этот показатель характеризует внутреннее состояние процесса сбора, его способность удовлетворять информационные запросы независимо от времени на поиски информации.
Оперативность – способность процесса сбора выполнить задачу в минимально возможное время.
Стоимость – способность процесса сбора минимизировать затраты ресурса на единицу массива информации.
Трудоемкость – способность процесса сбора минимизировать трудозатраты на единицу массива информации.
В рамках процесса сбора осуществляется структуризация информации, информационных потребностей объекта (пользователя) и выбор источника информации.
Структуризация информации представляет системную классификацию информации по показателям удобства ее использования человеком в процессе решения практических задач обработки и хранения с использованием современных средств и методов (гл. 1.4.1).
Решение задачи структуризации информационных потребностей пользователя связано с формированием информационного кадастра, представляющего организованную совокупность всех данных, необходимых и достаточных для информационного обеспечения деятельности современного объекта.
Выбор источника информации должен осуществляться исходя из следующих требований: полноты информационного кадастра достоверности, актуальности, релевантности информативности, толерантности, функциональной направленности, легальности поставляемой, регулярности поступающей информации, минимизации затрат ресурса на поддержание информационного кадастра.
Задача оптимального выбора источников информации заключается в выборе из всего имеющегося потенциального множества такой совокупности, которая при минимальных расходах средств и трудозатратах обеспечила бы удовлетворительное регулярное поступление необходимой информации, отвечающей перечисленным выше требованиям.
1.6.3 Процесс передачи информации
Информационные потоки на объекте делятся на входные, внутренние и выходные. В канале телекоммуникации они могут быть разделены на односторонние и двухсторонние.
Циркуляцией информационных потоков называется факт регулярного их движения между различными объектами или элементами одного и того же объекта.
Важен процесс передачи информации, заключающийся в ее транспортировке от места генерации (источника) к местам хранения, обработки или использования (потребителю).
Информация передается в виде сообщений от некоторого источника информации к ее приемнику посредством канала связи (информационного канала) между ними. Источник посылает передаваемое сообщение, кодируемое в передаваемый сигнал, посылаемый по каналу связи. В результате в приемнике появляется принимаемый сигнал, который декодируется и становится принимаемым сообщением. Схематично процесс передачи информации показан на рисунке 1.12.
Рис. 1.12. Процесс передачи информации
В таком процессе информация представляется и передается в форме некоторой последовательности сигналов, символов, знаков. Например, при непосредственном разговоре между людьми происходит передача звуковых сигналов – речи, при чтении текста человек воспринимает буквы – графические символы. Передаваемая последовательность называется сообщением. От источника к приемнику сообщение передается через некоторую материальную среду (звук – акустические волны в атмосфере, изображение – световые электромагнитные волны).
Если в процессе передачи используются технические средства связи, то их называют каналами связи (информационными каналами).
Канал связи – совокупность технических средств (передатчик, линия связи, приемник), обеспечивающих передачу сигналов от источника к получателю сигнала.
По физической природе каналы связи делятся:
на механические – используются для передачи материальных носителей информации;
акустические – передают звуковой сигнал;
оптические – передают световой сигнал;
электрические – передают электрический сигнал.
Электрические каналы связи могут быть проводные и беспроводные (радиоканалы).
По форме представления передаваемой информации каналы связи делятся на аналоговые и дискретные. По аналоговым каналам передается информация, представленная в виде непрерывного ряда значений какой-либо физической величины; по дискретным – в виде дискретных (цифровых, импульсных) сигналов той или иной физической природы.
К каналам связи относят телефон, радио, телевидение.
Передача информации по каналам связи часто сопровождается воздействием помех, вызывающих искажение и потерю информации.
В существующих информационных системах различных классов в зависимости от видов используемых носителей информации и средств обработки можно выделить несколько систем передачи, в которых информация распространяется посредством передачи устной речи при непосредственном общении; бумажных носителей с помощью фельдъегерско-почтовой связи; машиночитаемых носителей (магнитных карт, перфокарт, перфолент, магнитных дисков и лент) с помощью фельдъегерско-почтовой связи; в виде различных электрических сигналов по каналам телекоммуникаций, в том числе автоматизированным каналам связи.
В системах управления информация передается как путем переноски (перевозки) информационных документов курьером (фельдъегерем), так и использования систем автоматизированной передачи информации по каналам связи.
Ручная и механическая перевозка документов – весьма распространенный способ передачи информации. При минимальных капитальных затратах он полностью обеспечивает достоверность передачи информации, предварительно зафиксированной в документах и проконтролированной непосредственно в пунктах ее регистрации. Однако данный способ передачи имеет существенный недостаток – низкую оперативность (скорость) передачи.
Схема передачи информации посредством фельдъегерско-почтовой связи представлена на рисунке 1.13.
Рис. 1.13. Общая схема процесса передачи информации по каналам
фельдъегерско-почтовой связи
Для оперативной передачи информации используют системы автоматизированной передачи информации. Американским ученым Клодом Шенноном была предложена схема процесса передачи информации по техническим каналам связи (рис. 1.14).
Источником информации и ее получателем могут быть как человек, так и различные технические устройства (средства связи, ЭВТ и др.).
С помощью кодера устройства источника (КИ) информация, имеющая любую физическую природу (изображение, звук и т. п.), преобразуется в первичный электрический сигнал b(t). Для непрерывной информации, например речевого сообщения, эта операция сводится к преобразованию звукового давления в пропорционально изменяющийся электрический ток микрофона, который в каждый момент отсчета (времени) можно представить конечным числом сигналов, соответствующих отдельным буквам алфавита источника. В телеграфии последовательность элементов сообщения (букв алфавита) большого объема заменяется (кодируется) символами (буквами) другого алфавита меньшего объема.
Рис. 1.14. Общая схема системы передачи информации по каналам
телекоммуникаций (связи)
Процесс преобразования информации в систему символов, обеспечивает:
простоту технических средств распознавания элементарных символов сообщения;
снижение избыточности символов, требующихся на букву сообщения;
минимальное время передачи или минимальный объем запоминающих устройств хранения информации;
простоту выполнения арифметических и логических действий с хранимой информацией.
В дальнейшем с помощью технического устройства последовательность кодовых символов преобразуется в последовательность электрических сигналов. Связь, при которой передача производится в форме непрерывного электрического сигнала, называется аналоговой связью. В настоящее время широко используется цифровая связь, когда передаваемая информация кодируется в двоичную форму ("0" и "1" – двоичные цифры), а затем декодируется в текст, изображение, звук. Цифровая связь является дискретной.
Рассмотренное кодирование при отсутствии помех в канале связи дает выигрыш во времени передачи или объеме запоминающего устройства, т. е. повышает эффективность системы. Оно получило название эффективного, или оптимального, кодирования.
В процессе передачи сигнала по каналу связи на него оказывают негативное воздействие различного рода помехи, искажающие передаваемый сигнал и приводящие к потере информации. Такие помехи возникают по техническим причинам: плохое качество линий связи, незащищенность друг от друга различных потоков информации, передаваемой по одним и тем же каналам. В этих случаях применяются технические способы защиты каналов связи от воздействия шумов. Например, использование экранного кабеля вместо "голого" провода; применение разного рода фильтров, отделяющих полезный сигнал от шума и пр.
Клодом Шенноном была разработана специальная теория кодирования, описывающая методы борьбы с шумом. Одна из важных идей этой теории состоит в том, что передаваемый по линии связи код должен быть избыточным. За счет этого потеря какой-то части информации при передаче может быть компенсирована.
Однако нельзя делать избыточность слишком большой. Это приведет к задержкам и подорожанию связи. В современных системах цифровой связи часто применяется следующий прием борьбы с потерей информации при передаче. Все сообщение разбивается на порции – блоки. Для каждого блока вычисляется контрольная сумма (сумма двоичных цифр), передаваемая вместе с данным блоком. В месте приема заново вычисляется контрольная сумма принятого блока, и если она не совпадает с первоначальной, то передача данного блока повторяется. Так будет происходить до тех пор, пока исходная и конечная контрольные суммы не совпадут. Такое кодирование называется помехоустойчивым.
Выбор кодирующих и декодирующих устройств зависит от статистических свойств источника сообщений, уровня и характера помех в канале связи.
В передатчике (ПРД) первичный электрический сигнал преобразуется во вторичный u(t), пригодный для передачи по соответствующему каналу (линии) связи. Такое преобразование осуществляется с помощью модулятора.
Преобразование сообщения в сигнал должно быть обратимым. Это позволит по выходному сигналу восстановить входной первичный сигнал, т. е. получить всю информацию, содержащуюся в переданном сообщении. В противном случае часть информации будет потеряна.
Линия связи – среда, используемая для передачи сигналов от передатчика к приемнику.
В системах электросвязи такими линиями являются кабели, волноводы, в системах радиосвязи - пространства, в которых распространяются электромагнитные волны от передатчика к приемнику.
При передаче по линии связи на сигналы могут накладываться помехи , в результате чего сигналы искажаются.
Приемное устройство в составе приемника (ПРМ) и декодирующего устройства информации (ДИ) обрабатывает принятый сигнал z(t) = s(t) + n(t) и восстанавливает по нему передаваемое сообщение а', адекватное сообщению источника информации a.
Система связи – совокупность технических средств передачи сообщений от источника к потребителю, включающая передающие (КИ, ПРД) и приемные (ДИ, ПРМ) устройства и линию связи.
По виду передаваемых сообщений различают следующие системы связи: передачи речи (телефонная), текста (телеграфная), неподвижных изображений (фототелеграфная), изображений (телевизионная), данных, радиовещание, видеотекста, телетекста, конференцсвязи, телеизмерения и телеуправления и др.
По количеству передаваемых сообщений по одной линии связи системы делятся на одноканальные и многоканальные.
Одной из важных характеристик системы передачи информации является скорость передачи информации.
Основными качественными показателями системы передачи информации являются пропускная способность, достоверность, надежность работы.
Пропускная способность системы передачи информации – наибольшее теоретически достижимое количество информации, которое может быть передано по системе за единицу времени. Она обусловливается скоростью преобразования информации в передатчике и приемнике и допустимой скоростью передачи информации по каналу связи, определяемой физическими свойствами канала связи и сигнала.
Достоверность передачи информации – это передача информации без искажения.
Надежность канала связи – полное и правильное выполнение системой всех своих функций.
Скорость передачи информации – это информационный объем сообщения, передаваемого в единицу времени. Единицы измерения скорости информационного потока: бит/с, байт/с и др.
Скорость передачи дискретной информации по каналу связи измеряется в бодах. Бод – это элемент сигнала, передаваемый в единицу времени (всплеск частоты, переворот фазы).
По пропускной способности каналы связи можно классифицировать на виды:
низкоскоростные, скорость передачи информации в которых от 50 до 200 Бд; это дискретные (телеграфные) каналы связи как коммутируемые (абонентский телеграф), так и некоммутируемые;
среднескоростные, использующие аналоговые (телефонные) линии связи; скорость передачи в них от 300 до 9 600 Бд, а в новых Стандартах Международного совета электросвязи (МСЭ) (ранее Международного консультационного комитета по телеграфии и телефонии – МККТТ) до 33 600 Бд (Стандарт V.34 бис);
высокоскоростные (широкополосные), обеспечивающие скорость передачи информации выше 36 000 Бд; по этим каналам связи можно передавать и дискретную, и аналоговую информации.
Физической средой передачи информации в низкоскоростных и среднескоростных каналах связи (КС) обычно являются группы параллельных, либо скрученных проводов, называемых "витая пара" (скручивание проводов уменьшает влияние внешних помех).
В широкополосных каналах связи используются коаксиальные и оптоволоконные кабели. К ним относятся и беспроводные радиоканалы связи. Возможности широкополосных каналов связи огромны, например, по одному радиоканалу для миллиметровых волн можно одновременно организовать несколько тысяч телефонных, несколько тысяч видеотелефонных и около тысячи телевизионных каналов, при этом скорость передачи может составлять несколько миллионов бод. Не меньше возможностей и у волоконно-оптических каналов.
Следует особо отметить, что телефонный канал связи является более узкополосным, нежели телеграфный, но скорость передачи данных по нему выше ввиду обязательного наличия специального устройства согласования – модема.
Модем выполняет следующие функции:
при передаче преобразование широкополосных импульсов (цифрового кода) в полосные аналоговые сигналы (амплитудно-, частотно- или фазомодулированные);
при приеме фильтрацию принятого сигнала от помех и детектирование, т. е. обратное преобразование узкополосного аналогового сигнала в цифровой код.
Благодаря фильтрации сигнала повышается помехоустойчивость, что, в свою очередь, позволяет увеличивать пропускную способность системы. Модемы, выпускаемые промышленностью, различаются:
конструкцией (автономные и встраиваемые в аппаратуру);
интерфейсом с КС (контактные и бесконтактные (аудио));
назначением для разных каналов связи и систем (например, для систем передачи данных – модемы, для систем передачи факсов – факс-модемы);
скоростью передачи. Существует стандарт скоростей передачи данных, соответствующий стандарту протоколов (алгоритмов управления) МСЭ для телефонных КС; он включает скорости (в бодах): 300, 600, 1 200, 2 400, 4 800,12 000, 14 400, 16 800,19 200, 28 800, 33 600.
Ранее модемы выпускались каждый на определенную скорость работы. Современные модемы более универсальны: некоторые из них (МТ 1932, МТ 2834 и др.) могут работать как с коммутируемыми, так и с некоммутируемыми КС, поддерживают почти всю шкалу названных скоростей, имеют режимы модема и факс-модема.
Классификация систем передачи информации:
Передача недокументированной информации. Телефонная связь – самый распространенный вид оперативной административно-управленческой связи. Ее абонентами являются как физические лица, так и организации. Телефонную связь можно разделить на общегосударственную и внутриучрежденческую. Виды телефонной связи: радиотелефонная, видеотелефонная, пейджинговая.
Передача документированной информации. Телеграфная связь предназначена для передачи на расстояние по электрическим проводным каналам связи алфавитно-цифровой информации для автоматизированного приема-передачи коротких текстовых документированных сообщений:
1. Телетайпная связь, при которой ввод информации в телетайп может осуществляться вручную с клавиатуры и автоматизированно с перфоленты.
2. Дейтефонная связь использует для передачи информации телефонные каналы связи, а в качестве приемопередающей аппаратуры может использоваться как обычная телетайпная аппаратура совместно с модемами, так и специальная. Примерный состав и назначение аппаратуры абонента дейтефонной связи:
телефонный аппарат – первоначальный вызов абонента;
фотосчитывающее устройство – автоматическое считывание информации с перфоленты при передаче;
перфоратор ленты – регистрация принятой информации на перфоленту;
модулятор-демодулятор (модем) – согласование приемопередающей аппаратуры с телефонным каналом связи;
устройство защиты от ошибок – для обеспечения достоверности передачи информации;
устройство алфавитно-цифровой печати (принтер, телетайп).
Факсимильный способ передачи информации заключается в дистанционном копировании документов. Назначение факсимильной связи – передача на расстояние информации в виде текстов, чертежей, рисунков, схем, фотоснимков и т. п.
1.6.4 Обработка информации
На различных этапах информационного цикла данные преобразовываются из одного вида в другой с помощью различных методов. Общая схема процесса обработки информации выглядит следующим образом (рис. 1.15).
Рис.1.15. Схема процесса обработки информации
В процессе обработки информации решается некоторая информационная задача, для которой должны быть определены исходная (некоторый набор исходных данных) и итоговая (требуемые результаты) информация. Переход от исходных данных к результату и есть процесс обработки. Тот объект или субъект, который осуществляет обработку, называется исполнителем обработки. Это может быть человек или техническое устройство, в том числе компьютер.
Для успешного выполнения обработки информации исполнителю должен быть известен способ обработки, т. е. последовательность действий, которую нужно выполнить, чтобы достичь нужного результата. Описание такой последовательности действий в информатике принято называть алгоритмом обработки.
Можно выделить два типа обработки информации:
1. Обработка, связанная с получением новой информации, нового содержания знаний. К ней относится решение различных задач путем применения логических рассуждений.
2. Обработка, связанная с изменением формы, но не изменяющая содержания, например, перевод текста с одного языка на другой.
Обработка данных включает в себя множество разных операций, представляющих собой комплекс совершаемых технологических действий, в результате которых информация преобразуется. Основными операциями являются:
формализация (приведение данных, поступающих из разных источников, к единой форме);
фильтрация (устранение лишних данных, которые не нужны для принятия решений);
сортировка (приведение в порядок данных по заданным признакам с целью удобства использования);
архивация (сохранение данных в удобной и доступной форме);
защита (комплекс мер, направленных на предотвращение потерь при воспроизведении и модификации данных);
преобразование (преобразование данных из одной формы в другую или из одной структуры в другую или изменение типа носителя).
Обработка информации – это получение одних информационных объектов из других информационных объектов путем выполнения некоторых алгоритмов.
Обработка является одним из основных процессов, выполняемых над информацией, и главным средством увеличения объема и разнообразия информации.
Средства обработки информации – всевозможные устройства и системы, созданные человечеством, и в первую очередь компьютер.
При обработке информации производится структурирование данных. Это определенный порядок, определенная организация в хранилище информации: расположение данных в алфавитном порядке, группировка по некоторым признакам классификации, использование табличного или графового представления – все это примеры структурирования. От способа организации информации зависит алгоритм поиска. Если информация структурирована, то поиск осуществляется быстрее.
Живые организмы и растения обрабатывают информацию с помощью своих органов и систем, компьютеры - путем выполнения некоторых алгоритмов.
Вычислительные алгоритмы должны объединяться в вычислительный граф системы обработки информации в соответствии с требуемой технологической последовательностью решения задач.
По мере развития вычислительной техники совершенствуются и формы ее использования. Существуют разнообразные способы доступа и общения с ЭВМ. Индивидуальный и коллективный доступ к вычислительным ресурсам зависит от степени их концентрации и организационных форм функционирования. Централизованные формы применения вычислительных средств, которые существовали до массового использования ПЭВМ, предполагали их сосредоточение в одном месте и организацию информационно-вычислительных центров индивидуального (ИВЦ) и коллективного пользования (ИВЦКП).
Деятельность ИВЦ и ИВЦКП характеризовалась обработкой больших объемов информации, использованием нескольких средних и больших ЭВМ, квалифицированным персоналом для обслуживания техники и разработки программного обеспечения. Централизованное применение вычислительных и других технических средств позволяло организовать их надежную работу, планомерную загрузку и квалифицированное обслуживание.
Централизованная обработка информации наряду с положительными сторонами имеет и некоторые отрицательные черты, порожденные прежде всего отрывом конечного пользователя от технологического процесса обработки информации.
Децентрализованные формы использования вычислительных ресурсов начали формироваться со второй половины 80-х г ХХ в. Децентрализация предусматривает размещение ПЭВМ в местах возникновения и потребления информации, где создаются автономные пункты ее обработки. К ним относят абонентские пункты и автоматизированные рабочие места.
Автоматизированное рабочее место (АРМ) специалиста включает персональную ЭВМ, работающую автономно или в вычислительной сети, набор программных средств и информационных массивов для решения функциональных задач.
Технология электронной обработки информации – человеко-машинный процесс исполнения взаимосвязанных операций, протекающих в установленной последовательности с целью преобразования исходной (первичной) информации в результатную. Технологические операции разнообразны по сложности, назначению, технике реализации, выполняются на различном оборудовании, многими исполнителями.
Различают два основных типа организации технологических процессов: предметный и пооперационный.
Предметный тип организации технологии предполагает создание параллельно действующих технологических линий, специализирующихся на обработке информации и решении конкретных комплексов задач (учет нагрузки, качества прохождения сигнала и т. п.) и организующих пооперационную обработку данных внутри линии.
Пооперационный (поточный) тип построения технологического процесса предусматривает последовательное преобразование обрабатываемой информации согласно технологии, представленной в виде непрерывной последовательности сменяющих друг друга операций, выполняемых в автоматическом режиме.
Различают следующие режимы взаимодействия пользователя с ЭВМ: пакетный и интерактивный (запросный, диалоговый). Сами ЭВМ могут функционировать в следующих режимах: одно- и многопрограммном, разделения времени, реального времени, телеобработки.
Организация вычислительного процесса при пакетном режиме строилась без доступа пользователя к ЭВМ. Его функции ограничивались подготовкой исходных данных по комплексу информационно-взаимосвязанных задач и передачей их в центр обработки, где формировался пакет, включающий задание для ЭВМ на обработку, программы, исходные и справочные данные. Он вводился в ЭВМ и реализовывался в автоматическом режиме, при этом работа ЭВМ могла проходить в одно- или многопрограммном режиме.
Интерактивный режим предусматривает непосредственное взаимодействие пользователя с информационно-вычислительной системой, может носить характер запроса (как правило регламентированного) или диалога с ЭВМ.
Запросный режим необходим пользователям для взаимодействия с системой через значительное число абонентских терминальных устройств, в том числе удаленных на значительное расстояние от центра обработки. Такая необходимость обусловлена решением оперативных задач справочно-информационного характера.
Диалоговый режим открывает пользователю возможность непосредственно взаимодействовать с вычислительной системой в допустимом для него темпе работы, реализуя повторяющийся цикл выдачи задания, получения и анализа ответа. При этом ЭВМ сама может инициировать диалог, сообщая пользователю последовательность шагов (представление меню) для получения искомого результата.
Обе разновидности интерактивного режима (запросный, диалоговый) основываются на работе ЭВМ в режимах реального времени и телеобработки, которые являются дальнейшим развитием режима разделения времени, поэтому обязательными условиями функционирования системы в этих режимах являются, во-первых, постоянное хранение в запоминающих устройствах ЭВМ необходимой информации и программ и лишь в минимальном объеме поступление исходной информации от абонентов и, во-вторых, наличие у абонентов соответствующих средств связи с ЭВМ для обращения к ней в любой момент времени.
Рассмотренные технологические процессы и режимы работы пользователей в системе "человек–машина" особенно четко проявляются при интегрированной обработке информации, которая характерна для современного автоматизированного решения задач в многоуровневых информационных системах.
1.6.5 Хранение информации
Хранение и накопление информации вызвано ее многократным использованием, применением постоянной информации, необходимостью комплектации первичных данных до их обработки; осуществляется на машинных носителях в виде информационных массивов, где данные располагаются по установленному в процессе проектирования группировочному признаку.
Хранение информации – это ее запись во вспомогательные запоминающие устройства на различных носителях для последующего использования.
Хранение является одной из основных операций, осуществляемых над информацией, и главным способом обеспечения ее доступности в течение определенного промежутка времени.
Основное содержание процесса хранения и накопления информации состоит в создании, записи, пополнении и поддержании информационных массивов и баз данных в активном состоянии (рис. 1.16).
В результате реализации такого алгоритма документ, независимо от формы представления поступивший в информационную систему, подвергается обработке и после этого отправляется в хранилище (базу данных), где помещается на соответствующую "полку" в зависимости от принятой системы хранения. Результаты обработки передаются в каталог.
Этап хранения информации может быть представлен на следующих уровнях: внешнем, концептуальном (логическом), внутреннем, физическом.
Рис. 1.16. Алгоритм процесса подготовки информации к хранению
Внешний уровень отражает содержательность информации и представляет способы (виды) представления данных пользователю в ходе их хранения.
Концептуальный уровень определяет порядок организации информационных массивов и способы хранения информации (файлы, массивы, распределенное хранение, сосредоточенное и др.).
Внутренний уровень представляет организацию хранения информационных массивов в системе ее обработки и определяется разработчиком.
Физический уровень хранения означает реализацию хранения информации на конкретных физических носителях.
Способы организации хранения информации связаны с ее поиском – операцией, предполагающей извлечение хранимой информации.
Хранение и поиск информации являются не только операциями над ней, но и предполагают использование методов осуществления этих операций. Информация запоминается так, чтобы ее можно было отыскать для дальнейшего использования. Возможность поиска закладывается во время организации процесса запоминания. Для этого используют методы маркирования запоминаемой информации, обеспечивающие поиск и последующий доступ к ней и применяемые для работы с файлами, графическими базами данных и т. д.
Маркер (mark, marker) – метка на носителе информации, обозначающая начало или конец данных либо их части (блока).
В современных носителях информации используются маркеры:
адреса (адресный маркер) – код или физическая метка на дорожке диска, указывающие на начало адреса сектора;
группы – маркер, указывающий начало или конец группы данных;
дорожки (начала оборота) – отверстия на нижнем диске пакета магнитных дисков, указывающие физическое начало каждой дорожки пакета.
конца файла – метка, используемая для указания окончания считывания последней записи файла;
ленты (ленточный маркер) – управляющая запись или физическая метка на магнитной ленте, обозначающая признак начала или конца блока данных или файла;
сегмента – специальная метка, записываемая на магнитной ленте для отделения одного сегмента набора данных от другого.
Хранение информации в ЭВМ связано с процессом ее арифметической обработки и с принципами организации информационных массивов, поиска, обновления, представления информации и др.
Важным этапом автоматизированного этапа хранения является организация информационных массивов.
Массив (от англ. array) – упорядоченное множество данных.
Информационный массив – система хранения информации, включающая представление данных и связей между ними, т. е. принципы их организации.
С учетом этого рассматриваются следующие структуры организации информационных массивов: линейная, многомерная.
В свою очередь, линейная структура данных делится на строки, одномерные массивы, стеки, очереди, деки и др.
Строка – это представление данных в виде элементов, располагающихся по признаку непосредственного следования, т. е. по мере поступления данных в ЭВМ.
Одномерный массив – это представление данных, отдельные элементы которых имеют индексы, т. е. поставленные им в соответствие целые числа, рассматриваемые как номер элемента массива.
Индекс обеспечивает поиск и идентификацию элементов, а следовательно, и доступ к заданному элементу, что облегчает его поиск по сравнению с поиском в строке.
Идентификация – процесс отождествления объекта с одним из известных объектов.
Стек – структура данных, учитывающая динамику процесса ввода-вывода информации, использующая линейный принцип организации хранения, реализующий процедуру обслуживания "последним пришел – первым ушел" (первым удаляется последний поступивший элемент).
Очередь – структура организации данных, при которой для обработки информации выбирается элемент, поступивший ранее всех других.
Дека – структура организации данных, одновременно сочетающая рассмотренные виды.
Нелинейные структуры хранения данных используют многомерные структуры (массивы) следующих видов: деревья, графы, сети.
Элемент многомерного массива определяется индексом, состоящим из набора чисел. Формой представления прямоугольного массива является матрица, каждое значение которой определяется индексом требуемого элемента массива. Так, в двухмерном массиве элементы обозначаются двумя индексами, а в трехмерном – тремя.
Массивы по своей структуре близки к файлам и отличаются от последних двумя основными признаками:
каждый элемент массива может быть явно обозначен, и к нему имеется прямой доступ;
число элементов массива определяется при его описании.
Организация хранения данных в многомерном массиве может быть представлена в виде логических структур информационных массивов. В этих массивах структуры данных компонуются в виде записей, располагающихся различным образом. С учетом этого выделяют следующие основные структуры информационных массивов: последовательную, цепную, ветвящуюся, списковую.
В последовательной структуре информационного массива записи располагаются последовательно, нахождение требуемой записи осуществляется путем просмотра всех предшествующих. Включение новой записи в информационный массив требует смещения всех записей, начиная с той, которая добавляется. Обновление информационных массивов при последовательной структуре требует перезаписи всего массива.
В цепной структуре информационные массивы располагаются произвольно. Для логической связи отдельных записей необходима их адресация, т. е. каждая предыдущая запись логически связанного информационного массива должна содержать адрес расположения последующей записи. Если с определенного уровня, значения в записях повторяются в различных сочетаниях, то в целях экономии памяти возможен переход от цепной структуры к ветвящейся.
В ветвящейся структуре информационного массива сначала размещается запись, отображающая признак объекта с небольшим числом значений, далее они повторяются в записях в различных сочетаниях. Это дает возможность перейти от некоторой основной записи к другим в зависимости от запроса, не повторяя основную запись.
Чтобы устранить повторяющиеся записи и соответствующие им поля из памяти, их удаляют из основного массива и объединяют в дополнительный небольшой информационный массив. В нем записи упорядочиваются по какому-либо признаку без повторений, тогда в основном массиве вместо удаленного информационного поля указываются адреса записей, размещенных в дополнительном массиве. Данная структура является удобной при реорганизации информационной базы, поскольку повторяющиеся записи легко могут быть заменены, так как хранятся в дополнительном массиве, основной массив подвергается при этом незначительным изменениям. Однако эта структура требует дополнительного объема памяти.
Списковая структура информационных массивов характеризуется наличием списка, который содержит набор данных, определяющих логический порядок организации информационного массива.
Список включает имя и адрес поля данных. В памяти ЭВМ элементы списка физически разнесены, но связаны друг с другом логически за счет адресных ссылок.
Поле данных в зависимости от характера хранимой информации может быть выражено двоичным разрядом, словом фиксированной либо переменной длины, а также набором отдельных слов.
Формализовано список может быть реализован в виде таблицы, где имена списка и поля данных сопоставлены с адресами, выбранными произвольно по мере наличия свободных мест в запоминающем устройстве. В случае необходимости повторений какой-либо информации рекомендуется многократно обращаться по адресу, который может входить в несколько списков, т. е. применить механизм многократных адресных ссылок.
Списковая структура с механизмом адресных ссылок может быть представлена в виде графа древовидной структуры. В нем каждый элемент списка включает в себя маркерное поле, поле данных и адресное поле. Маркерное поле предупреждает, имеется ли ссылка на другой список или она отсутствует. В зависимости от этого в маркерном поле ставится знак минус или плюс.
Списки так же могут быть показаны ориентированными графами с полями, в которых возможна ссылка вперед и назад. Возникает так называемый симметричный список, и появляется возможность движения в структуре данных в разных направлениях.
Рассмотренные списковые структуры информационных массивов имеют следующие особенности:
высокую логическую простоту;
относительно большое количество времени доступа, обусловленное адресным обращением к данным, при котором к каждому элементу списка необходимо иметь ссылку;
значительное возрастание объема памяти запоминающего устройства по сравнению с последовательной структурой организации информационных массивов, обусловленное адресным обращением к данным.
С учетом рассмотренных структур формирования информационных массивов можно представить ряд способов организации массивов (рис. 1.17) в запоминающих устройствах ЭВТ.
Рис. 1.17. Способы организации массивов информации в запоминающем устройстве ЭВТ
На физическом уровне любые записи информационного поля представляют в виде двоичных символов. Обращение к памяти большого объема требует большой длины адреса. Если память имеет емкость 2n слов, то для поиска таких слов потребуются n-разрядные адреса. В микропроцессорах восьмиразрядные слова дают возможность обращаться к 256 ячейкам памяти, что оказывается недостаточно для хранения информации в автоматизированных системах. Если непосредственно обращение к любой ячейке невозможно, переходят к страничной организации памяти.
В этом случае выбирают область памяти емкостью 2n слов и называют страницей, обращение к которой осуществляется командой, содержащей n-разрядное адресное поле. В микропроцессорах обычно используют страницы размером 256 слов.
Принципы адресации, объемы памяти, количественные характеристики зависят от функционального назначения запоминающих устройств, разделяющимся по уровням функциональной иерархии на сверхоперативные, оперативные, постоянные, полупостоянные, внешние, буферные.
С хранением информации связаны следующие понятия: носитель информации (память), внутренняя память, внешняя память, хранилище информации.
Носитель информации – это физическая среда, непосредственно хранящая информацию. Основным носителем информации для человека является его собственная биологическая память (мозг), которую можно назвать оперативной (быстрой) памятью или внутренней памятью, поскольку ее носитель находится внутри нас.
Другие носители информации можно назвать внешними (по отношению к человеку), например бумага, которая, непригодна в обычных (не специальных) условиях для длительного хранения информации: на нее оказывают вредное воздействие температурные условия.
Для ЭВТ по материалу изготовления различают бумажные, металлические, пластмассовые, комбинированные и другие носители; по принципу воздействия и возможности изменения структуры выделяют магнитные, полупроводниковые, диэлектрические, перфорационные, оптические и др.; по методу считывания различают контактные, магнитные, электрические, оптические. Хранение информации осуществляется на специальных носителях.
Особое значение при построении информационного обеспечения имеют характеристики доступа к информации, записанной на носителе, которые бывают прямого и последовательного доступа. Пригодность носителя для хранения информации оценивается такими параметрами, как время доступа, емкость памяти и плотность записи. Хранение больших объемов информации оправдано только при условии, если поиск нужной информации можно осуществить достаточно быстро, а сведения получить в доступной форме.
Хранилище информации – это определенным образом организованная информация на внешних носителях, предназначенная для длительного хранения и постоянного использования, например архивы документов, библиотеки, справочники, картотеки. Основной информационной единицей хранилища является определенный физический документ: анкета, книга, дело, досье, отчет и пр. Под организацией хранилища понимается наличие определенной структуры, т. е. упорядоченность, классификация хранимых документов. Она необходима для удобства ведения хранилища: пополнения новыми документами, удаления ненужных, поиска информации и т. д.
Основные свойства хранилища информации: объем хранимой информации, надежность хранения, время доступа (т. е. время поиска нужных сведений), наличие защиты информации.
Информацию, хранимую на устройствах компьютерной памяти, принято называть данными. Для описания хранения данных используют те же понятия: носитель, хранилище данных, организация данных, время доступа, защита данных. Организованные хранилища данных на устройствах внешней памяти компьютера принято называть базами данных и банками данных.
Таким образом, хранение информации представляет собой процесс передачи информации во времени, связанный с обеспечением неизменности состояния материального носителя.
1.6.6 Системы хранения данных
В последнее время применение компьютерной техники претерпевает значительные изменения, связанные с переходом к созданию интегрированных (объединенных) информационных систем, предназначенных осуществлять согласованное управление данными в пределах предприятия (организации), координировать работу отдельных подразделений, автоматизировать операции по обмену информацией как в пределах отдельных групп пользователей, так и между несколькими организациями, отстоящими друг от друга на десятки и сотни километров. Основой для построения подобных систем служат локальные вычислительные сети (ЛВС). Их характерной чертой является предоставление пользователям возможности работать в универсальной информационной среде с функциями коллективного доступа к данным.
Рост объемов данных, возросшие требования к надежности хранения и быстродействию доступа к данным делают необходимым выделение средств хранения в отдельную подсистему вычислительного комплекса – систему хранения данных. Роль и важность ее определяются постоянно возрастающей ценностью информации в современном обществе, возможность доступа к данным и управления ими является необходимым условием для успешного выполнения информационных процессов.
Система хранения данных предназначена для организации их надежного хранения, а также отказоустойчивого, высокопроизводительного доступа серверов к устройствам хранения. В настоящее время объем и стоимость обрабатываемой информации с каждым годом увеличиваются и, как следствие, повышаются требования по надежности, доступности и совокупной стоимости владения используемых систем хранения данных. Помимо высоких показателей производительности, доступности и низкой стоимости необходимо обеспечить требуемую функциональность – объем хранения и число подключаемых серверов.
Дисковые массивы сегодня являются основными устройствами хранения данных, однако обработка информации, формирование логической структуры ее хранения (дисковых томов и файловых систем) осуществляется на серверах. В процесс доступа к данным, помимо процессоров и памяти сервера, вовлечены установленные в нем адаптеры (Host Bus Adapter – HBA), работающие по определенному протоколу, драйверы, обеспечивающие взаимодействие HBA с операционной системой, менеджер дисковых томов, файловая система и менеджер памяти операционной системы.
Если дисковый массив выполнен в виде отдельного устройства, то для его подключения к серверам используется определенная инфраструктура. В зависимости от протокола доступа (транспорта), реализованного в HBA и дисковом массиве, она может быть как простой шиной (протокол SCSI), так и сетью (протокол Fibre Channel (FC)). Если это сеть, то в ней используется активное оборудование – концентраторы и коммутаторы, работающие по протоколу FC, маршрутизаторы протокола FC в другие протоколы (обычно в SCSI). Таким образом, помимо устройств хранения данных в состав СХД необходимо еще добавить инфраструктуру доступа, связывающую серверы с устройствами хранения.
Сетевой инфраструктурой, объединяющей большое количество серверов и устройств хранения, необходимо управлять и отслеживать ее состояние. Это реализуется "подручными" средствами – встроенными утилитами серверов, массива и операционной системы, бесплатными утилитами или "самописными" скриптами. Каждое из устройств в СХД имеет несколько объектов, требующих управления и контроля состояния, например дисковые группы и тома у массивов, порты у массивов и коммутаторов, адаптеры в серверах. Как только число объектов управления в СХД начинает исчисляться десятками, управление такой конфигурацией отнимает у администраторов слишком много времени и сил и неизбежно приводит к ошибкам. Справиться с такой задачей можно, только используя полномасштабную систему управления.
Система хранения данных должна включать следующие подсистемы и компоненты:
1. Устройства хранения данных: дисковые массивы и ленточные библиотеки. Современные высокопроизводительные дисковые массивы используют технологию Fibre Channel для подключения к ним серверов и доступа к дискам внутри массива. Они могут масштабироваться до десятков терабайт дискового пространства и обладают встроенным интеллектом для выполнения специальных функций: виртуализации дискового пространства, разграничения доступа к дисковому пространству, создания Point-In-Time (PIT) копий данных и репликации данных между массивами. К устройствам хранения данных также относятся ленточные, магнитооптические и CD/DVD библиотеки.
2. Инфраструктуру доступа серверов к устройствам хранения данных, которая создается в настоящее время на основе технологии "сеть хранения данных" (Storage Area Network – SAN). SAN является высокопроизводительной информационной сетью, ориентированной на быструю передачу больших объемов данных.
В основе концепции SAN лежит возможность соединения любого из серверов с любым устройством хранения данных, работающим по протоколу Fibre Channel. Сеть хранения данных образуют волоконно-оптические соединения, Fibre Channel Host Bus Adapters (FC-HBA) и FC-коммутаторы, обеспечивающие в настоящее время скорость передачи 200 Мбайт/с и удаленность между соединяемыми объектами до нескольких десятков километров.
3. Систему резервного копирования и архивирования данных, предназначенную для создания резервных копий и восстановления данных. Она позволяет защитить данные от разрушения не только в случае сбоев или выхода из строя аппаратуры, но и в результате ошибок программных средств и пользователей.
4. Программное обеспечение управления хранением данных, предназначенное для решения задач управления хранением данных, например, для разметки дисковых томов или повышения производительности доступа к данным прикладного ПО. Это достигается за счет того, что встроенное в массивы программное обеспечение собирает статистику по интенсивности работы с данными и исходя из нее принимает решение о перемещении данных на диски, производительность которых соответствует скорости обращения к данным.
5. Систему управления, предназначенную для мониторинга и управления уровнем качества сервиса хранения данных. Она тесно интегрируется с системой управления вычислительным комплексом. Основой системы управления СХД являются средства управления аппаратными ресурсами сети хранения данных. Их интеграция с другими системами дает возможность контролировать ресурсы СХД и управлять ими на всех уровнях – от дисков в массиве до файловой системы сервера.
Для защиты от отказов отдельных дисков используют технологии RAID (кроме RAID-0), использующие дублирование данных, хранимых на дисках. Уровень RAID-5 хотя и не создает копий блоков данных, но все же сохраняет избыточную информацию, что тоже можно считать дублированием. Для защиты от логического разрушения данных (разрушение целостности базы данных или файловой системы), вызванного сбоями в оборудовании, ошибками в программном обеспечении или неверными действиями обслуживающего персонала, применяется резервное копирование, которое тоже является дублированием данных. Для защиты от потери данных вследствие выхода из строя устройств хранения по причине техногенной или природной катастрофы данные дублируются в резервный центр.
Отказоустойчивость доступа серверов к данным достигается дублированием путей доступа. Применительно к SAN дублирование заключается в следующем: сеть строится как две физически независимые сети, идентичные по функциональности и конфигурации. В каждый из серверов устанавливается как минимум по два адаптера FC-HBA. Первый из них подключается к одной половинке SAN, а второй – к другой. Отказ оборудования, изменение конфигурации или регламентные работы на одной из частей SAN не влияют на работу другой. В дисковом массиве отказоустойчивость доступа к данным обеспечивается дублированием RAID-контроллеров, блоков питания, интерфейсов к дискам и к серверам. Для защиты от потери данных зеркалируют участки кэш-памяти, участвующие в операции записи, а электропитание кэш-памяти резервируют батареями. Пути доступа серверов к дисковому массиву тоже дублируются. Внешние интерфейсы дискового массива подключаются к обеим половинкам SAN.
Все предлагаемые решения обладают высокой степенью масштабирования, что позволяет сначала использовать небольшую и относительно дешевую систему хранения данных и по мере своего развития модернизировать ее в систему хранения данных корпоративного уровня, отвечающую заданным требованиям по надежности хранения и доступности информации.
Структура системы хранения данных имеет несколько уровней.
1. Система хранения данных начального уровня (рис. 1.18).
Строится на основе дисковых массивов с аппаратной реализацией RAID и интерфейсами FC, которые обладают возможностью непосредственного подключения нескольких серверов, а максимальный объем хранимой информации может достигать нескольких терабайт. Для обеспечения резервного копирования информации в рамках предлагаемого решения используются ленточные библиотеки с интерфейсом FC, что позволяет вынести их за пределы вычислительного центра и тем самым обеспечить сохранность данных и возможность их восстановления в случае локальных катастроф, например пожара. Для обеспечения высокого уровня надежности хранения данных у выбираемых моделей дисковых массивов дублированы все основные элементы конструкции.
Рис. 1.18. Система хранения данных начального уровня
Данное решение может быть модернизировано в систему хранения данных среднего уровня.
2. Система хранения данных среднего уровня (рис. 1.19).
Данное решение строится на основе 8- или 16-портовых коммутаторов начального уровня. Они обеспечивают возможность более гибкого распределения дисковых ресурсов между серверами, а также позволяют применять современные технологии резервного копирования данных.
При реализации решения для хранения наиболее важных данных могут использоваться модели дисковых массивов, у которых отсутствует единая точка отказа, что исключает возможность потери доступности данных в случае выхода из строя оборудования.
Рис. 1.19. Система хранения данных среднего уровня
3. Корпоративная система хранения данных (рис. 1.20).
Основная задача, решаемая при построении системы такого уровня, – обеспечение высокой степени доступности данных и защищенности их как от локальных катастроф, так и от глобальных (в пределах страны) технологических катаклизмов.
Первая проблема может быть решена благодаря возможности технологии FC работать на больших расстояниях, что позволяет создать два разнесенных в пространстве вычислительных центра и зеркалировать или синхронно реплицировать наиболее важные данные между ними, защита которых от глобальных катастроф обеспечивается с помощью асинхронного удаленного зеркалирования (remote mirroring) данных через Интернет на дисковые массивы с последующим перенесением информации на ленты. Корпоративная система хранения данных обладает едиными средствами мониторинга и управления.
Рис. 1.20. Система хранения данных корпоративного уровня
1.7 Правовые аспекты информационных технологий
1.7.1 Информация, информационные процессы
и системы как объект правового регулирования
общественных отношений
Информация, т. е. сведения о чем-либо или извещения о событиях и фактах, издревле циркулировала в обществе, являясь одним из средств общения, овладения знаниями, образования, воспитания, сопровождения движения товаров и услуг, свидетельствования о заключенных сделках, разрешения споров, подтверждения событий и фактов. Развитие средств вычислительной техники и связи создало новые возможности для обособления и овеществления информации, включения ее в оборот и распространения на нее статуса товара. Повсеместное внедрение информационных сетей привело к формированию глобального межгосударственного информационного виртуального пространства. Эти реалии настоятельно требуют четкого правового регулирования общественных отношений в информационной сфере, т. е. становления правового фундамента информационного общества. При этом необходимо четко понимать, что такое информационное право, кто его субъекты, каков предмет, принципы и методы регулирования, источники и другие составные части, традиционно характеризующие отрасль права.
Термин "информационное право" все чаще используется специалистами. Существует несколько трактовок данного понятия. Согласно одной из них под содержанием понятия "информационное право" подразумеваются информационные отношения как предмет правового регулирования, субъекты информационных отношений, правовой режим получения, передачи, хранения и использования информации, юридические режимы информации разного содержания, пользования банками и базами данных, информационные правоотношения, ответственность. С другой точки зрения этот термин трактуется как система охраняемых государством социальных норм и отношений, возникающих в информационной сфере – сфере производства, преобразования и потребления информации. Так же информационное право можно определить как совокупность юридических норм и институтов, регулирующих информационные отношения в информационной сфере. Строение информационного права, особенности субъектов-участников обращения информации, принципы и методы регулирования, структура и состав определяются, в первую очередь, особенностями и юридическими свойствами информации – основного объекта этого права.
К основным субъектам информационного права относятся лица, участвующие в создании, преобразовании, передаче, распространении, получении и потреблении информации: создатели (производители), обладатели (информаторы) и потребители. Создатели (производители) – это лица, в результате интеллектуальной деятельности которых появляется информация: авторы, создающие творческую продукцию, и лица (в том числе органы государственной власти, местного самоуправления, юридические лица), не претендующие на авторство по поводу созданной ими информации. Существуют и другие виды информации, не являющиеся результатом творчества, например, обязательно предоставляемая, отчетная информация, персональные данные. Ряд производителей не претендует на защиту своих личных неимущественных прав на созданную информацию, однако заинтересованы в признании этой информации своей собственной. К ним можно отнести производителей открытых справочных информационно-поисковых систем, баз и банков данных и т. п. Обладатели (информаторы) – это посредники между создателями и потребителями информации; лица, приобретающие исключительное право на передачу и распространение информации и обеспечивающие доведение созданной информации до конечного потребителя. Потребители – это лица, нуждающиеся в информации, производящие поиск и получающие ее для удовлетворения своих потребностей (повышения знаний, образования, принятия решений и т. п.). К субъектам информационного права относятся также лица, которые участвуют в создании и применении средств и механизмов программно-технического обеспечения информационных процессов – информационных систем, сетей, информационных технологий и средств их обеспечения (информационных, лингвистических, технических, программных и др.).
Основные объекты правового регулирования – это информационные отношения, возникающие при осуществлении информационных процессов создания, сбора, обработки, накопления, хранения, поиска, распространения и потребления информации.
Информация – объект многофункциональный, она создается, обращается и применяется во всех сферах деятельности и обеспечивает выполнение многочисленных функций и задач, стоящих перед самыми разными субъектами – органами государственной власти, местного самоуправления, физическими и юридическими лицами. При обращении информации в государстве и обществе она может выступать:
как товар при ее создании, хранении, использовании, пере-даче и распространении;
средство, с помощью которого осуществляются правовые координация и управление поведением субъектов (через официальные документы и судебные решения);
источник для принятия решений;
источник получения знаний в процессе образования и воспитания при осуществлении конституционного права на образование;
средство извещения общества о происходящих событиях и явлениях (через СМИ) при осуществлении конституционного права на информацию;
средство отчетности о деятельности юридических и физических лиц (налоговая, бухгалтерская, статистическая отчетности);
средство реализации прав и свобод личности через предоставление сведений о личности разным структурам (право на жизнь, жилище, медицинское обслуживание, образование; воспитание, труд и т. п.).
Следует обратить внимание на то, что информация одновременно может выступать как источник, несущий определенную функциональную нагрузку, так и товар. Например, нормативные правовые акты, выполняя основную функцию – распространение правовых норм и доведения их до каждого, одновременно выступают и в качестве товара при продаже информационных продуктов и в предоставлении информационных услуг, построенных на их основе.
В отличие от известных, традиционных для права объектов, таких как вещи, информация обладает рядом специфических особенностей и юридических свойств, которые во многом определяют отношения, возникающие при ее обращении между субъектами, и характер их поведения.
Информация при включении в оборот обособляется от ее создателя или обладателя, овеществляется в виде символов или знаков и вследствие этого существует отдельно и независимо от создателя или обладателя. Отсюда возникает юридическое свойство информации – возможность выступать в качестве объекта, передаваемого от одного субъекта к другому и требующего юридического закрепления факта ее принадлежности субъектам, участвующим в таком ее обращении.
После передачи информации (сведений или данных) от одного субъекта к другому одна и та же информация одновременно остается у передающего и появляется у принимающего субъекта, т. е. одна и та же информация одновременно принадлежит двум участникам информационных отношений. Это основное отличие информации от вещи. Юридическое свойство информации в связи с этим есть ее физическая неотчуждаемость от создателя, обладателя и потребителя. Оно требует разработки и применения к информации при ее обращении особых правовых механизмов, заменяющих механизм отчуждения вещи. Это можно сделать, например, устанавливая в договоре правила использования информации после ее передачи как субъектом, ее передавшим, так и субъектом, ее получившим.
Информация при включении в оборот документируется и отображается на материальном носителе. Существуют две группы носителей: жесткие, к ним информация привязана жестко в виде набора букв, символов, знаков и т. п. (бумага, микроносители, нестирающиеся лазерные диски и др.), и виртуальные носители, к которым информацию нельзя привязать жестко, по ним она как бы "скользит" (дискеты с перезаписью, кассеты магнитных лент, ЭВМ и т. п.). Юридическое свойство, вытекающее из этой особенности, заключается в двуединстве информации и материального носителя, на котором эта информация закрепляется. Оно дает возможность ввести для документированной информации понятие "информационная вещь", состоящая из носителя информации и самой информации, отображенной на носителе.
Информация представляется в определенных организационных формах: отдельные данные (сведения), документ, массив (база) данных (документов), библиотека, фонд документов, архив и т. п. Юридическое свойство – возможность относить к информационным вещам как отдельные исходные документы, так и сложные организационные структуры, содержащие информацию (информационные системы, банки данных, информационные сети, библиотеки, архивы), и включать такие вещи в состав имущества. Основной предмет правового регулирования информационного права – информационные отношения.
Основополагающими общественными отношениями информационного права являются отношения, возникающие по поводу признания информации своей, своей собственной, или так называемые отношения информационной собственности. Информационный собственник обладает следующими информационными правомочиями:
знать содержание информации (сведения или данные, содержащиеся в ней);
применять в личной деятельности сведения, данные, содержащиеся в информации;
передавать или распространять информацию с целью доведения ее до потребителя.
Механизм защиты таких прав собственности аналогичен механизму осуществления исключительных прав автора на результат творчества, действующему в законодательстве об авторском праве и смежных правах. Однако понятие "информационная собственность" шире понятия "интеллектуальная собственность на результаты творчества". Оно распространяется на результат практически любой интеллектуальной деятельности, в процессе которой появляется любая открытая информация, представляющая интерес для ее создателя и далеко не всегда являющаяся результатом творчества.
Существуют разновидности информационных собственников (владельцев): собственник-создатель; собственник-обладатель; собственник-потребитель.
В собственности собственника-создателя информационной вещи находится оригинал (подлинник) документа, на котором отображена созданная им в процессе его интеллектуальной деятельности информация. Такой собственник имеет обычные права собствен-ности на эту вещь, т. е. может владеть, пользоваться, распоряжаться ею. Однако в рамках своих информационных правомочий он обладает также исключительными правами в отношении информации, отображенной в этой информационной вещи.
Собственник-обладатель информационной вещи (посредник между создателем и потребителем информации) реализует правомочия собственника с учетом приобретенных им у создателя информационной вещи информационных правомочий. В соответствии с ними он получает в собственность оригинал (подлинник) или копию информационной вещи от собственника-создателя с правом включения информации, отображенной в ней, в оборот, в том числе и с целью извлечения прибыли (аналогия авторскому договору).
Собственник-потребитель информационной вещи приобретает (получает) в собственность копии информационных вещей (например, экземпляры тиража издания). При этом в соответствии с информационными правомочиями потребителя информации он может использовать информацию, содержащуюся в этой информационной вещи, только в личных целях, но не имеет права копировать, тиражировать и распространять копии этой информационной вещи в коммерческих целях, хотя может распорядиться (передать, продать) принадлежащей ему конкретной копией информационной вещи.
1.7.1.1 Принципы информационного права
Под принципами информационного права понимают основные исходные положения, юридически закрепляющие объективные закономерности общественной жизни, проявляющиеся в информационной сфере. Они формируются на основе указанных выше особенностей и юридических свойств информации, а также многофункциональности информации как объекта права. В Концепции правового регулирования применения информационных и коммуникационных технологий (ИКТ) в Российской Федерации приведена система принципов, включающая в себя принципы регулирования ИКТ-сектора в целом и принципы регулирования отдельных отраслей, входящих в ИКТ-сектор.
Общие принципы регулирования:
Принцип адекватности мер государственного регулирования. Государство должно принимать только те регулятивные меры, которые необходимы для разрешения сложившихся в секторе ИКТ проблем и создания механизма реализации прав и законных интересов участников ИКТ-сектора.
Принцип устранения избыточных административных барьеров. Меры прямого государственного регулирования могут вводиться только в целях защиты важнейших интересов общества и государства, жизни, здоровья и имущества граждан. Приоритет отдается мерам текущего контроля за деятельностью участников рынка перед мерами, ограничивающими доступ на рынок новых участников.
Принцип приоритетного использования методов государственного регулирования в секторе ИКТ. Правовые нормы, устанавливающие правила поведения участников ИКТ-сектора, могут применяться только для защиты важнейших прав и законных интересов личности, общества и государства. Приоритет отдается методам регулирования, допускающим свободный выбор участниками форм и способов реализации своих прав и обязанностей и осуществление таких прав и обязанностей собственными инициативными действиями участников ИКТ-сектора.
Принцип гарантированности прав граждан и юридических лиц. Государственное регулирование отношений в секторе ИКТ основывается на системе организационно-правовых и материальных гарантий, создающих механизм реализации установленных в законе прав граждан и юридических лиц. Государственные органы и должностные лица должны нести ответственность в случае непринятия установленных в законодательстве мер, направленных на реализацию прав граждан и юридических лиц.
Принцип совместимости с мировым информационным пространством. Развитие нормативного регулирования применения ИКТ-технологий направлено на интеграцию с международным информационным пространством, приведение российского сектора ИКТ в соответствие со сложившимися в зарубежной практике подходами.
Государственное регулирование информационного взаимодействия должно основываться на следующих отраслевых принципах:
Принцип реальной доступности информации. Основной гарантией соблюдения информационных прав граждан и организаций является законодательно установленная презумпция открытости информации, содержащейся в государственных информационных ресурсах. Однако информация, которая в соответствии с законодательством является открытой, должна быть фактически доступна.
Принцип сокращения количества транзакций. Структура информационных ресурсов и информационных процессов с государственными органами должна выстраиваться таким образом, чтобы минимизировать число транзакций, необходимых для реализации тех или иных информационных прав.
Принцип консолидации государственных информационных ресурсов. Государственные информационные ресурсы, как предназначенные для публичного доступа, так и создаваемые для собственных нужд отдельных органов, должны быть, с учетом режимов хранения информации и категории доступа, непосредственно доступны для всех государственных органов. Государственный орган, которому для принятия решений требуется определенная информация (в настоящее время она обычно требуется от заявителя), должен иметь доступ к этой информации, в т. ч. к информации, содержащейся в информационных ресурсах других ведомств или территориальных отделений.
Принцип единообразия форм представления информации и стандартов ведения государственных информационных ресурсов. Принципы сокращения количества транзакций и гарантии открытости информации предполагают возможность легкого доступа к информации и простоты обмена информацией между различными информационными ресурсами. Это возможно только при условии строгой унификации государственных информационных ресурсов и стандартов вносимой в них информации.
Принцип обеспечения сохранности и достоверности информации. Нормативные акты должны предусматривать порядок информационного взаимодействия, однозначно устанавливающий непротиворечивые и недискриминационные процедуры восстановления информации в случае утраты ее в одном из ресурсов, преодоления искажений информации, устранения коллизий между ресурсами.
Принцип равноправия форм документов. Документ, представленный в электронной форме, не может быть лишен юридической силы только на том основании, что он составлен в электронной форме. Каждый документ, предусмотренный любым нормативным актом, должен сохранять юридическую силу при переводе из одной формы представления в другую.
1.7.1.2 Методы информационного права
Под методом правового регулирования понимают способы воздействия отрасли информационного права на информационные отношения. Многофункциональность информации приводит к необходимости применять в информационном праве различные методы правового регулирования информационных отношений в зависимости от вида информации и ее назначения в информационных процессах.
При изложении содержания информационно-правовых норм, обеспечивающих регулирование информационных отношений, связанных с созданием такой информации, как нормативные правовые акты, персональные данные, статистическая информация, государственные информационные ресурсы, обязательно представляемая информация, применяются методы конституционного и административного права: при создании информации, представляющей результат творчества, коммерческую тайну, открытую информацию – методы гражданского права.
При регулировании отношений, возникающих при передаче и распространении информации, применяются методы административного и конституционного законодательства, гражданского права, а также новые методы регулирования отношений информационной собственности, основанные на принципах такой собственности, еще только подлежащих разработке в рамках информационного права.
При регулировании отношений, возникающих в процессе применения информации, должны использоваться методы гражданского права и новые методы информационного права; при регулировании отношений по поводу ответственности за допущенные правонарушения в информационной сфере – методы законодательства об административных нарушениях уголовного права.
Таким образом, информационное право является комплексной отраслью, базирующейся, как на двух китах, на публичном и частном праве, и использует при решении задач правового регулирования отношений в информационной сфере практически весь основной арсенал механизмов публичного и частного права.
1.7.2 Информационное законодательство
в сфере информационных технологий
Российское информационное законодательство, формировавшееся во время наиболее динамичного развития информационных технологий, характеризовалось постоянным отставанием от современного уровня ИКТ. Изменения законодательства характеризовались отсутствием каких-либо программных документов, устанавливающих приблизительные правила использования ИКТ.
Одним из наиболее нежелательных следствий отсутствия системного подхода к регулированию сектора ИКТ является снижение конкурентоспособности отечественного сектора ИКТ по отношению к странам с рыночной экономикой. Эта проблема, носящая структурный характер, вызвана рядом проблем:
отсутствием четких гарантий прав граждан, вызванным системными препятствиями, возникающими на пути к их осуществлению;
отсутствием гарантий для предпринимателей, неоправданными барьерами выхода на рынок, вызванными часто нехваткой информации о требованиях законодательства к осуществлению той или иной деятельности;
коррупцией среди чиновников госаппарата, основанной прежде всего на возможности принятия решений с высокой степенью произвольности;
отсутствием эффективных процедур ответственности госслужащих и государственных органов за нарушения своих обязанностей, в том числе и нарушения в области информационного взаимодействия, низким уровнем успешно осуществленных преследований за такие нарушения и высокой латентностью таких нарушений.
Система правового регулирования ИКТ-сектора должна учитывать особенности предметной области регулирования и строиться в соответствии с принципами, устанавливаемыми концепцией.
Таким образом, правовое регулирование применения информационных и коммуникационных технологий в соответствии с Концепцией правового регулирования применения информационных и коммуникационных технологий в Российской Федерации направлено на достижение следующих целей:
обеспечение прав граждан и организаций на доступ к информации из государственных информационных ресурсов;
снижение количества барьеров и ограничений, основанных на несовершенстве системы информационного взаимодействия, в реализации законных прав гражданами и организациями;
снижение расходов государственного бюджета на содержание органов государственной власти без снижения эффективности осуществления органами государственной власти возложенных на них функций;
развитие областей российской экономики, непосредственно связанных с разработкой, применением и активным использованием информационных и коммуникационных технологий.
Необходимо так же определиться с тем, что именно может (или должно) включать в себя понятие "законодательство об информационных технологиях" ("информационное законодательство"). Наиболее очевидный ответ на этот вопрос связан с расширительным толкованием, при котором в сферу регулирования "информационного законодательства" подпадают все, сколько-нибудь имеющие отношение к понятию "информация", правовые институты.
В этом случае под "использованием информационных технологий" следовало бы понимать (в терминах действующего российского законодательства) любые "информационные процессы": сбор, накопление, потребление, хранение и преобразование информации как сведений о фактах, событиях и явлениях окружающего мира. При этом в сферу "информационного права" подпадают, в частности, вопросы:
определения правового статуса информации как объекта гражданских прав;
создания и производства, реализации и приобретения, потребления и использования средств обработки (хранения) информации ("информационных систем", "информационных технологий");
реализации конституционных прав, связанных с информацией (включая вопросы "информационной открытости" органов государственной власти, вопросы свободы слова, тайны переписки и др.), соотношения реализации данных прав с ограничениями, связанными с государственной, коммерческой и служебной тайной, а также информацией персонального характера (с ограниченным доступом), с защитой прав и законных интересов различных субъектов на ограничение доступа к информации;
юридического статуса информации в электронном виде (передача информации в виде сообщений, распространение открытой, в том числе массовой, информации, записи в информационных ресурсах, документы в электронной форме) – проблема соотношения оригинала и копии документа, представления доказательств, а также обеспечения доказательств при совершении процессуальных действий;
охраны результатов интеллектуальной деятельности ("интеллектуальной собственности", "исключительных прав"), зафиксированных в электронной форме;
информационной безопасности ("защиты информации"), включая применение специальных технологических средств и организационных механизмов такой защиты;
выявления, пресечения и расследования антиобщественных деяний (правонарушений и преступлений) в информационной сфере;
правового регулирования телекоммуникационного сектора, составляющего инфраструктурную основу и оказывающего прямое воздействие на развитие информационных и коммуникационных технологий (вопросы обеспечения конкуренции, оптимальных форм государственного регулирования, универсального обслуживания);
применения информационных технологий в качестве средств доказывания и доказательств в процессуальных действиях.
При таком понимании вопросы " информационного законодательства" неизбежно будут "пересекаться" с нормативными актами, традиционно относимыми к иным отраслям права (конституционному, гражданскому, уголовному, административному, о средствах массовой информации и т. п.).
Базовые законы об информации находятся в ведении Минсвязи, вопросы гостайны – Гостехкомиссии и ФСБ; коммерческой тайны – Минпромнауки; служебной тайны и доступа к правительственной информации – Минэкономразвития; охраны интеллектуальной собственности – Роспатента и Минпромнауки; массовой информации (причем не только деятельности средств массовой информации) – Минпечати; распространения информационных сообщений рекламного характера – Министерства по антимонопольной политике и т. п.
Такое распределение нормативных актов (групп актов), "закрепленных" за определенным ведомством федерального уровня, значительно усложняет выработку основанного на едином концептуальном подходе нормативного правового регулирования.
Современный этап развития российского законодательства в области ИКТ характеризуется значительным числом и большим разнообразием источников правовых норм. Только на уровне федеральных законов насчитывается несколько десятков нормативных актов, относящихся как к специфическим вопросам регулирования ("профильное законодательство"), так и к регулированию более общего характера, затрагивающего также и вопросы ИКТ.
Так, к законодательству общего характера, закрепляющему информационные права и свободы, устанавливающему основные права и обязанности соответствующих субъектов по поводу создания и распространения информации определенного вида, а также устанавливающему ограничения в обращении информации в государстве и обществе, относят следующие нормативные акты:
Конституция РФ (1993 г.) закрепляет права на неприкосновенность частной жизни, личной и семейной тайны, тайну переписки, права на информацию ("свободно искать, получать, передавать, производить и распространять информацию любым законным способом"), свободу мысли и слова, массовой информации и запрет цензуры, свободу творчества, охрану интеллектуальной собственности;
Закон РФ "О государственной тайне" (1993 г.);
Закон РФ " О средствах массовой информации" (1991 г.), регулирующий вопросы деятельности средств массовой информации и специфики "массовой" информации;
Закон РФ "О правовой охране программ для ЭВМ и баз данных" (1992 г.);
Закон РФ "О правовой охране топологий микросхем" (1992 г.);
Патентный закон РФ (1992 г.);
Закон РФ "Об авторском праве и смежных правах" (1993 г.);
Федеральный закон "Об информации, информатизации и защите информации" (1995 г.);
Федеральный закон "Об участии в международном информационном обмене" (1995 г.);
Федеральный закон "Об электронной цифровой подписи" (2002 г.);
Федеральный закон "О связи" (1995 г., в редакции 2003 г.);
Федеральный закон "О рекламе" (1995 г.);
Федеральный закон "О лицензировании отдельных видов деятельности" (2001 г.).
Законодательства, акты которых целиком посвящены вопросам информационного права, подразделяются:
на законодательство об интеллектуальной собственности, включающее законодательство об авторском праве и смежных правах, патентное законодательство, законодательство о "ноу-хау";
законодательство о средствах массовой информации и о масс-медиа;
законодательство о формировании информационных ресурсов, информационных продуктов, предоставлении информационных услуг, подразделяющееся, в свою очередь, на законодательства правовой информации, персональных данных, библиотечном деле, об архивах, статистической информации, международном обмене информацией;
законодательство о реализации права на поиск, получение, передачу и потребление информации;
законодательство о создании и применении информационных систем, их сетей, иных информационных технологий и средств их обеспечения;
законодательство об информационной безопасности.
Перечисленные акты являются примерами соответствующих групп и не являются исчерпывающим списком.
Гражданский, Налоговый, Таможенный, Уголовный кодексы, Кодекс законов о труде также содержат нормы, относящиеся к регулированию ИКТ.
Следует также упомянуть многочисленные подзаконные акты (указы Президента Российской Федерации, постановления Правительства Российской Федерации, нормативные документы федеральных органов исполнительной власти), принятые в развитие перечисленных федеральных законов (например, регулирующие вопросы использования средств защиты информации, порядок и условия лицензирования соответствующей деятельности, экспорта программного обеспечения и т. д.); законодательные акты по профильным вопросам, принятые в субъектах Российской Федерации (например, закон правительства города Москвы "Об информационных ресурсах и информатизации города Москвы", принятый в 2001 г.).
В настоящее время на разных стадиях рассмотрения в федеральных органах государственной власти и Федеральном собрании находится ряд проектов и федеральных законов, относящихся к правоотношениям в сфере ИКТ ("Об электронной торговле", "Об информации персонального характера (персональных данных)", "О служебной тайне", "Об обеспечении прав граждан на информацию о деятельности органов государственной власти", Федеральный закон "О коммерческой тайне" и др.).
Классификация нормативных актов:
законодательство общего характера, регламентирующее наиболее фундаментальные принципы регулирования общественных отношений, связанных с использованием информации и ИКТ;
законодательство, регламентирующее использование общедоступной информации ("открытого доступа");
законодательство, регламентирующее использование конфиденциальной информации ("ограниченного доступа");
законодательство, регламентирующее различные прикладные аспекты использования информации и ИКТ;
законодательство, относящееся к охране интеллектуальной собственности.
Так, к первому классу могут быть отнесены соответствующие разделы Конституции Российской Федерации и Гражданского кодекса, а также "базовый" Федеральный закон "Об информации, информатизации и защите информации".
Второй класс в российских условиях будут составлять нормы, относящиеся к массовой информации, Закона "О СМИ", а также (после его приятия) законопроект "Об обеспечении прав граждан на информацию о деятельности органов государственной власти".
Третий класс включает Закон "О государственной тайне", а также законопроекты "О коммерческой тайне", "О служебной тайне" и "О персональных данных".
Четвертый класс представлен Федеральными законами "Об ЭЦП", "О связи", законопроектом "Об электронной торговле" и т. п.
В пятом классе сосредоточены все российские законы, связанные с охраной результатов творческой деятельности.
При более глубоком рассмотрении указанных законодательных актов выявляется ряд недостатков, свидетельствующих о неадекватности нынешнего состояния правового регулирования в информационной сфере складывающимся в ней общественным отношениям:
неопределенность правового статуса информации, вовлеченной в общественные отношения (гражданский оборот);
неопределенность правовой специфики правоотношений, возникающих в связи с использованием российскими гражданами, организациями и государственными органами глобальной информационной сети Internet (имущественные права на размещаемые в сети информационные объекты, совершение сделок "в электронной форме", идентификация участников сетевых правоотношений, проблемы трансграничной юрисдикции, распространение информации антиобщественного характера, включая несанкционированные рассылки "спам", предупреждение и пресечение правонарушений);
неоднозначность представления в налоговом и бухгалтерском законодательстве информационных (нематериальных) объектов, приобретаемых и реализуемых налогоплательщиками. К этому примыкает и юридически некорректное закрепление имущественных прав государства на информационные объекты (ресурсы), создаваемые на бюджетные средства (т. е. содержательную информацию, имеющую в том числе и коммерческую ценность);
терминологическая неоднозначность и концептуальное разнообразие подходов к регулированию информации ограниченного доступа (конфиденциальной информации в целом, государственной, служебной, коммерческой тайны, семейной и личной тайны, персональных данных и т. п.);
межотраслевые "коллизии" правовых норм, относящихся к использованию ИКТ, но содержащихся в "непрофильных" правовых актах (Налоговом кодексе, Законе "О СМИ" и др.).
Сложившаяся ситуация с неэффективностью федерального законодательства в области использования информационных технологий заставляет исправлять наиболее очевидные его недостатки либо на уровне уточняющих (разъясняющих) подзаконных актов, либо на уровне законов субъектов Российской Федерации.
1.8 Основы защиты информации
1.8.1 Основные понятия, актуальность и основные проблемы защиты информации современных информационных систем
С развитием компьютерных технологий организации переходят на автоматизированные системы сбора, обработки, передачи и хранения информации, а также системы управления организацией. В результате увеличивается объем циркулирующей информации. Однако вероятность того, что данные могут быть уничтожены, скопированы или незаметно изменены, постоянно возрастает. В современном постиндустриальном обществе информация является не только результатом деятельности и необходимым ее обеспечением, но и капиталом, имеющим материальный эквивалент. Здесь выигрывает тот, кто вовремя и правильно успел получить информацию и воспользоваться ею. Успех деятельности организации зависит от соблюдения конфиденциальности или правильной подачи информации, именно поэтому вопросы информационной безопасности становятся как никогда актуальными.
Безопасность – это состояние защищенности (отсутствие опасности) жизненно важных интересов личности, общества, государства от внешних и внутренних угроз.
Информационная безопасность (ИБ) – защищенность информации и поддерживающей инфраструктуры от случайных или преднамеренных воздействий естественного или искусственного характера, наносящих ущерб владельцам или пользователям информации и поддерживающей инфраструктуре.
В Положении о государственном лицензировании в области защиты информации, утвержденном решением Государственной технической комиссии при Президенте Российской Федерации и Федерального агентства правительственной связи и информации при Президенте Российской Федерации от 27 апреля 1994 года № 10 даны следующие определения:
"Защита информации - это комплекс мероприятий, проводимых с целью предотвращения: утечки, хищения, утраты, несанкционированного уничтожения, искажения, модификации (подделки), несанкционированного копирования, блокирования информации."
"Безопасность информации - это состояние информации, информационных ресурсов и информационных систем, при котором с требуемой вероятностью обеспечивается защита информации (данных) от: утечки, хищения, утраты, несанкционированного уничтожения, искажения, модификации (подделки), копирования, блокировки и т. п."
Для качественного и постоянного обеспечения ИБ в организациях и на предприятиях создаются системы информационной безопасности (СИБ), которые должны охватывать весь жизненный цикл информационной системы (ИС) организации, т. е. развиваться, изменяться, приспосабливаться к новым условиям вместе с ИС организации. Поддержание актуальности СИБ и адекватности ее окружающим условиям требует постоянных усилий со стороны администраторов безопасности организации, внимания к новинкам в области информационной защиты и нападения.
Система информационной безопасности – это функционирующая как единое целое совокупность подразделений, средств, мероприятий и методов, используемых этими подразделениями в своей деятельности, направленная на ликвидацию внутренних и внешних угроз интересам субъекта безопасности, создание, поддержание и развитие состояния защищенности его информационной среды.
Современное понятие защиты информации находится в центре внимания исследователей уже несколько десятков лет и ассоциируется, как правило, с проблемами защиты информации в автоматизированных системах обработки данных (АСОД).
Защита информации в АСОД - это использование в них средств и методов, принятие мер и осуществление мероприятий с целью обеспечения требуемой защищенности информации.
Однако информатизация социально-экономических и политических процессов общества и развитие ИС требуют рассмотрения понятия и сущности защиты информации с позиций более полного множества классов и подклассов ИС:
класса систем информационного ресурса;
систем информационно-аналитического ресурса;
информационно-телекоммуникационных систем ;
подкласса интегрированных государственных систем конфиденциальной связи страны;
систем связи специального назначения и др.
Таким образом, можно говорить о необходимости и, более того, обязательности комплексного подхода к проблеме защиты информации предприятия или организации.
1.8.2 Классификация угроз современным системам
обработки информации
Широкое использование для обработки информации защищенных технических средств (аппаратуры засекречивания, средств активной и пассивной некриптографической защиты и др.) существенно снижает возможности технической разведки по добыванию информации. Однако существующие способы ведения технической разведки (ТР) позволяют добывать информацию на основе использования непреднамеренного (побочного) излучения и наводок электронных, электрических, электромеханических средств обработки информации, а также акустических, виброакустических и других полей, возникающих при функционировании технических средств обработки, хранении, передаче информации техническими средствами обработки информации (ТСОИ) и ведущихся в служебных помещениях разговорах.
Современные средства позволяют ТР по этим слабым излучениям и физическим полям обнаруживать, классифицировать тщательно замаскированную боевую технику, военные объекты, органы управления, центры обработки информации и другие объекты, а также перехватывать содержание обрабатываемой в них конфиденциальной информации.
Вышеперечисленные особенности информационных технологий по мере своего проявления обусловливают уязвимость информации: подверженностью ее физическому искажению или уничтожению; возможностью несанкционированной (случайной или злоумышленной) модификации; опасностью несанкционированного (случайного или преднамеренного) получения информации лицами, для которых она не предназначалась.
Кроме этого, информационным технологиям присуща подверженность различным видам воздействий, снижающих информационную безопасность. Их принято называть угрозами безопасности информации и информационной безопасности. Вполне очевидно, что понятия таких угроз формируются исходя из соответствующих понятий безопасности, при этом наиболее общие понятия безопасности и угроз сформулированы в Законе РФ "О безопасности".
Угроза безопасности - совокупность условий, факторов, создающих опасность жизненно важным интересам личности, общества и государства.
Угроза информационной безопасности - реальные или потенциально возможные действия или условия, приводящие к овладению, хищению, искажению, изменению, уничтожению информации, обрабатываемой ИТКС, и сведений о самой системе, а также к прямым материальным убыткам (рис. 1.21, 1.22).
Рис.1.21. Виды угроз безопасности
Таким образом, независимо от вида объекта безопасности угроза безопасности представляет собой совокупность факторов, явлений, условий и действий, создающих опасность для нормального функционирования объектов, реализующих определенные цели и задачи.
Угрозы безопасности информации в современных системах ее обработки обусловлены случайными и преднамеренными разрушающими и искажающими воздействиями внешней среды, надежностью функционирования средств обработки информации, а также преднамеренными корыстными воздействиями несанкционированных пользователей, целью которых является хищение, разглашение, уничтожение, разрушение, несанкционированная модификация и использование обрабатываемой информации.
Рис. 1.22. Классификация угроз информации
В настоящее время принята следующая классификация угроз сохранности (целостности) информации (рис. 1.23).
Основные проявления рассмотренных угроз заключаются в незаконном: владении конфиденциальной информацией, копировании, модификации, уничтожении в интересах злоумышленников, с целью нанесения ущерба как материального, так и морального, непреднамеренных действиях обслуживающего персонала и пользователей.
Основными путями реализации угроз информационным ресурсам безопасности информации являются:
агентурные источники в органах управления и защиты информации;
вербовка должностных лиц органов управления, организаций, предприятий и т. д.;
перехват и несанкционированный доступ к информации, циркулирующей в ТСОИ, с использованием технических средств разведки;
использование преднамеренного программно-технического воздействия на ТСОИ;
Рис. 1.23. Классификация угроз информации
подслушивание конфиденциальных переговоров в служебных помещениях, транспорте и других местах их ведения.
Факторами, обусловливающими информационные потери и различные виды ущерба, являются:
несчастные случаи, вызывающие выход из строя оборудования и информационных ресурсов (пожары, взрывы, аварии, удары, столкновения, падения, воздействия химических и физических сред);
поломки элементов средств обработки информации;
последствия природных явлений (наводнения, бури, молнии, землетрясения и др.);
кража, преднамеренная порча материальных средств;
аварии и выход из строя аппаратуры, программного обеспечения, баз данных;
ошибки накопления, хранения, передачи, использования информации;
восприятие, чтение, интерпретация содержания информации;
неумение, оплошности;
наличие помех, сбои и искажения отдельных элементов и знаков или сообщений;
нарушение защиты;
переполнение файлов;
ошибки при подготовке и вводе информации;
ошибки операционной системы, программирования;
аппаратные ошибки;
концептуальные ошибки внедрения;
злонамеренные действия в материальной сфере: болтливость, разглашение информации;
убытки социального характера (уход, увольнение, забастовка и др.).
С учетом применения в ИТКС микропроцессорной техники особенно опасными считаются ошибки в программах пользователей, которые могут привести к следующим последствиям:
записи в массивы данных искаженной информации вследствие неправильного управления вводом данных;
ошибочной печати выходных документов при неправильном управлении выводом;
сбою программ.
1.8.3 Классификация способов и средств защиты
информации
В настоящее время существует ряд подходов к определению, выбору и классификации средств защиты информации.
Существующие в современных системах обработки информации различные средства ее защиты при определенных условиях обеспечивают требуемый уровень защищенности информации. Их выбор осуществляется в соответствии с принятым или заданным способом защиты, гарантирующим максимальное противодействие дестабилизирующим факторам или порождающим их причинам. Целью такого противодействия должно быть исключение или существенное затруднение получения несанкционированными лицами содержания информации, а также повышение или сохранение прежних значений показателей качества информации. Классификация способов и средств защиты информации, соответствующая основным определениям, приведена на рисунке 1.24.
Защита информации организуется следующими способами:
Препятствие - создание на пути возникновения или распространения дестабилизирующего фактора определенного барьера, не позволяющего соответствующему фактору принять опасные размеры. Например, блокировки, исключающие возможность выхода за опасные границы характеристик технических устройств или программ; создание физических препятствий на пути злоумышленников и т. п.
Управление - определение и выработка на каждом шаге функционирования системы обработки информации управляющих воздействий на элементы системы, обеспечивающих решение одной или нескольких задач защиты информации.
Маскировка - преобразование информации, включающее или существенно затрудняющее доступ к ней злоумышленников.
Регламентация - разработка и реализация в процессе функционирования системы обработки информации комплексов мероприятий, создающих условия обработки информации, существенно затрудняющие появление и воздействие дестабилизирующих факторов.
Рис. 1.24. Классификация способов и средств защиты информации
Принуждение - соблюдение пользователями и обслуживающим персоналом правил и условий обработки информации под угрозой материальной, административной или уголовной ответственности.
Побуждение - способ защиты информации, при котором пользователи и обслуживающий персонал систем обработки информации побуждаются (материально, морально, этически, психологи-чески) к соблюдению всех правил ее обработки.
Реализация рассмотренных способов обеспечения защиты информации осуществляется применением различных средств: формальных и неформальных.
Формальные средства делятся на технические (физические и аппаратные), программные, программно-аппаратные, криптографические, неформальные - на организационные, законодательные и морально-этические.
Технические (инженерно-технические) средства защиты используют технические устройства, узлы, блоки, элементы, системы как в виде отдельных средств, так и встроенных в процессе единого технологического цикла создания средств обработки информации.
Физические средства - механические, электрические, электромеханические, электронные, электронно-механические и тому подобные устройства и системы, которые функционируют автономно, создавая различного рода препятствия на пути дестабилизирующих факторов.
Аппаратные средства - различные электронные и электронно-механические и тому подобные устройства, схемно-встраиваемые в аппаратуру системы обработки данных или сопрягаемые с ней специально для решения задач защиты информации.
Программные средства - специальные пакеты или отдельные программы, включаемые в состав программного обеспечения систем обработки данных с целью решения задач защиты информации.
Программно-аппаратная защита - использование программного обеспечения ЭВТ, комплексов и систем, а также аппаратных устройств, схемно-встроенных в состав технических средств, и систем обработки информации.
Средства криптографической защиты информации (шифровальные) - устройства, средства, системы и комплексы, обеспечивающие защиту содержания информации на основе способов ее криптографических преобразований.
Неформальные средства:
Организационные средства - комплекс мер, основанных на организации и обеспечении органами управления организационных, организационно-технических мероприятий, специально предусмотренных в технологии функционирования информационно-телеком-муникационных систем с целью решения задач защиты информации в соответствии с системой требований нормативных правовых актов по защите информации.
Законодательные средства - нормативные правовые акты, регламентирующие права и обязанности лиц подразделений и органов, имеющих отношение к функционированию системы защиты информации, а также устанавливающие ответственность за нарушение правил обработки и защиты конфиденциальной информации.
Морально-этические средства - сложившиеся в обществе или данном коллективе моральные нормы или этические правила, соблюдение которых способствует защите информации, а нарушение приравнивается к несоблюдению правил поведения в обществе или коллективе. Морально-этические нормы формируются в процессе жизнедеятельности общества и, как правило, не имеют юридической силы, но их нарушение ведет к потере авторитета, возникновению дополнительных трудностей и другим негативным последствиям для человека и организации.
Психологические виды защиты - допускаемые нормами права и морали методы и средства изучения психофизиологических особенностей и возможностей человека, а также психологического воздействия на него с целью оценки соответствия требованиям на допуск к обработке защищаемой информации.
Лекция 2. АРХИТЕКТУРА ЭВМ
2.1 Арифметические и логические основы ЭВМ
2.1.1 Представление данных в ЭВМ
Для оценки количества информации и упорядочения процесса ее обработки используются структурные единицы информации.
За единицу информации принимается один бит.
Бит определяет количество информации, посредством которой выделяется одно из двух альтернативных состояний. В одном бите с помощью цифр 0 и 1 может быть представлен один двоичный разряд числа или одна логическая переменная, принимающая соответственно значения "ложь" или "истина".
Последовательность битов, имеющая определенный смысл, называется полем.
Поле длиной 8 бит называется байтом.
Байт, как правило, является минимальной (неделимой) единицей информации, с которой оперирует ЭВМ. Все остальные единицы информации являются его производными (рис. 2.1).
Рис. 2.1. Структурные единицы информации
Основной структурной единицей информации, обрабатываемой ЭВМ, является машинное слово.
В современных ЭВМ длина машинного слова обычно составляет два байта. Как правило, в одном машинном слове может быть представлено либо одно число, либо одна команда. Для обеспечения требуемой точности вычислений и экономии памяти большинство ЭВМ могут оперировать также с двойным словом.
Последовательность полей, байтов или слов, имеющих одинаковый смысл, образуют массив.
Группа массивов может объединяться в сегмент. Количество информации в больших массивах оценивается с помощью производных единиц, кратных количеству байтов в степени числа два (1кбайт = 1024 байт = 210байт; 1Мбайт = 1 048 576 байт = 220байт).
Вычислительная машина оперирует с двумя видами информации: управляющей информацией и числовыми данными.
Для представления числовых данных в ЭВМ используются естественная и нормальная формы записи чисел.
В вычислительной технике принято отделять целую часть от дробной точкой. Так как в этом случае положение точки между целой и дробной частями четко определено, то такое представление чисел называют представлением с фиксированной точкой (рис. 2.2).
Рис. 2.2. Представление чисел с фиксированной точкой
Недостатком представления чисел с фиксированной точкой является их малый диапазон. Поэтому, как правило, в такой форме записывают только целые числа. В этом случае отпадает необходимость отводить поле для дробной части числа.
Максимальным по абсолютному значению целым числом, представляемым в естественной форме, будет число, определяемое по формуле (2m – 1) (рис. 2.3).
Нормальная форма записи числа имеет вид N = m Ч q p, где m - мантисса числа (m<1); p - порядок; q - основание системы счисления.
Порядок указывает местоположение в числе точки, отделяющей целую часть числа от дробной.
Рис. 2.3. Представление целых чисел
Такая форма представления чисел называется формой с плавающей точкой. В этом случае машинное слово делится на два основных поля. В одном поле записывается мантисса числа, во втором указывается порядок числа с учетом знака порядка (характеристика числа). Один разряд отводится для представления знака числа. Распределение разрядов в четырехбайтовом слове для случая с плавающей точкой приведено на рисунке 2.4.
Диапазон представления чисел с плавающей точкой значительно больше диапазона представления чисел с фиксированной точкой. Однако быстродействие ЭВМ при обработке чисел с плавающей точкой гораздо ниже, чем при обработке чисел с фиксированной точкой. Это объясняется тем, что при работе с плавающей точкой для каждой операции необходимо время на определение местоположения точки.
Рис. 2.4. Представление чисел с плавающей точкой
В современных ЭВМ используются обе формы представления чисел.
2.1.1.1 Представление команд в ЭВМ
Программа работы машины, определяющая процесс обработки информации в ЭВМ, состоит из последовательности команд.
Под командой ЭВМ понимается информация, обеспечивающая выработку управляющих сигналов для выполнения машиной определенного действия.
Поле команды состоит из двух частей: операционной и адресной. В операционной части указывается код операции (КОП), определяющий действие (арифметическое или логическое), которое должна выполнить машина. Адресная часть команды содержит адреса операндов (величин), участвующих в операции. Под адре-сом "А" понимается номер (цифровой код) машинного слова (или другого поля памяти ЭВМ), где записана необходимая для выполнения команды информация. Количество указываемых в команде адресов может быть различным. Соответственно числу адресов определяются следующие форматы команд: одноадресные, двухадресные, трехадресные и четырехадресные (рис. 2.5).
Рис. 2.5. Форматы команд ЭВМ
Трехадресная команда, выполняющая, например, операцию сложения, должна содержать код операции сложения и три адреса. Действия, выполняемые такой командой, определяются примерно следующей последовательностью:
1) взять число, хранящееся по первому адресу;
2) взять число, хранящееся по второму адресу, и сложить его с первым числом;
3) результат сложения записать по третьему адресу.
В случае двухадресной команды третий адрес отсутствует, и результат можно записать либо по второму адресу (с потерей информации, которая была там записана), либо оставить в сумматоре, где производилась операция сложения. Тогда для освобождения сумматора требуется дополнительная команда перезаписи числа по требуемому адресу. При сложении двух чисел, хранящихся по адресам A1 и A2, с записью результата, например, в A1 с использованием двухадресной команды, требуется уже четыре команды:
1) вызов в сумматор числа, хранящегося по адресу A1;
2) вызов числа, хранящегося по адресу A2, и сложение его с первым числом;
3) стереть число по адресу A1;
4) запись результата по адресу A1.
Таким образом, чем меньше адресность команд ЭВМ, тем большее число команд требуется для составления одной и той же программы работы машины.
Увеличивая адресность ЭВМ, приходиться увеличивать длину машинного слова, чтобы отвести в нем необходимые поля для адресной части команд. С увеличением объема памяти ЭВМ увеличивается длина поля, необходимого для одного адреса. В то же время не все команды полностью используют адресные поля. Например, для команды записи числа по заданному адресу требуется только одно адресное поле.
2.1.2 Системы счисления
Способ представления чисел посредством числовых знаков (цифр) называется системой счисления. Правила записи и действий над числами в системах счисления, используемых в цифровой вычислительной технике, определяют арифметические основы цифровых ЭВМ.
Компоненты системы счисления:
1. Основание системы счисления - количество различных цифр (символов), используемых для представления числа.
2. Алфавит системы счисления - символы и цифры, используемые для написания всех разрядов числа.
3. Правила записи и чтения чисел.
Различают два основных вида систем счисления: непозиционные и позиционные.
Непозиционные системы счисления.
Непозиционные системы счисления характеризуются тем, что значение числа, выражаемое совокупностью цифр, определяется только конфигурацией цифровых символов и не зависит от места их положения. Классическим примером непозиционной системы является римская система счисления. Например: ХIX; XXIII.
Позиционные системы счисления.
Наибольшее распространение получили позиционные системы счисления, в которых значение любой цифры определяется не только конфигурацией ее символа, но и местоположением (позицией), которое она занимает в числе.
Среди позиционных систем различают однородные и смешанные (неоднородные) системы счисления.
В однородных системах количество допустимых цифр для всех позиций (разрядов) числа одинаково. Однородной позиционной системой является общепринятая десятичная система счисления (q = 10), использующая для записи чисел десять цифр от 0 до 9.
Примером смешанной системы счисления может служить система отсчета времени, где в разрядах секунд и минут используется по 60 градаций, а в разрядах часов - 24 градации и т. д.
Любое число A, записанное в однородной позиционной системе, может быть представлено в виде суммы степенного ряда:
(2.1.)
где q - основание системы счисления; ai - цифры системы счисления с основанием q; i - номер (вес) позиции (разряда) числа.
Может быть реализовано бесконечное множество различных систем счисления. В цифровых вычислительных машинах в основном используются однородные позиционные системы. Кроме десятичной системы счисления в ЭВМ находят широкое применение системы с основанием q, являющиеся степенью числа 2, а именно: двоичная, восьмеричная, шестнадцатеричная системы счисления.
При совместном использовании различных систем счисления после записи числа может указываться основание системы, например: 347,4210; 11012; 2358 и т. д.
2.1.2.1 Десятичная система счисления
В соответствии с формулой (2.1) позиция цифры в числе определяет степень числа с основанием 10, на которое эта цифра умножается.
Например: число 534,79 можно представить как
.
В одном разряде может быть представлено десять чисел от 0 до 9. Прибавление единицы к старшей цифре разряда (цифре 9) означает перенос единицы в старший разряд, т. е. для записи числа 10 и больших чисел требуется два и более разрядов. Число N = m Ч q p, где m - мантисса числа (m < 1); p - порядок; q - основание системы счисления, представляется в виде единицы в старшем разряде с последующими p нулями. Например, N = 104 = 10 000.
Это правило распространяется на все однородные позиционные системы счисления.
2.1.2.2 Двоичная система счисления
Основание системы q = 2. Для записи чисел используются две цифры: 0 и 1. Старший цифрой разряд является 1, поэтому в двоичной системе 1 + 1 = 10, так как прибавление единицы к старшей цифре данного разряда дает перенос единицы в старший разряд.
Каждое последующее число больше данного на единицу, получается в результате прибавления единицы в младший разряд с соблюдением правил сложения в двоичной системе счисления (табл. 2.1, 2.2).
Анализируя данные в таблице 2.1 следует отметить, что разряды в двоичной системе заполняются очень быстро. В силу этого для записи числа в двоичной системе счисления требуется значительно больше разрядов, чем в десятеричной. Число 2 и большие числа в двоичной систем счисления записываются в двух и более разрядах. Согласно ранее рассмотренному правилу число 2 = 21 записывается как 10, число 4 = 22 - как 100 и т. д.
Таблица 2.1
Числа | Числа | ||||||
деся-тичные | двоичные | восьмеричные | шестнадца-теричные | десятичные | двоич-ные | восьмеричные | шестнадца-теричные |
0 1 2 3 4 5 6 7 8 |
0 1 10 11 100 101 110 111 1000 |
0 1 2 3 4 5 6 7 10 |
0 1 2 3 4 5 6 7 8 |
9 10 11 12 13 14 15 16 17 |
1001 1010 1011 1100 1101 1110 1111 10000 10001 |
11 12 13 14 15 16 17 20 21 |
9 A B C D E F 10 11 |
Двоичная система счисления является основной системой представления информации в современных ЭВМ. Почти все вычислительные машины используют либо непосредственно двоичную систему счисления, либо двоичное кодирование какой-либо другой системы счисления, например, десятичной (двоично-десятичный код). Это объясняется тем, что элементы вычислительной машины, средства хранения информации, различающие два устойчивых состояния (0 и 1), наиболее просты в реализации и надежны в работе. Немаловажное значение имеет также простота реализации правил двоичной арифметики в ЭВМ (табл. 2.2).
Таблица 2.2
Сложение | Вычитание | Умножение | |||||
0 0 1 1 |
0 1 0 1 |
0 1 1 10 |
0 1 1 10 |
0 0 1 1 |
0 1 0 1 |
0 Ч 0 0 Ч 1 1 Ч 0 1 Ч 1 |
0 0 0 1 |
При выполнении арифметических действий в двоичной системе счисления следует помнить, что единица является старшей значащей цифрой двоичного разряда.
Пример.
Выполняя в заданном разряде вычитание из нуля единицы, следует занять единицу из старшего значащего разряда. В результате в младшем разряде образуются две единицы. Операция умножения сводится к многократному сложению и сдвигу. При выполнении деления используются правила умножения и вычитания.
Восьмеричная система счисления
Основание системы q = 8. Для записи чисел используется восемь цифр от 0 до 7. В силу того что основание восьмеричной системы является третьей степенью числа 2, то для представления одного восьмеричного разряда требуется три значащих двоичных разряда (триада). Таким образом, для записи чисел в восьмеричной системе счисления требуется в 3 раза меньше разрядов, чем в двоичной системе (табл. 2.1).
Восьмеричная система счисления играет в ЭВМ вспомогательную роль и используется для компактной записи двоичных кодов чисел машинных команд ЭВМ в различных периферийных устройствах и устройствах подготовки данных. Перевод чисел из двоичной системы счисления в восьмеричную и наоборот осуществляется по триадам согласно второму столбцу таблицы 2.1 (первые восемь строк, неполные триады дополняются слева незначащими нулями). Разбиение двоичного числа на триады осуществляется влево и вправо от запятой, отделяющей целую часть числа от дробной. Если крайние триады получаются неполными, то они дополняются нулями.
Пример.
Шестнадцатеричная система счисления
Основание системы q = 24 = 16. Для записи чисел исполь-зуются шестнадцать цифр, из них первые десять - известные цифры от 0 до 9. В качестве дополненных цифр используются заглавные латинские буквы A, B, C, D, E и F (табл. 2.1).
Назначение шестнадцатеричной системы счисления аналогично восьмеричной: компактная запись двоичных кодов чисел и команд. Одному шестнадцатеричному разряду числа соответствует четыре двоичных разряда (тетрада), т. е. шестнадцатеричная система позволяет сократить длину записи числа по сравнению с двоичной в 4 раза.
Перевод чисел из двоичной системы в шестнадцатеричную систему и обратно осуществляется по тетрадам аналогично двоично-восьмеричному переводу (табл.2.1). Неполные тетрады дополняются нулями.
Пример.
Элементы математической логики
Для описания логики функционирования аппаратных и программных средств ЭВМ используется алгебра логики, или булева алгебра (по имени ее создателя Дж. Буля).
Булева алгебра оперирует с логическими переменными, которые могут принимать только два значения: истина или ложь, обозначаемые соответственно 1 и 0. Как отмечалось выше, основной системой счисления в ЭВМ является двоичная система, в которой также используются цифры 1 и 0. Таким образом, одни и те же устройства ЭВМ могут применяться для обработки и хранения как числовой информации, представленной в двоичной системе счисления, так и логических переменных. Это обусловливает сравнительную простоту схемной реализации процесса обработки информации в ЭВМ.
Совокупность значений логических переменных x1, x2, ..., xn называется набором переменных.
Набор логических переменных удобно изображать в виде n-разрядного двоичного числа, каждый разряд которого равен значению одной из переменных. Из таблицы 2.1 видно, что количество возможных наборов в n двоичных разрядах равно 2n.
Логической функцией от набора логических переменных (аргументов) f(x1, x2 ..., xn) называется функция, принимающая только два значения: истина или ложь.
Область определения логической функции конечна и зависит от числа возможных наборов аргументов. Любая логическая функция может быть задана с помощью таблицы истинности, где в левой части записываются возможные наборы аргументов, а в правой - соответствующие им функции.
В случае большого числа аргументов табличный способ задания логической функции становится громоздким и теряет наглядность. Так, уже для шести логических аргументов понадобится таблица в 64 строки, поэтому логические функции удобно выражать через другие более простые логические функции одной или двух переменных, описываемые с помощью простых таблиц.
Совокупности таких элементарных логических функций (или логических операций), с помощью которых можно выразить логическую функцию любой сложности, называются функционально полными системами логических функций.
В этой системе определены три элементарные логические операции: инверсия (отрицание), конъюнкция (логическое умножение) и дизъюнкция (логическое сложение).
Логические переменные, объединенные знаками логических операций, составляют логические выражения.
При вычислении значения логического выражения определено следующее старшинство выполнения логических операций: сначала выполняется инверсия, затем конъюнкция и в последнюю очередь - дизъюнкция.
Для изменения указанного порядка используются скобки.
В алгебре логики выполняются следующие основные законы, позволяющие производить тождественные преобразования логи-ческих выражений.
1. Коммутативный закон: x1 V x2 = x2 V x1,
x1 Ч x2 = x2 Ч x1.
2. Ассоциативный закон: x1 V (x2 V x3) = (x1 V x2) V x3,
x1 Ч (x2 Ч x3) = (x1 Ч x2) Ч x3.
3. Дистрибутивный закон: x1 Ч (x2 V x3) = x1 Ч x2 V x1 Ч x3.
4. Правила де Моргана (теорема двойственности).
5. Правила операций с константами 0 и 1.
6. Правила операций с переменной и ее инверсией.
7. Закон поглощения.
8. Закон идемпотентности.
9. Закон двойного отрицания.
Методы перевода чисел из одной системы счисления
в другую
Метод прямого замещения
Перевод чисел из двоичной системы счисления в систему с основанием, являющимся степенью числа 2, и наоборот не вызывает трудностей. Это в частности стало причиной широкого применения в ЭВМ восьмеричной и шестнадцатеричной систем счисления. Однако может возникнуть задача перевода чисел из одной системы счисления в другую с произвольными основаниями. В этом случае необходимо воспользоваться общими правилами перевода, которые основаны на определении однородной позиционной системы счисления (2.1).
Число в системе счисления с основанием q1 расписывается по формуле (2.1) и вычисляется сумма ряда, при этом арифметические действия выполняются по правилам системы счисления с основа-нием q2.
Следуя этому правилу, легко перевести числа из двоичной и восьмеричной систем счисления в десятичную.
Пример.
Можно также в отличие от ранее рассмотренного метода перевести числа из двоичной системы в восьмеричную, но для этого необходимо вычислять сумму ряда (2.1) по правилам восьмеричной арифметики. При переводе больших двоичных чисел в десятичные для его упрощения, целесообразно сначала перевести их по триадам в восьмеричные, а затем из восьмеричных в десятичные.
Пример.
Метод деления
Если q1 > q2, используются два правила: для целых и дробных чисел.
Если переводятся целые числа, то необходимо последовательно делить число в системе q1 на основание системы q2 до тех пор, пока не останется остаток, меньший или равный q2-1. число в основании q2 записывается как последовательность остатков от деления, записанных в обратном порядке, начиная с последнего.
Пример.
Для перевода больших десятичных чисел в двоичную систему счисления рекомендуется перевести их в восьмеричные, а затем расписать по триадам.
Метод умножения
Пример.
При переводе дробных чисел необходимо последовательно умножать число в системе q1 на основание системы q2, отделяя после каждого умножения целую часть произведения. Число в системе q2 (после точки) записывается как последовательность полученных целых частей произведения. Умножение производится до тех пор, пока дробная часть произведения не станет равной нулю или определенной степени точности.
При переводе смешанных чисел отдельно переводятся целая и дробная части, записываемые затем совместно.
Структурная схема ПЭВМ
Состав и технические характеристики ПЭВМ
2.2.1.1 Понятие архитектуры
Архитектура компьютера обычно определяется совокупностью ее свойств, существенных для пользователя. Основное внимание при этом уделяется структуре и функциональным возможностям машины, которые можно разделить на основные и дополнительные (рис. 2.6).
Основные функции определяют назначение ЭВМ: обработка и хранение информации, обмен информацией с внешними объектами.
Дополнительные функции повышают эффективность выполнения основных функций: обеспечивают эффективные режимы ее работы, диалог с пользователем, высокую надежность и др.
Названные функции ЭВМ реализуются с помощью ее компонентов: аппаратных и программных средств.
Функциональные возможности ЭВМ:
1) ввод программы и данных с клавиатуры, НГМД, НЖМД;
2) вывод программ и данных на экран видеомонитора, НГМД, НЖМД, принтер;
3) арифметическая и логическая обработка информации;
4) корректировка данных, редактирование программ;
5) хранение программ и промежуточных данных.
В состав типовой ЭВМ входят:
центральный процессор;
внутренняя память со своим интерфейсом;
устройства ввода-вывода со своим интерфейсом, включающие устройства внешней памяти (НГМД, НЖМД), клавиатура, модуль отображения информации, принтер;
интерфейс – совокупность средств сопряжения и связи устройств компьютера, обеспечивающая их эффективное взаимо-действие.
Рис. 2.6. Архитектура ЭВМ
Структура компьютера
Структура компьютера - это некоторая модель, устанавливающая состав, порядок и принципы взаимодействия входящих в нее компонентов (рис. 2.7).
Персональный компьютер (ПК) - это настольная или переносная ЭВМ, удовлетворяющая требованиям общедоступности и универсальности применения.
Рис. 2.7. Структурная схема персонального компьютера
Достоинствами ПК являются:
малая стоимость, находящаяся в пределах доступности для индивидуального покупателя;
автономность эксплуатации без специальных требований к условиям окружающей среды;
гибкость архитектуры, обеспечивающая адаптивность к разнообразным применениям в сфере управления, науке, образовании, быту;
"дружественность" операционной системы и прочего программного обеспечения, обусловливающая возможность работы с ней пользователя без специальной, профессиональной подготовки;
высокая надежность работы.
Состав и назначение основных блоков и узлов ПЭВМ
Назначение основных устройств ЭВМ
Микропроцессор - это центральный блок ЭВМ, предназначенный для управления работой всех блоков машины и для выполнения арифметических и логических операций над информацией.
В состав микропроцессора входят:
устройство управления (УУ), формирующее и подающее во все блоки машины в нужные моменты определенные сигналы управления (управляющие импульсы), обусловленные спецификой выполняемой операции и результатами предыдущей операции. МП формирует адреса ячеек памяти операндов, используемых выполняемой операцией, и передает эти адреса в соответствующие блоки ЭВМ;
арифметико-логическое устройство (АЛУ) предназначено для выполнения всех арифметических и логических операций над числовой и символьной информацией;
микропроцессорная память (МПП) служит для кратковременного хранения, записи и выдачи информации, непосредственно используемой в вычислениях в ближайшие такты работы машины;
интерфейсная система микропроцессора реализует сопряжение и связь с другими устройствами ПК. Включает в себя внутренний интерфейс МП, буферные запоминающие регистры, схемы управления портами ввода-вывода (ПВВ) и системную шину.
2. Генератор тактовых импульсов генерирует последовательность электрических импульсов, их частота определяет тактовую частоту машины.
Промежуток времени между соседними импульсами определяет время одного такта работы машины или просто такт работы машины.
Частота генератора тактовых импульсов является одной из основных характеристик персонального компьютера и во многом определяет скорость его работы.
3. Основная память (ОП) предназначена для хранения и оперативного обмена информацией с прочими блоками машины.
ОП содержит два вида запоминающих устройств: постоянное запоминающие устройство (ПЗУ) и оперативное запоминающее устройство (ОЗУ).
ПЗУ служит для хранения неизменяемой (постоянной) программы и справочной информации, что позволяет оперативно только считывать хранящуюся в нем информацию (изменить информацию в ПЗУ нельзя). ПЗУ является энергонезависимым.
ОЗУ предназначено для оперативной записи, хранения и считывания информации (программ и данных), непосредственно участвующей в информационно-вычислительном процессе, выполняемом ПК в текущий период времени.
Главными достоинствами оперативной памяти являются ее высокое быстродействие и возможность обращения к каждой ячейке памяти отдельно (прямой адресный доступ к ячейке).
В качестве недостатка ОЗУ следует отметить невозможность сохранения информации в ней после выключения питания машины, т. е. энергозависимость.
4. Внешняя память относится к внешним устройствам ПК и используется для долговременного хранения любой информации, которая может когда-либо потребоваться для решения задач.
Во внешней памяти хранится все программное обеспечение компьютера. Она содержит разнообразные виды запоминающих устройств. Наиболее распространенными, имеющимися практически в любом компьютере, являются накопители на жестких (НЖМД) и гибких (НГМД) магнитных дисках.
В качестве устройства внешней памяти используются также запоминающие устройства: на кассетной магнитной ленте (стримеры), накопители на оптических дисках (CD-ROM - Compact Disk Read Only Memory - компакт-диск с памятью, только читаемой) и др.
5. Источник питания - это блок, содержащий системы автономного и сетевого энергопитания ПК.
6. Таймер - внутримашинные электронные часы, обеспечивающие при необходимости автоматический съем текущего момента времени (год, месяц, часы, минуты, секунды и доли секунд). Таймер подключается к автономному источнику питания - аккумулятору и при отключении машины от сети продолжает работать.
7. Внешние устройства (ВУ) - важнейшая составная часть любого вычислительного комплекса. Достаточно сказать, что стоимость ВУ иногда составляет 50-80 % стоимости всего ПК. От состава и характеристик ВУ во многом зависят возможность и эффективность применения ПК в системах управления и народном хозяйстве в целом.
ВУ ПК обеспечивают взаимодействие машины с окружающей средой: пользователями, объектами управления и другими ЭВМ. ВУ весьма разнообразны и могут быть классифицированы по ряду признаков.
По назначению ВУ можно разделить:
- на внешние запоминающие устройства (ВЗУ), или внешнюю память ПК;
- диалоговые средства пользователя;
- устройства ввода информации;
- устройства вывода информации;
- средства связи и телекоммуникации;
- средства мультимедиа.
Внешние запоминающие устройства были рассмотрены ранее.
Диалоговые средства пользователя включают в свой состав видеомониторы (дисплеи), реже пультовые пишущие машинки (принтеры с клавиатурой) и устройства речевого ввода-вывода информации.
К устройствам ввода информации относятся:
- клавиатура - устройство для ручного ввода числовой, текстовой и управляющей информации в ПК;
- графические планшеты (диджитайзеры) - для ручного ввода графической информации путем перемещения по планшету специального указателя (пера);
- сканеры (читающие автоматы) - для автоматического считывания с бумажных носителей информации и ввода в ПК машинописных текстов, графиков, рисунков, чертежей;
- манипуляторы (устройства указания): джойстик, мышь, трекбол (шар в оправе), световое перо и др. - для ввода графической информации на экран дисплея путем управления движением курсора по экрану с последующим кодированием координат курсора и вводом их в ПК;
- сенсорные экраны - для ввода отдельных элементов изображения, программ или команд с полиэкрана дисплея в ПК.
К устройствам вывода информации относятся:
- принтеры - печатающие устройства для переноса информации на бумажный носитель информации;
- графопостроители (плоттеры) - для вывода графической информации (графиков, чертежей, рисунков) из ПК на бумажный носитель;
Устройства связи и телекоммуникации используются для связи с приборами, другими средствами автоматизации и для подключения ПК к каналам связи.
Средства мультимедиа - это комплекс аппаратных и программных средств, позволяющих человеку общаться с компьютером, используя самые разные, естественные для себя среды: звук, видео, графику, тексты, анимацию и др.
К средствам мультимедиа относятся устройства речевого ввода и вывода информации, высококачественные видео- и звуковые платы, платы видеозахвата (videograbber), снимающие изображение с видеомагнитофона или видеокамеры и вводящие его в ПК; высококачественные акустические и видеовоспроизводящие системы с усилителями, звуковыми колонками, большими видеоэкранами. С большим основанием к средствам мультимедиа относят внешние запоминающие устройства большой емкости на оптических дисках, часто используемые для записи звуковой и видеоинформации.
Дополнительные схемы.
К системной шине и к МП ПК наряду с типовыми внешними устройствами могут быть подключены и некоторые дополнительные платы с интегральными микросхемами, расширяющие и улучшающие функциональные возможности микропроцессора: математический сопроцессор, контроллер прямого доступа к памяти, сопроцессор ввода-вывода, контроллер прерываний и др.
Математический сопроцессор широко используется для ускоренного выполнения операций над двоичными числами с плавающей точкой, двоично-кодированными десятичными числами для вычисления некоторых трансцендентных функций.
Математический сопроцессор имеет свою систему команд и работает параллельно с основным МП, но под управлением последнего. Ускорение операций происходит в десятки раз. Последние модели МП, начиная с МП 80486 DX, включают сопроцессор в свою структуру.
Контроллер прямого доступа к памяти освобождает МП от прямого управления накопителями на магнитных дисках, что существенно повышает эффективное быстродействие ПК. Без контроллера обмен данными между ВЗУ и ОЗУ осуществляется через регистр МП, а при его наличии данные непосредственно передаются между ВЗУ и ОЗУ, минуя МП.
Сопроцессор ввода-вывода за счет параллельной работы с МП значительно ускоряет выполнение процедур ввода-вывода при обслуживании нескольких внешних устройств (дисплея, принтера, НЖМД, НГМД и др.), освобождает МП от обработки процедур ввода-вывода, в том числе реализует режим прямого доступа к памяти.
Контроллер прерываний.
Прерывание - это временный останов выполнения одной программы в целях оперативного выполнения другой, в данный момент более важной (приоритетной), программы.
В ЭВМ используются три вида прерываний: аппаратные, пользовательские, программные.
Прерывания возникают при работе компьютера постоянно. Все процедуры ввода-вывода информации выполняются по прерываниям. Например: прерывания от таймера возникают и обслуживаются контроллером прерываний 18 раз в секунду.
Контроллер прерываний обслуживает процедуры прерывания, принимает запрос на прерывание от внешних устройств, определяет уровень приоритета этого запроса и выдает сигнал прерывания в МП. Получив этот сигнал, МП приостанавливает выполнение текущей программы и переходит к выполнению специальной программы обслуживания того прерывания, которое запросило внешнее устройство. После завершения программы обслуживания восстанавливается выполнение прерванной программы. Контроллер прерываний является программируемым.
Системная шина - это основная интерфейсная система компьютера, обеспечивающая сопряжение и связи всех его устройств между собой. Она включает в себя (рис. 2.8):
Рис. 2.8. Структура системной шины
кодовую шину данных (КШД), содержащую провода и схемы сопряжения для параллельной передачи всех разделов числового кода (машинного слова) операнда;
Системная шина обеспечивает три направления передачи информации:
1) между микропроцессором и основной памятью;
2) микропроцессором и портами ввода-вывода внешних устройств;
3) основной памятью и портами ввода-вывода внешних устройств (в режиме прямого доступа к памяти).
Все блоки (их порты ввода-вывода) через соответствующие унифицированные разъемы (стыки) подключаются к шине единообразно: непосредственно или через контроллеры (адаптеры).
Управление системной шиной осуществляется микропроцессором либо непосредственно, либо, что чаще, через дополнительную микросхему – контроллер шины, формирующий основные сигналы управления. Обмен информацией между внешними устройствами и системной шиной выполняется с использованием ASCII-кодов.
Конструктивно ПК выполнены в виде центрального системного блока, к которому через разъемы подключаются внешние устройства: дополнительные устройства памяти, клавиатура, дисплей, принтер и др.
Системный блок обычно включает в себя системную плату, блок питания, накопители на дисках, разъемы для дополнительных устройств и платы расширения с контроллерами – адаптерами внешних устройств.
На системной плате (часто ее называют материнской платой – Mouther Board) размещаются: микропроцессор, математический сопроцессор, генератор тактовых импульсов, блоки (микросхемы) ОЗУ и ПЗУ, адаптеры клавиатуры, НЖМД и НГМД, контроллер прерываний, таймер и др.
2.2.3 Внутримашинный системный интерфейс
Внутримашинный системный интерфейс – система связи и сопряжения узлов и блоков ЭВМ между собой – представляет собой совокупность электрических линий связи (проводов), схем сопряжения с компонентами компьютера, протоколов (алгоритмов) передачи и преобразования сигналов. Существуют два варианта организации внутримашинного интерфейса.
1. Многосвязный интерфейс: каждый блок ПК связан с прочими блоками своими локальными проводами. Он применяется только в простейших бытовых ПК.
2. Односвязный интерфейс: все блоки ПК связаны друг с другом через общую или системную шину.
В подавляющем большинстве современных ПК в качестве системного интерфейса используется системная шина. Ее важнейшими функциональными характеристиками являются: количество обслуживаемых устройств и пропускная способность, т. е. максимально возможная скорость передачи информации. Пропускная способность шины зависит от разрядности (8-, 16-, 32- и 64-разрядные) и тактовой частоты, на которой она работает. В качестве системной шины в разных ПК используются:
шины расширений, или шины общего назначения, позволяющие подключать большое число самых разнообразных устройств;
локальные шины, специализирующиеся на обслуживании небольшого количества устройств определенного класса.
Сравнительные технические характеристики некоторых шин приведены в таблице 2.3.
Таблица 2.3 Основные характеристики шин
Параметр | ISA | EISA | MCA | VLB | PCI |
Разрядность шины, бит | |||||
данных | 16 | 32 | 32; 64 | 32; 64 | 32; 64 |
адреса | 24 | 32 | 32 | 32 | 32 |
Рабочая частота, МГц | 8 | 833 | 1020 | до 33 | до 33 |
Пропускная способность, Мбайт/с | |||||
теоретическая | 4 | 33 | 76 | 132 | 132; 264 |
практическая | 2 | 8 | 20 | 80 | 50; 100 |
Число подключаемых устройств, шт. | 6 | 15 | 15 | 4 | 10 |
Шины расширений
Шина Multibus имеет две модификации: PC/XT bus (Personal Computer eXtended Technology – ПК с расширенной технологией) и PC/AT bus (PC Advanced Technology – ПК с усовершенствованной технологией).
Шина PC/XT bus – 8-разрядная шина данных и 20-разрядная шина адреса, рассчитанная на тактовую частоту 4,77 МГц; имеет 4 линии для аппаратных прерываний и 4 канала для прямого доступа в память (DMA – Direct Memory Access). Шина адреса ограничивает адресное пространство микропроцессора величиной 1 Мбайт; используется с МП 8086,8088.
Шина PC/AT bus – 16-разрядная шина данных и 24-разрядная шина адреса, рабочая тактовая частота до 8 МГц, но может использоваться и МП с тактовой частотой 16 МГц, так как контроллер шины может делить частоту пополам; имеет 7 линий для аппаратных прерываний и 4 канала DMA; используется с МП 80286.
Шина ISA (Industry Standard Architecture – архитектура промышленного стандарта) – 16-разрядная шина данных и 24-разрядная шина адреса, рабочая тактовая частота 8 МГц, но может использоваться и МП с тактовой частотой 50 МГц (коэффициент деления увеличен); по сравнению с шинами PC/XT и PC/AT увеличено количество линий аппаратных прерываний с 7 до 15 и каналов прямого доступа к памяти DMA с 7 до 11. Благодаря 24-разрядной шине адресное пространство увеличилось с 1 до 16 Мбайт. Теоретическая пропускная способность шины данных равна 16 Мбайт/с, но реально она ниже (около 4–5 Мбайт/с) ввиду ряда особенностей ее использования. С появлением 32-разрядных высокоскоростных МП шина ISA стала существенным препятствием увеличения быстро-действия ПК.
Шина EISA (Extended ISA) – 32-разрядная шина данных и 32-разрядная шина адреса, создана в 1989 г. Адресное пространство шины 4 Гбайт, пропускная способность 33 Мбайт/с, причем скорость обмена по каналу микропроцессорной КЭШ-памяти определяется параметрами микросхем памяти, увеличено число разъемов расширений (теоретически может подключаться до 15 устройств, практически – до 10); улучшена система прерываний, шина EISA обеспечивает автоматическое конфигурирование системы и управление DMA; полностью совместима с шиной ISA (есть разъем для подключения ISA), поддерживает многопроцессорную архитектуру вычислительных систем; весьма дорогая и применяется в скоростных ПК, сетевых серверах и рабочих станциях.
Шина МСА (Micro Channel Architecture) – 32-разрядная шина, созданная фирмой IBM в 1987 г. для машин PS/2, пропускная способность 76 Мбайт/с, рабочая частота 10–20 МГц, по своим прочим характеристикам близка к шине EISA, но не совместима ни с ISA, ни с EISA. Поскольку ЭВМ PS/2 не получили широкого распространения из-за отсутствия наработанного обилия прикладных программ, шина МСА также используется не очень широко.
Локальные шины
Современные вычислительные системы характеризуются:
стремительным ростом быстродействия микропроцессоров (например, МП Pentium может выдавать данные со скоростью 528 Мбайт/с по 64-разрядной шине данных) и некоторых внешних устройств (так, для отображения цифрового полноэкранного видео с высоким качеством необходима пропускная способность 22 Мбайт/с);
появлением программ, требующих выполнения большого количества интерфейсных операций (например, программы обработки графики в Windows, работа в среде Multimedia).
Пропускной способности шин расширения ПК, обслуживающих одновременно несколько устройств, оказалось недостаточно для комфортной работы пользователей, так как компьютеры стали подолгу "задумываться".
Разработчики интерфейсов пошли по пути создания локальных шин, подключаемых непосредственно к шине МП, работающих на тактовой частоте МП (но не на внутренней рабочей его частоте) и обеспечивающих связь с некоторыми скоростными внешними по отношению к МП устройствами, основной и внешней памятью, видеосистемами и др.
В настоящее время существуют два основных стандарта универсальных локальных шин: VLB и РСI.
Шина VLB (VESA Local Bus – локальная шина VESA) разработана в 1992 г. Ассоциацией стандартов видеооборудования (VESA – Video Electronics Standards Association), поэтому часто ее называют шиной VESA.
Шина VLB по существу является расширением внутренней шины МП для связи с видеоадаптером и реже с винчестером, платами Multimedia, сетевым адаптером. Разрядность шины 32 бит, на подходе 64-разрядный вариант шины. Скорость передачи данных по VLB 80 Мбайт/с (теоретически достижимая скорость 132 Мбайт/с).
Недостатки шины:
рассчитана на работу с МП 80386, 80486, пока не адаптирована для процессоров Pentium, Pentium Pro, Power PC;
жесткая зависимость от тактовой частоты МП (каждая шина VLB рассчитана только на конкретную частоту);
малое количество подключаемых устройств (к шине VLB могут подключаться только четыре устройства);
отсутствует арбитраж шины (могут быть конфликты между подключаемыми устройствами).
Шина РСI (Peripheral Component Interconnect – соединение внешних устройств) разработана в 1993 г. фирмой Intel.
Шина РСI является намного более универсальной, чем шина VLB, имеет свой адаптер, позволяющий ей настраиваться на работу с любым МП (80486, Pentium, Pentium Pro, Power PC и др.); она позволяет подключать 10 устройств самой разной конфигурации с возможностью автоконфигурирования, имеет свой арбитраж, средства управления передачей данных. Разрядность РСI 32 бита с возможностью расширения до 64 бит, теоретическая пропускная способность 132 Мбайт/с, а в 64-битовом варианте – 263 Мбайт/с (реальная – вдвое ниже).
Шина РСI, хотя и является локальной, выполняет многие функции шины расширения, в частности, шин расширения ISA, EISA, МСА (она совместима с ними) при наличии шины РСI подключаются не непосредственно к МП (как это имеет место при использовании шины VLB), а к самой шине РСI (через интерфейс расширения).
Конфигурация систем с шиной РСI показана на рисунке 2.9. Следует иметь в виду, что использование в ПК шин VLB и РСI возможно только при наличии соответствующей VLB- или PCI-материнской платы. Выпускаются материнские платы с мульти-шинной структурой, позволяющей использовать ISA/EISA, VLB и РС1, так называемые материнские платы, с шиной VIP (по начальным буквам VLB, ISA и РС1).
Локальные шины IDE (Integrated Device Electronics), EIDE (Enhanced IDE), SCSI (Small Computer System Interface) используются чаще всего в качестве интерфейса только для внешних запоминающих устройств.
Рис. 2.9. Конфигурация системы с шиной PCI
Функциональные характеристики ПЭВМ
Основными характеристиками ПК являются:
1. Быстродействие, производительность, тактовая частота. Единицами измерения быстродействия служат:
МИПС (MIPS – Mega Instruction Per Second) – миллион операций над числами с фиксированной запятой (точкой);
МФЛОПС (MFLOPS – Mega FLoating Operations Per Se-cond) – миллион операций над числами с плавающей запятой (точкой);
КОПС (KOPS – Kilo Operations Per Second) – для низкопроизводительных ЭВМ тысяча неких усредненных операций над числами.
Оценка производительности ЭВМ всегда приблизительная, ибо при этом ориентируются на некоторые усредненные или, наоборот, конкретные виды операций. Реально при решении различных задач используются и различные наборы операций, поэтому для характеристики ПК вместо производительности обычно указывают тактовую частоту, более объективно определяющую быстродействие машины, так как каждая операция требует для своего выполнения вполне определенного количества тактов. Зная тактовую частоту, можно достаточно точно определить время выполнения любой машинной операции.
2. Разрядность машины и кодовых шин интерфейса.
Разрядность – это максимальное количество разрядов двоичного числа, над которым одновременно может выполняться машинная операция, в том числе и операция передачи информации; чем больше разрядность, тем, при прочих равных условиях, будет больше и производительность ПК.
3. Типы системного и локальных интерфейсов.
Разные типы интерфейсов обеспечивают разные скорости передачи информации между узлами машины, позволяют подключать разное количество внешних устройств и различные их виды.
4. Емкость оперативной памяти.
Емкость оперативной памяти измеряется чаще всего в мегабайтах (Мбайт), реже в килобайтах (кбайт): 1 Мбайт = 1024 кбайт = = 10242 байт.
Многие современные прикладные программы при оперативной памяти емкостью меньше 8 Мбайт просто не работают либо работают, но очень медленно.
Следует иметь в виду, что увеличение емкости основной памяти в 2 раза помимо всего прочего дает повышение эффективной производительности ЭВМ при решении сложных задач примерно в 1,7 раза.
5. Емкость накопителя на жестких магнитных дисках (винчестера) измеряется обычно в мегабайтах или гигабайтах (1 Гбайт = = 1024 Мбайт).
6. Тип и емкость накопителей на гибких магнитных дисках.
В настоящее время применяются в основном накопители на гибких магнитных дисках, использующие дискеты диаметром 3,5 дюйма (1 дюйм = 25,4 мм) и емкостью 1,44 Мбайт.
7. Виды и емкость кэш-памяти.
Кэш-память – это буферная, не доступная для пользователя быстродействующая память, автоматически используемая компьютером для ускорения операций с информацией, хранящейся в более медленно действующих запоминающих устройствах. Например, для ускорения операций с основной памятью организуется регистровая кэш-память внутри микропроцессора (кэш-память первого уровня) или вне микропроцессора на материнской плате (кэш-память второго уровня); для ускорения операций с дисковой памятью организуется кэш-память на ячейках электронной памяти.
Следует иметь в виду, что наличие кэш-памяти емкостью 256 кбайт увеличивает производительность ПК примерно на 20 %.
8. Тип видеомонитора (дисплея) и видеоадаптера.
9. Тип принтера.
10. Наличие математического сопроцессора.
Математический сопроцессор позволяет в десятки раз ускорить выполнение операций над двоичными числами с плавающей запятой и над двоично-кодированными десятичными числами.
11. Имеющееся программное обеспечение и вид операционной системы.
12. Аппаратная и программная совместимость с другими типами ЭВМ, означающая возможность использования на компьютере тех же технических элементов и программного обеспечения, что и на других типах машин соответственно.
13. Возможность работы в вычислительной сети.
14. Возможность работы в многозадачном режиме. Этот режим позволяет выполнять вычисления одновременно по нескольким программам (многопрограммный режим) или для нескольких пользователей (многопользовательский режим). Совмещение во времени работы нескольких устройств машины, возможное в таком режиме, позволяет значительно увеличить эффективное быстродействие ЭВМ.
15. Надежность.
Надежность – это способность системы выполнять полностью и правильно все заданные ей функции. Она измеряется обычно средним временем наработки на отказ.
16. Стоимость.
17. Габариты и масса.
Микропроцессоры
Появление и развитие ЭВМ в мировой практике связано с бурным прогрессирующим совершенствованием элементной базы цифровой электроники. К настоящему времени человеческая мысль создала и освоила четыре поколения ЭВМ. На очереди появление ЭВМ пятого поколения – машин искусственного интеллекта.
С начала 70-х гг. в развитии вычислительной техники определились два параллельных и взаимодействующих направления:
разработка ЭВМ с фиксированной структурой и системой команд на основе интегральных микросхем (ИМС) средней и большой степени интеграции;
разработка семейства микропрограммируемых больших интегральных схем (БИС), обеспечивающих создание процессоров ЭВМ различной архитектуры.
Такие микропрограммируемые БИС стали называться микропроцессорами (МП). Первое сообщение о разработке МП опубликовано фирмой INTEL (США) в 1971 гг.
Появление микропроцессоров привело к освоению принципиально новых направлений в разработке и применении компьютерной техники.
К концу 70-х гг. наметился некоторый отход науки от проблем создания высокопроизводительных универсальных ЭВМ, имеющих значительную стоимость, внушительные весогабаритные показатели, большое энергопотребление и материалоемкость, к проблемам освоения микропроцессорной техники. Микропроцессоры стали массовой продукцией электронной промышленности.
Создание МП по праву считается одним из крупнейших достижений современной микроэлектроники.
Микропроцессором называется программно-управляемое устройство, предназначенное для обработки цифровой информации и управления этим процессом, реализованное в виде одной или нескольких БИС – сверхбольших БИС (СБИС).
Преимущества МП:
1. Низкое энергопотребление.
2. Малая материалоемкость.
3. Высокая технологичность и надежность.
4. Широкие функциональные возможности.
5. Гибкость и точность цифровой обработки сигналов при постоянно снижающейся стоимости.
Все это стало причиной и следствием внедрения МП в самые разнообразные сферы человеческой деятельности. Они являются теми системными элементами, на основе которых создаются устройства промышленной автоматики, связи, измерительной техники и устройства управления бытовой автоматикой, другой аппаратурой различного назначения.
С появлением МП стало возможным создание мобильных высокоэффективных специализированных микроЭВМ, профессиональных и персональных компьютеров.
МП является базовым элементом, обладающим всеми свойствами процессора ЭВМ, но в микроминиатюрном исполнении.
Преимущества микропроцессоров по сравнению с процессорами ЭВМ позволили приблизить средства обработки информации к ее источникам, а средства управления – к местам приложения управляющих воздействий.
В последнее время МП стали проникать в аппаратные средства связи. На их основе реализуются специализированные бортовые ЭВМ комплексов РРС и ТРС, аппаратных управления узлами связи и системой связи, кроссовыми аппаратными опорных УС, а также измерительная и диагностирующая аппаратура.
Внедрение микропроцессоров в системы управления и связи позволили существенно улучшить их функциональную надежность, помехоустойчивость, быстродействие и другие эксплуатационные показатели. Применение МП в РЭС позволило широко использовать принципы программируемой логики, заключающейся в том, что все преобразования информации осуществляются по программе, записанной в памяти и реализующей заданный алгоритм функционирования РЭС.
Внедрение микропроцессоров в технические системы привело к революции не только в технологии микроэлектроники, но и в мышлении современного инженера, поскольку проектирование и эксплуатация систем с МП требует качественно нового подхода.
Видоизменились задачи подготовки специалистов связи, от которых теперь требуются знания и в области функционирования микропроцессоров, и в области их программирования.
2.3.1 Типы и структура микропроцессоров
2.3.1.1 Основные характеристики МП
1. Разрядность. Под ней понимается стандартная длина слова, с которым оперируют составные части МП.
МП бывают с фиксированной и с изменяемой разрядностью слова. При фиксированной разрядности наиболее распространены МП с длиной слова 8 и 16 бит. Во втором случае возможно построение 8-, 16-, 24-, 32-разрядных МП из секций разрядностью 2, 4 и 8.
2. Производительность. Определяется временем решения ряда тестовых задач и зависит от быстродействия выполнения простых операций.
3. Система команд является отличительным признаком для любого МП. Она отражает функциональные возможности устройства. Система команд МП может содержать как малое число команд (восемь), так и большое число (до двухсот) основных команд. Состав команд не является нормализованным.
4. Объем адресуемой памяти характеризует информационные возможности МП и к настоящему времени достигает сотен гигабайт, что было доступно ранее только универсальным ЭВМ.
2.3.1.2 Типовая структура микропроцессора
Типовая структура МП (рис. 2.10):
арифметико-логическое устройство (АЛУ);
блок внутренних регистров;
устройство управления;
внутренняя шина данных – для передачи данных между этими блоками.
Назначение составных частей микропроцессора:
Арифметико-логическое устройство (АЛУ) выполняет одну из главных функций МП: обработку данных. Перечень функций АЛУ зависит от типа МП. Они определяют архитектуру МП в целом. В большинстве МП перечень функций АЛУ ограничивается функциями сложения, вычитания, логическими операциями: и, или, не, исключающее или, сдвиг вправо или влево, положительные и отрицательные приращения.
Рис. 2.10. Структурная схема микропроцессора 8086/8088
Важная составная часть МП – регистры, каждый из которых можно использовать для хранения одного слова данных. Часть регистров имеет специальное назначение, другая – многоцелевое. Последние регистры называются регистрами общего назначения (РОН) и могут использоваться программистами по их усмотрению.
Назначение основных регистров
Аккумулятор – это главный регистр МП. Большинство операций выполняется с использованием только АЛУ и аккумулятора, в котором размещается одно из слов, участвующих в операции, а также результат операции. Аккумулятор используется для передачи данных из одной части МП в другую, например, из порта ввода-вывода в память, между двумя областями памяти и т. д.
В аккумуляторе МП могут выполняться некоторые действия непосредственно над данными. Это операции очистки или установки всех единиц, инверсии и сдвигов. Данные в него поступают с внутренней шины данных МП. Количество разрядов аккумулятора соответствует разрядности МП. Однако в ряде случаев аккумуляторы имеют двойную длину разрядов. Дополнительные разряды используются для размещения данных, появляющихся при выполнении некоторых арифметических операций. Так, при умножении двух 8-битовых слов результат – 16-битовый, он полностью размещается в аккумуляторе.
Счетчик команд – один из наиболее важных регистров МП.
Программа – это последовательность команд, хранимых в памяти ЭВМ и предназначенных для управления действиями машины. Для корректного выполнения программы команды должны поступать в строго определенном порядке. Когда МП начинает работать, то по команде начальной установки в счетчик команд загружаются данные из памяти – адрес, указывающий на первую команду программы. Этот адрес посылается по адресной шине к схемам управления памятью, откуда считывается команда по данному адресу и пересылается в регистр команд.
Регистр команд хранит команду во время ее дешифрования и выполнения. Входные данные поступают в этот регистр из памяти по мере последовательной выборки команд. Кроме того, в регистр команд данные могут быть записаны с помощью пульта управления ЭВМ.
Регистр адреса памяти указывает адрес в области памяти, подлежащей использованию микропроцессором. Выход этого регистра называется адресной шиной и используется для выбора области памяти или порта ввода-вывода.
В течение выборки команды из памяти регистры адреса памяти и счетчика команд имеют одинаковое содержимое. После декодирования команды счетчика команд в нем производится приращение в отличие от регистра адреса.
Буферный регистр предназначен для временного хранения данных.
Регистр состояния предназначен для хранения результатов некоторых проверок, осуществляемых в ходе выполнения программы. Его разряды содержат информацию, по которой проверяется естественная последовательность выполнения программы после выполнения команд условных переходов. Регистр состояний предоставляет программисту возможность организации работы МП так, чтобы при определенных условиях менять порядок выполнения команд.
Регистры общего назначения (РОН) имеют в своем составе набор регистров для запоминания данных. АЛУ может выполнять операции с содержимым РОН (инверсия, сдвиг и т. д.) без выхода на внешнюю магистраль адресов и данных, чем обеспечивается высокое быстродействие.
Указатель стека. Стек – это набор регистров МП или ячеек оперативной памяти, откуда данные выбираются "сверху", т. е. по принципу "последним пришел – первым вышел". При записи в стек очередного слова все записанные ранее слова смещаются на один регистр вниз, как патроны в магазине автомата при его снаряжении.
Схемы управления обеспечивают поддержание требуемой последовательности функционирования всех звеньев МП.
По сигналам схем управления очередная команда извлекается из регистра команд. При этом определяется, что необходимо делать с данными, а затем обеспечивается само действие.
Главной функцией схем управления является декодирование команды, находящейся в регистре команд, с помощью дешифратора команд, который в результате выдает сигналы, необходимые для ее выполнения.
Система шин МП.
Система шин обеспечивает связь устройств микропроцессора между собой и с внешней средой.
2.3.1.3 Программно-логическая модель центрального
процессора
На рисунке 2.11 показана логическая организация МП Intel 8086 (КР1810ВМ86). Он широко применяется в ПЭВМ семейств IBM PC, IBM PC/XT, PCjr, PS/2 (модели 25, 30). Некоторые из перечисленных машин построены на базе МП Intel 8088, который отличается количеством внешних линий данных (имеются и другие отличия, например сокращение длины очереди команд, но они не могут считаться принципиальными).
В составе МП имеется 14 программно-доступных регистров. Он манипулирует логическими адресами, содержащими 16-раз-рядный сегментный (базовый) адрес и 16-разрядное внутрисегментное смещение. Сегментные адреса находятся в одном из четырех регистров: CS – код (программа); DS – данные, SS – стек; ES – экстракод (дополнительные данные).
В состав блока регистров общего назначения (РОН) входят восемь 16-разрядных регистров, из них четыре (SP, BP, SI, DI) предназначены для хранения внутрисегментных смещений. Все РОН участвуют в выполнении арифметических и логических операций, представляя операнды и фиксируя результат.
Регистр адреса команд (счетчик адреса) IP используется для выбора команд программы в текущем сегменте кода CS.
Особо необходимо отметить назначение регистра признаков (флагов).
Как уже отмечалось, регистр признаков (флагов) предназначен для хранения данных о различных ситуациях, возникающих в программе. Младший байт регистра признаков устанавливается арифметическими или логическими операциями МП:
признак SF принимает единичное значение при отрицательном и нулевое значение при положительном результате;
флаг ZF принимает значение "1" при нулевом результате последней операции;
PF устанавливает "1", если результат последней операции имеет четное число единиц;
признак CF используется для различных целей. Он устанавливает "1" при сложении 16-битовых чисел в случае возникновения переноса и при вычитании аналогичных чисел для указания необходимости заема "1" из старшего разряда. Программа может использовать этот флаг для определения соотношения двух чисел: и . Если выполняется операция и CF = 1, то (если CF = 0, то );
признак AF позволяет МП выполнять операции десятичной арифметики, когда данные хранятся в двоично-десятичном коде;
флаг переполнения OF показывает, что результат арифметической операции вышел за пределы диапазона чисел, представленных в дополнительном коде.
Остальные признаки регистра устанавливаются программистом:
если IF = 0, то никакие внешние прерывания (за исключением немаскируемых) не смогут возникнуть;
после занесения в TF единицы при завершении каждой команды возникает прерывание работы МП. Это помогает на этапе отладки программы;
когда IF = 1, МП будет реагировать на внешние прерывания;
признак DF используется при обработке блоков данных.
Для указания объектов (байтов или слов) в каждом блоке применяются индексные регистры. После обработки объекта МП изменяет содержимое индексных регистров для выбора следующего элемента данных:
если DF = 0, то команды, работающие с блоками, увеличивают содержимое индексных регистров, при DF = 1 содержимое этих регистров уменьшается.
Рис. 2.11. Логическая организация МП Intel 8086
Шесть 8-разрядных регистров очереди команд являются программно-недоступными. Они организованы по принципу "первый пришел – первый вышел".
Схемы управления координируют работу МП.
Арифметико-логическое устройство (АЛУ) выполняет арифметически и логические операции над различными операндами.
2.2.1.4 Особенности процессоров фирмы Intel
В 1969 г. компания Biscom заключила контракт с тогда еще малоизвестной фирмой Intel на разработку комплекта микросхем для калькуляторов. Разработчики применили новый подход и спроектировали универсальную микросхему – процессорный элемент, который заменил собой большое количество дискретных компонентов. Он составил основу созданного набора из четырех микросхем. Фирма Intel выкупила у Biscom права на эту микросхему и, немного усовершенствовав, в 1971 г. выпустила ее под индексом i4004. С этого скромного 4-разрядного процессорного элемента, содержавшего на кристалле 2 300 транзисторов и имевшего производительность 60 тыс. операций в секунду, началась эпоха микропроцессоров. Позже появилось устройство под номером i8008. Оно имело 8 линий данных и по производительности превосходило i4004 в несколько раз.
Первым микропроцессором, на базе которого был построен компьютер, стал i8080. Он был выпущен в 1974 г., имел 8-раз-рядную шину данных и 16-разрядную шину адреса. Для него была разработана простая и удобная система команд на 256 операций.
В целях построения на его основе компактной компьютерной системы был разработан целый комплект сопутствующих микросхем и специализированных программируемых периферийных контроллеров. Каждая из этих микросхем заменяла целый компьютерный блок, и их применение при разработке вычислительных устройств позволило резко уменьшить их размеры.
В 1979 г. фирма Intel открыла следующую страницу в истории микропроцессоров. Она предложила на суд пользователей процессор i8086, значительно отличавшийся от предшественников, которому суждено было стать родоначальником целого направления среди микропроцессоров.
МП i8086 имел 16-разрядную внутреннюю архитектуру, внешнюю шину данных той же разрядности, 20-разрядную шину адреса, позволявшую работать с адресным пространством в 1 Мбайт. В нем была реализована новая система команд, не совместимая с набором МП 8080.
Для обеспечения функционирования МП i8086 фирма выпустила набор сопутствующих микросхем и программируемых контроллеров, продолжая серию, начатую для МП 8080.
Через год фирма представила модель процессора i8088 с той же 16-разрядной архитектурой, но с 8-разрядной внешней шиной данных. Начальные модификации МП работали с частотой 4,77 МГц, у последующих она была повышена до 8 МГц. Знаменитым этот кристалл сделало то, что фирма IBM выбрала его для создания своего первого компьютера массового применения PC, а позднее и PC XT.
Процессор Intel 80286. Выпущен в 1984 г., имел 16-разрядную внутреннюю архитектуру, 16-разрядную внешнюю шину данных и 24-разрядную внешнюю шину адреса. Увеличение разрядности шины адреса увеличило адресное пространство до 16 Мбайт. Для него разработан математический сопроцессор i80287. На базе процессора 80286 построен компьютер PC AT.
Этот процессор может работать в двух режимах:
в рабочем ("реальном") он ведет себя как процессор 8088 с расширенным набором команд и поэтому может иметь доступ только к первому мегабайту памяти;
в "защищенном" режиме работы процессор имеет 24-раз-рядную адресную шину, что в 3 раза больше, чем у процессора 8088, следовательно, в "защищенном" режиме он может иметь доступ непосредственно к 16 Мбайт памяти.
Процессор Intel 80386DX. Замечательной особенностью этого процессора является его 32-разрядная архитектура: 32 линии передачи данных и 32 адресные линии. Таким образом, этот процессор может параллельно передавать 4 байт данных и адресовать оперативную память объемом до 4 Гбайт. Компьютеры, оснащенные такими процессорами, могут удовлетворить высоким требованиям, предъявляемым к управлению программами и большими массивами данных.
Другими преимуществами процессора 80386, по сравнению с процессором 80286, являются доступ к расширенному набору команд и использование системы мультипрограммирования. Одновременно может выполняться несколько прикладных программ. Еще одно преимущество работы процессора 80386 – это "виртуальный" режим, раскрывающий истинные достоинства этого процессора. В "виртуальном" режиме одновременно могут быть запущены несколько программ, которые выполняются как бы различными процессорами 8088, т. е. становится возможным многозадачный режим, реализуемый с помощью разработанной для процессоров 8088 операционной системы MS-DOS.
Процессор Intel 80486 DX. Этот 32-разрядный процессор работает с тактовой частотой до 50 МГц до появления процессора Pentium представлял собой самый совершенный процессор из семейства Intel 8086. В апреле 1989 г. он был представлен на широкое обозрение и уже полгода спустя в больших количествах стал доступен изготовителям компьютеров. По сравнению с предшественником (80386) процессор 80486 имеет большую скорость обработки основных команд, использует новый улучшенный интерфейс с оперативной памятью и встроенный сопроцессор. Повышение производительности процессора 80486 обусловлено рядом усовершенствований, в том числе встроенным сопроцессором и интегрированной кэш-памятью объемом 8 кбайт. Размещение сопроцессора на общем чипе в отличие от прежних моделей, основанных на использовании центрального процессора и дополнительного сопроцессора, имеет много преимуществ.
Процессор Pentium. Pentium 60 с тактовой частотой 66 МГц представляет собой суперскалярный 32-разрядный процессор, построенный по субмикронной технологии с комплементарной МОП-структурой (0,8 мкм) и состоящий из 3,1 млн транзисторов. Он поддерживает команды процессора 80486 и, подобно предшественнику, имеет внутренний блок для проведения операций с плавающей точкой, а также кэш-память на 16 кбайт, устройство управления па-мятью (MMU) и интеллектуальный буфер – предсказания ветвлений (branch target buffer).
Процессор Pentium имеет два 32-битовых адресных пространства (логическое и физическое) и 64-разрядную шину данных, что объясняет отчасти повышение производительности процессора. При этом центральный процессор имеет две конвейерные линии обработки команд, работающие параллельно и тем самым позволяющие процессору выполнять два набора команд за один такт. Благодаря разделению кэш-памяти (8 кбайт для команд и 8 кбайт для данных) исключаются наложения команд данных.
2.4 Запоминающие устройства
2.4.1 Организация оперативной памяти
2.4.1.1 Организация доступа памяти в Intel-совместимых процессорах
Местоположение любого байта внутри адресного пространства размером в 1 Мбайт микропроцессора 8086 определяется двумя величинами: адресами сегмента и смещения, формирующими сегментный адрес.
МП манипулирует логическими адресами, содержащими 16-разрядный сегментный (базовый) адрес и 16-разрядное внутрисегментное смещение. Механизм сегментации предполагает разбиение всего адресуемого пространства на области (сегменты) по 64 кбайт каждая.
Физический адрес (рис. 2.12) получается из адреса сегмента и
Рис. 2.12. Вычисление физического адреса в реальном режиме
процессора 8086
смещения следующим образом: над адресом сегмента выполняется операция арифметического сдвига влево на 4 бит (к двоичному представлению числа справа дописывается 4 нулевых бита), а затем к полученному числу прибавляется значение смещения.
Сегментация памяти в процессоре 8086 обладает следующими особенностями, которые можно считать ее недостатками с точки зрения разработчиков многозадачных систем:
1. Сегменты памяти имеют всего два атрибута: начальный адрес и максимальный размер 64 кбайт. Никаких аппаратных средств контроля правильности использования сегментов нет.
2. Размещение сегментов памяти произвольно: они могут частично или полностью перекрываться (поскольку начальный адрес сегмента совпадает с адресом параграфа, кратного 16) или не иметь общих областей.
2.4.1.2 Области памяти IBM-совместимых персональных
компьютеров
Свои первые компьютеры фирма IBM спроектировала на базе МП J8086/88. Процессор имел адресное пространство 1 Мбайт, что в сравнении с 64 кбайт у его предшественника МП 08080 было очень много. Адресное пространство было разделено на две области (рис. 2.13).
Рис. 2.13. Логическая структура адресного пространства ПК класса XT
Назначение областей оперативной памяти:
1. Базовая память (Conventional Memory Area – CMA) располагается по адресам от 0000h до FFFFh (здесь и далее числа h на конце представлены в шестнадцатеричной системе счисления), т. е. имеет размер 640 кбайт. В ней может размещаться резидентная часть MS-DOS, а также резидентные и нерезидентные программы пользователя, которым размера CMA достаточно для работы. В ней могут размещаться как коды исполняемых программ, так и данные к ним.
2. Верхняя память (Upper Memory Area – UMA) располагается по адресам с 10000h по FFFFFh (от 640 кбайт до первого мегабайта), ее размер составляет 384 кбайт, без специальных драйверов она не доступна. В базовой памяти выделены рабочие области для операционной системы, размещения драйверов и пользовательских программ.
Адресное пространство в 1 Мбайт – это совсем немного, а процессоры Intel 8086/88 могли работать только с 1-мегабайтным адресным пространством. Возникла необходимость организации дополнительного объема памяти вне этой области. За решение данной задачи взялись совместно фирмы Lotus, Intel, Microsoft. Результатом их деятельности стала спецификация доступа к дополнительной памяти LIM EMS (Lotus, Intel, Microsoft Expanded Memory Specification). Был разработан стандарт организации дополнительной памяти (Expanded Memory Specification – EMS). EMS версии 3.2 обеспечивала поддержку 8 Мбайт дополнительной памяти, a EMS версии 4.0 обеспечивала поддержку 32 Мбайт.
Был предложен механизм создания дополнительной памяти (EMA), находящейся вне адресного поля. Для ее построения в системный разъем вставляется плата, содержащая дополнительный объем памяти (рис. 2.14).
Следующий процессор i80286 имел 16-мегабайтное адресное пространство. Весь объем ОЗУ "выше" одного мегабайта получил название расширенной памяти (XMA) (рис. 2.15). Использование расширенной памяти получило название стандарта (XMS). К моменту появления процессора уже был накоплен довольно большой объем программного обеспечения. Для того чтобы новый МП мог его использовать, в пределах первого мегабайта ОЗУ он должен был работать так же, как и его предшественник. Исходя из этого процессор построен таким образом, что он может функционировать в двух режимах:
реальный, когда он работает как обычный i8086/88;
защищенный, позволяющий ему вести обмен с расширенной памятью.
Поддержка этих двух режимов сохранена во всех последующих моделях процессоров.
Позже обнаружилась возможность обращения к первым 64 кбайт расширенной памяти, не выходя из реального режима. Этот участок адресного пространства получил название "область старшей памяти" (HMA), или "старшие адреса" (рис. 2.15).
Рис. 2.14. Структура памяти ПК Рис. 2.15. Логическая структура
в соответствии с концепцией EMS адресного пространства ПК класса АТ по концепции XMS)
В результате структура памяти компьютера может быть организована из четырех областей, различающихся местоположением в адресном пространстве, и одной дополнительной области, находящейся вне адресного поля. Необходимую для работы комбинацию этих областей пользователь определяет и выстраивает сам.
Организация памяти компьютера из нескольких областей, имеющих различное назначение, создавала большие сложности в работе. Место, где размещаются все исполняемые программы (базовая память), эксплуатируется очень интенсивно, а по размеру оно невелико; остальной объем (расширенная память) может быть значительно больше, но используется мало и только для сохранения данных или программ. С этим приходилось мириться. Несмотря на очевидные неудобства и сложности в работе, подобная структура памяти сохранялась на IBM-совместимых машинах весь период времени, когда в качестве операционной системы (ОС) использовалась MS-DOS. Отказ от нее стал возможен только с появлением ОС нового типа Windows 95/98.
В настоящее время проблема распределения памяти потеряла остроту. Однако большинству пользователей в той или иной степени все равно придется с этим столкнуться.
Краткая характеристика областей памяти в случае исполь-зования MS-DOS:
Базовая память (Base, Conventional) – основная память компьютера; занимает в массиве ОЗУ первые 640 кбайт (адреса 000 000–655 359), условно разбитые на 10 сегментов (0–9) по 64 кбайт каждый: в нее загружается DOS (рис. 2.16).
В первых двух килобайтах 0-го сегмента (адреса 0000–2048) размещены рабочие области DOS и BIOS, буферы устройств, таблицы векторов прерываний. Следующие несколько десятков килобайт используются для размещения драйверов операционной системы.
Оставшийся массив базовой памяти считается свободным и может быть использован прикладными (пользовательскими) программами. Объем свободной базовой памяти имеет для пользователя большое практическое значение. Многие программы предъявляют жесткие требования: "объем базовой памяти не менее ..." Если в компьютере на момент запуска этой программы памяти хотя бы чуть-чуть меньше, то работать она не станет. Для того чтобы освободить максимально возможный объем базовой памяти, используются всевозможные ухищрения. Например, драйверы устройств стремятся разместить в верхней памяти (UMA) или старших адресах (НМА).
Рис. 2.16. Структура базовой памяти
Верхняя память (UMA – Upper Memory Area) – область ОЗУ между 640 кбайт и 1 Мбайт (1024 кбайт). Она зарезервирована для служебных целей.
Адресное поле сегментов А и В используется для размещения ОЗУ видеоконтроллеров (рис. 2.17).
Свободные области UMA, сегменты С, D, Е и F обычно используются программами-админи-страторами расширенной памяти для помещения в них резидентных программ и ядра DOS. Свободных фрагментов в UMA несколько, они называются блоками верхней памяти (Upper Memory Blocks – UMB). Поскольку размеры блоков UMA невелики, то нерезидентные программы туда обычно не загружаются, так как их код должен занимать непрерывную область памяти.
В настоящее время в этой области только два участка жестко закреплены за конкретными устройствами:
в адресном пространстве сегмента С размещено ПЗУ видеоконтроллера (контроллер EGA использует 16 кбайт, VGA – 32 кбайт);
Рис. 2.17. Организация верхней памяти
пространство сегмента F занято системным ПЗУ, находящимся на материнской плате.
Оставшиеся участки могут использоваться пользователем по своему усмотрению. В верхней памяти может быть создана теневая память (Shadow), т. е. в некоторых участках адресного пространства верхней памяти оказались параллельно подключенными оперативная память и блоки ПЗУ, находящиеся на материнской плате и контроллерах. Таких участков в настоящее время два: сегмент F и частично сегмент С. Обычно работает ПЗУ. Проектировщиками материнских плат был предложен вариант функционирования системы, при котором вместо медленного ПЗУ применяется более быстрое ОЗУ. По желанию пользователя возможен режим начальной загрузки компьютера, когда содержимое блоков ПЗУ переписывается в параллельные области ОЗУ, и в дальнейшем обращение идет к ним. Фактически в оперативной памяти создается копия – "тень" ПЗУ, отсюда и название режима. Управление работой теневой памяти выполняется через программу Setup.
Свободные участки в сегментах С, D и Е могут быть преобразованы при помощи утилиты EMM386.exe в блоки, пригодные для хранения информации. В них как правило размещены системные программы и драйверы. Весь объем верхней памяти, находящейся под управлением EMM386.exe, получил название UMB.
На 286-й и 386-й материнских платах с верхней памятью может быть выполнена переадресация (remaping). В аппаратной части этих плат была заложена возможность программного переключения (условного перемещения) части верхней памяти в область расширенной (сразу после первого мегабайта). Такой режим давал возможность на материнских платах, реально имеющих всего 1 Мбайт ОЗУ, создать область расширенной памяти и устанавливать на компьютер ОС Windows. На некоторых платах при создании режима Shadow переадресацию выполнить нельзя.
Расширенная память (EMA – Extended Memory Area) – весь объем ОЗУ "выше, старше" первого мегабайта. Доступ к ней организуется при помощи драйвера HIMEM.sys (область, находящаяся под его управлением, получила название XMS – Extended Memory Specification).
В системах "под DOS" возможности этого вида памяти ограничены:
в расширенной памяти не может находиться операционная система;
в ней невозможно создание рабочих областей устройств;
находящиеся в EMA программы не могут быть выполнены.
В основном расширенная память используется для сохранения данных и программ. В составе ОС MS-DOS есть драйверы RAMDRIVE.sys и SMARTDRV.exe, ориентированные на работу с EMA. Для записи в расширенную память или считывания оттуда они переводят МП в защищенный режим, а затем возвращают в реальный.
Область старшей памяти, старшие адреса (НМА – High Memory Area) – область первых 64 кбайт (без 16 байт) расширенной памяти, доступ к которым можно получить без выхода из реального режима. Это дополнительный участок ОЗУ, пригодный для размещения компонентов операционной системы.
Для того чтобы объяснить, откуда появились эти 64 кбайт памяти, вспомним, как формируется адрес в МП. Если в старшие 16 разрядов сегментного регистра загрузить максимальное значение FFFF16 (a 4 младших автоматически устанавливаются в нуль) и задать смещение FFFF16, можно получить предельный адрес равный l'0FFEF16 (рис. 2.18). Адресный интервал 10000016 – l'0FFEF16 и составляет область старшей памяти. Управление размещением данных в старших адресах возложено на драйвер HIMEM.sys.
Рис. 2.18. Формирование адресного интервала области старшей памяти
Дополнительная память (Expanded Memory Area).
В компьютере доступ к дополнительной памяти (LIM EMS) реализует драйвер EMM386.exe. Для него необходим свободный участок ОЗУ размером в 64-килобайтный страничный блок (обычно он берется в верхней памяти – окно EMA). В процессе работы он делится на четыре 16-килобайтные логические страницы. На такие же по размеру страницы делится весь имеющийся объем дополнительной памяти. В логические страницы заносится информация, требующая сохранения. После этого их содержимое путем определенной программной процедуры копируется на одну из страниц дополнительной памяти. Затем в логические страницы помещается следующая порция данных и процедура повторяется. Страничный блок как перемещающееся смотровое окошко имеет доступ к любой точке области дополнительной памяти. Через него производится как запись, так и считывание.
Дополнительная память может быть использована для хранения данных и программ. С помощью драйверов RAMDRIVE.sys и SMARTDRV.exe в ней могут быть созданы электронный диск и буферы дисковых накопителей. Спецификацией EMS могут пользоваться только специально разработанные для этого программы. В связи с необходимостью частого переключения страниц и копирования их в UMA отображаемая память работает довольно медленно.
Электронный диск – программно построенная структура, по организации и принципу работы с ним идентичная логическому диску на винчестере. Доступ к нему при записи или чтении выполняется быстрее, так как нет медленной операции перемещения головок. Емкость невелика (не может превосходить по объему расширенную память). На электронном диске удобно держать короткие часто исполняемые программы. При выключении компьютера все содержимое диска теряется.
Виртуальная память – это такая система организации выполнения задания, при которой часть программы располагается в быстродействующей памяти (микросхемах), а часть – на некотором более медленном и дешевом запоминающем устройстве (например, жестком диске). Виртуальная организация памяти позволяет программисту работать, не заботясь о емкости реальной памяти. В системах виртуальной памяти диск превращается в основную память, а RAM (реальная память) содержит код и данные, используемые процессорами.
Механизм виртуальной памяти, реализованный на процессоре 80286, позволяет организовать виртуальную память большого объема при относительно небольших размерах оперативной и дисковой памяти. Основная идея виртуальной памяти заключается в хранении и обновлении на диске сегментов программы и загрузки их в оперативную память по мере необходимости. Процесс загрузки и выгрузки сегментов называется свопингом.
В версиях DOS6.x появилась утилита MEMMAKER, которая автоматически оптимизирует использование верхней памяти. Поскольку эта память фрагментирована, то не всегда удается вручную загрузить туда все желаемые резиденты. Кроме того, некоторые резидентные программы могут менять свой размер после загрузки. MEMMAKER просчитывает все возможные комбинации распределения программ по блокам верхней памяти (их может быть несколько десятков тысяч) и выбирает из них оптимальную. Следует отметить, что с этой задачей MEMMAKER справляется далеко не лучшим образом, поскольку он не обрабатывает командные файлы, вызываемые из файла AUTOEXEC.BAT, а также не способен изменить порядок загрузки драйверов и резидентов, что могло бы привести к более удачному варианту их размещения в верхней памяти. Однако существует специально разработанные драйверы оптимизации, позволяющие добиться лучших результатов: QEMM386, 386MAX и др.
2.4.1.3 Общая характеристика способов реализации
запоминающих устройств
В общем случае под запоминающим устройством (ЗУ) можно понимать любое устройство, которое хранит информацию для дальнейшего использования. При таком понимании ЗУ ПЭВМ можно разделить на два класса.
Первый класс ЗУ представляет собой память, которая хранит команды и данные, обрабатываемые МП непосредственно, т. е. в любой момент времени МП имеет доступ к любой команде или данным, например, ЗУПВ (ЗУ произвольной выборки – ОЗУ, ПЗУ).
Второй класс состоит из средств, которые могут хранить информацию, но ее необходимо передавать в память первого класса прежде, чем к ней может обратиться МП, например, внешние ЗУ (НГМД, НЖМД и др.).
Рис. 2. 19. Конструктивные особенности ОЗУ
ОЗУ ПЭВМ может состоять из одной или нескольких плат, которые подключены к системной шине (рис. 2.19, 2.20).
Микросхемы ЗУПВ имеют организацию MЧN, где М – количество адресуемых слов; N – количество разрядов в слове.
Под длительностью цикла обращения понимается минимальный временной интервал от момента поступления стабильного адреса слова до получения стабильных данных. Эта характеристика отражает быстродействие ЗУПВ.
Рис. 2.20.Структура обращения к оперативной памяти
Регистровая кэш-память
В качестве элементной базы основной памяти в большинстве ВМ служат микросхемы динамических ОЗУ, на порядок уступающие по быстродействию центральному процессору. В результате процессор вынужден простаивать несколько тактовых периодов, пока информация из ИМС-памяти установится на шине данных ВМ. Если ОП выполнить на быстрых микросхемах статической памяти, стоимость ВМ возрастет весьма существенно. Экономически приемлемое решение этой проблемы было предложено М. Уилксом в 1965 г. в процессе разработки ВМ Atlas и заключается в использовании двухуровневой памяти, когда между ОП и процессором размещается небольшая, но быстродействующая буферная память. В процессе работы такой системы в буферную память копируются те участки ОП, к которым производится обращение со стороны процессора, т. е. производится отображение участков ОП на буферную память. Выигрыш достигается за счет ранее рассмотренного свойства локальности: если отобразить участок ОП в более быстродействующую буферную память и переадресовать на нее все обращения в пределах скопированного участка, можно добиться существенного повышения производительности ВМ.
Уилкс М. называл рассматриваемую буферную память подчиненной (slave memory). Позже распространение получил термин кэш-память (от англ. cache – убежище, тайник), поскольку такая память обычно скрыта от программиста в том смысле, что он не может ее адресовать и может даже вообще не знать о ее существовании. Впервые кэш-системы появились в машинах модели 85 семейства IBM 360.
В общем виде использование кэш-памяти можно пояснить следующим образом. Когда ЦП пытается прочитать слово из основной памяти, сначала осуществляется поиск копии этого слова в кэш-памяти. Если такая копия существует, обращение к ОП не производится, а в ЦП передается слово, извлеченное из кэш-памяти. Данную ситуацию принято называть успешным обращением, или попаданием (hit). При отсутствии слова в кэше, т. е. при неуспешном обращении – промахе (miss) требуемое слово передается в ЦП из основной памяти, но одновременно из ОП в кэш-память пересылается блок данных, содержащий это слово.
На рисунке 2.21 приведена структура системы с основной и кэш-памятью. ОП состоит из 2n адресуемых слов, где каждое слово имеет уникальный n-разрядный адрес. При взаимодействии с кэшем эта память рассматривается как М блоков фиксированной длины по К слов в каждом (М = 2n/К). Кэш-память состоит из С блоков аналогичного размера (блоки в кэш-памяти принято называть строками), причем их число значительно меньше числа блоков в основной памяти (С<< М). При считывании слова из какого-либо блока ОП этот блок копируется в одну из строк кэша. Поскольку число блоков ОП больше числа строк, отдельная строка не может быть выделена постоянно одному и тому же блоку ОП. По этой причине каждой строке кэш-памяти соответствует тег (признак), содержащий сведения о том, копия какого блока ОП в данный момент хранится в данной строке. В качестве тега обычно используется часть адреса ОП.
На эффективность применения кэш-памяти в иерархической системе памяти влияет целый ряд моментов. К наиболее существенным из них можно отнести:
– емкость кэш-памяти;
– размер строки;
– способ отображения основной памяти на кэш-память;
– алгоритм замещения информации в заполненной кэш-памяти;
– алгоритм согласования содержимого основной памяти и кэш-памяти;
– число уровней кэш-памяти.
Рис. 2.21. Структура системы с основной памятью и кэш-памятью
Современные технологии позволяют разместить кэш-память и ЦП на общем кристалле. Такая внутренняя кэш-память строится по технологии статического ОЗУ и является наиболее быстродействующей. Емкость ее обычно не превышает 64 кбайт. Попытки увеличения емкости приводят к снижению быстродействия, главным образом из-за усложнения схем управления и дешифрации адреса. Общую емкость кэш-памяти ВМ увеличивают за счет второй (внешней) кэш-памяти, расположенной между внутренней кэш-памятью и ОП. Такая система известна под названием двухуровневой, где внутренней кэш-памяти отводится роль первого уровня (L1), а внешней – второго уровня (L2). Емкость L2 обычно на порядок больше, чем у L1, а быстродействие и стоимость – несколько ниже. Память второго уровня также строится, как статическое ОЗУ. Типичная емкость кэш-памяти второго уровня – 256 и 512 кбайт, реже 1 Мбайт, а реализуется она, как правило, в виде отдельной микросхемы, хотя в последнее время L2 часто размещают на одном кристалле с процессором, за счет чего сокращается длина связей и повышается быстродействие.
При доступе к памяти ЦП сначала обращается к кэш-памяти первого уровня. В случае промаха производится обращение к кэш-памяти второго уровня. Если информация отсутствует и в L2, выполняется обращение к ОП и соответствующий блок заносится сначала в L2, а затем и в L1. Благодаря такой процедуре часто запрашиваемая информация может быть быстро восстановлена из кэш-памяти второго уровня.
Потенциальная экономия за счет применения L2 зависит от вероятности попаданий как в L1, так и в L2. Использование кэш-памяти второго уровня существенно улучшает производительность.
В большинстве семейств микропроцессоров предусмотрены специальные ИМС контроллеров внешней кэш-памяти, например микросхема 82491 – для Intel Pentium. Для ускорения обмена информацией между ЦП и L2 между ними часто вводят специальную шину (шину заднего плана), в отличие от шины переднего плана, связывающую ЦП с основной памятью.
Количество уровней кэш-памяти не ограничивается двумя. В некоторых ВМ уже можно встретить кэш-память третьего уровня (L3) и ведутся активные дискуссии о введении также и кэш-памяти четвертого уровня (L4). Характер взаимодействия очередного уровня с предшествующим аналогичен описанному для L1 и L2. Таким образом, можно говорить об иерархии кэш-памяти. Каждый последующий уровень характеризуется большей емкостью, меньшей стоимостью, но и меньшим быстродействием, хотя оно все же выше, чем у ЗУ основной памяти.
2.4.3 Внешняя память
2.4.3.1 Классификация внешних запоминающих устройств
Носитель – материальный объект, способный хранить информацию.
Устройства внешней памяти, или внешние запоминающие устройства, весьма разнообразны. Их можно классифицировать по целому ряду признаков: виду носителя, типу конструкции, принципу записи и считывания информации, методу доступа и т. д.
Один из возможных вариантов классификации ВЗУ – по виду носителей и типу конструкции – приведен на рисунке 2.22.
Рис. 2.22. Классификация внешних запоминающих устройств
В зависимости от вида носителя все ВЗУ можно подразделить на накопители на магнитной ленте и дисковые накопители.
Накопители на магнитной ленте по типу конструкции, в свою очередь, бывают двух видов: накопители на бобинной магнитной ленте (НБЛМ) и накопители на кассетной магнитной ленте (НКМЛ – стримеры). В ПК используются только стримеры.
Диски по методу считывания относятся к машинным носителям информации с прямым доступом. Понятие "прямой" доступ означает, что ПК может "обратиться" к дорожке, на которой начинается участок с искомой информацией или куда нужно записать новую информацию, непосредственно, где бы ни находилась головка чтения накопителя.
Накопители на дисках более разнообразны (табл. 2.4):
Таблица 2.4 Сравнительные характеристики дисковых накопителей
Тип накопителя |
Емкость, Мбайт |
Время доступа, мс | Трансферт, кбайт/с | Вид доступа |
НГМД | 1,2; 1,44 | 65 ё 100 | 150 | чтение-запись |
Винчестер | 250 ё 320000 | 8 ё 20 | 500 ё 3000 | чтение-запись |
Бернулли | 20 ё 230 | 20 | 500 ё 2000 | чтение-запись |
Floptical | 20,8 | 65 | 100 ё 300 | чтение-запись |
120 ё 240 | 65 | 200 ё 600 | чтение-запись | |
250 ё 64000 | 15 ё 300 | 150 ё 1500 | только чтение | |
CC WORM | 120 ё 64000 | 15 ё 150 | 150 ё 1500 | чтение-одно-кратная запись |
НМОД | 128 ё 64000 | 15 ё 150 | 300 ё 2000 | чтение-запись |
Примечание. Время доступа – средний временной интервал, в течение которого накопитель находит требуемые данные, – представляет собой сумму времени для позиционирования головок чтения-записи на нужную дорожку и ожидания нужного сектора. Трансферт – скорость передачи данных при последовательном чтении.
– накопители на гибких магнитных дисках (НГМД), т. е. флоппи-дисках или на дискетах;
– накопители на жестких магнитных дисках (НЖМД) типа "винчестер";
– накопители на сменных, жестких магнитных дисках, использующие эффект Бернулли;
– накопители на флоптических дисках, т. е. floptical-накопители;
– накопители сверхвысокой плотности записи, т. е. VHD-накопители;
– накопители на оптических компакт-дисках CD-ROM (Compact Disk ROM);
– накопители на оптических дисках типа CC WORM (Continuous Composite Write Once Read Many – однократная запись – многократное чтение);
– накопители на магнитооптических дисках (НМОД) и др.
2.4.3.2 Накопители на гибких магнитных дисках
На гибком магнитном диске (дискете) магнитный слой наносится на гибкую основу. Используемые в ПК ГМД имеют формат 5,25 и 3,5 дюйма, емкость ГМД колеблется в пределах от 180 кбайт до 2,88 Мбайт.
ГМД диаметром 5,25 дюйма помещается в плотный гибкий конверт, а диаметром 3,5 дюйма – в пластмассовую кассету для защиты от пыли и механических повреждений.
Конструктивно диск диаметром 133 мм изготовляется из гибкого пластика (лавсана), покрытого износоустойчивым ферролаком, и помещается в футляр – конверт. Дискета имеет две прорези: центральное отверстие для соединения с дисководом и смещенное от центра небольшое отверстие (обычно скрытое футляром), определяющее радиус – вектор начала всех дорожек на ГМД. Футляр также имеет несколько прорезей: центральное отверстие, чуть больше чем отверстие на дискете, широкое окно для считывающих и записывающих магнитных головок и боковую прорезь в виде прямоугольника, закрытие которой, например липкой лентой, защищает дис-кету от записи и стирания информации.
Диск диаметром 89 мм имеет более жесткую конструкцию, более тщательно защищен от внешних воздействий и имеет примерно те же конструктивные элементы. Режим запрета записи на этих дисках устанавливается специальным переключателем, расположенным в одном из углов диска.
В последние годы появились диски с тефлоновым покрытием (Verbutim Data Life Plus), которое предохраняет магнитное покрытие и записанную информацию от грязи, пыли, воды, жира, отпечатков пальцев и даже от растворителей типа ацетона.
Возможная емкость 3,5-дюймового диска Data Life Plus – 2,88 Мбайт. Следует упомянуть и диски "Go anywhere", распространяемые у нас в стране под названием "Вездеход". Они также обладают стойкостью к различным внешним воздействиям: температуре, влажности, запыленности.
Основные характеристики некоторых типов НГМД приведены в таблице 2.5.
Таблица 2.5 Основные характеристики некоторых типов НГМД
Параметр |
Тип ГМД | ||||
133 мм (5,25 дюйма) |
89 мм (3,5 дюйма) |
||||
Полная емкость, кбайт Рабочая емкость, кбайт (после форматирования) Плотность записи, бит/мм Плотность дорожек, дорожек/мм Число дорожек на одной поверхности диска Число поверхностей (сторон) Среднее время доступа, мс Скорость передачи, кбайт/с Скорость вращения, оборотов/мин Число секторов Емкость сектора дорожки, байт |
500 360 231 1,9 40 2 80 50 3000 9 512 |
1000 720 233 3,8 80 2 100 50 3000 9 512 |
1600 1200 380 3,8 80 2 100 80 3600 15 512 |
1000 720 343 5,3 80 2 65 80 7200 9 512 |
1600 1440 558 5,3 80 2 65 150 7200 18 512 |
Каждый новый диск в начале работы с ним следует отформатировать.
Форматирование диска – это создание структуры записи информации на его поверхности: разметка дорожек, секторов, запись маркеров и другой служебной информации.
Возможный вариант форматирования зависит от типа диска (маркируемого на его конверте):
SS/SD – односторонний диск (Single Sides) одинарной плотности (Single Density);
SS/DD – односторонний диск двойной плотности ( Double Density);
DS/SD – двухсторонний диск (Double Sides) одинарной плотности;
DS/DD – двухсторонний диск двойной плотности;
DS/HD – двухсторонний диск высокой плотности (Hign Den-sity), обеспечивающий максимальные емкости.
Программы дисковой операционной системы МS-DOS записывают в любой сектор информацию объемом не более 512 байт. Таким образом, общая емкость D любого диска, используемого DOC, составляет D = 512 ґ Nt ґ Ns ґ 2 байт, где Nt – количество дорожек; Ns – количество секторов на дорожке; множитель 2 учитывает две поверхности диска.
Например, для широко распространенных дисков диаметром 133 мм для формата DS/DD Nt = 40, Ns = 9.
Емкость равна D = 512 ґ 40 ґ 9 ґ 2 = 360 ґ 1024 = к60 кбайт.
Для формата DSHD Nt = 80, Ns = 15 и емкость диска составляет
D = 512 ґ 80 ґ 15 ґ 2 = 1200 ґ 1024 = 1,2 Мбайт.
Для форматирования используется команда операционной системы MS-DOS: format <имя диска>.
Например: format A:\
2.4.3.3 Правила обращения с дисками
Необходимо соблюдать следующие правила пользования дисками:
не сгибать, не прикасаться руками к магнитному покрытию;
не подвергать воздействию магнитных полей;
хранить в бумажном конверте при положительной температуре;
надписи на приклеенной к диску этикетке следует делать без нажима карандашом;
брать только за один угол защищенного конверта;
не мыть;
извлекать перед выключением ПК;
вставлять диск в дисковод и вынимать его только тогда, когда не горит сигнальная лампочка включения дисковода.
2.4.3.4 Накопители на жестких магнитных дисках
Первый жесткий диск создан задолго до появления персональных компьютеров. Его разработала в 1957 г. фирма IBM для системы сохранения данных RAMDAC 350. Размер рабочих дисков был равен 24 дюймам, емкость накопителя составляла 5 Мбайт, стоила система более 30 тыс. долл. В качестве накопителей на жестких магнитных дисках (НЖМД) широкое распространение в ПК получили накопители типа "винчестер".
Термин "винчестер" возник из жаргонного названия первой модели жесткого диска для компьютеров PC XT емкостью 1 Мбайт (IBM, 1973 г.), имевшего 30 дорожек по 30 секторов, что случайно совпало с калибром 30/30 известного в то время многозарядного карабина фирмы Winchester.
Конструктивно в этих накопителях один или несколько жестких дисков, изготовленных из сплавов алюминия или керамики, покрытых ферролаком. Вместе с блоком магнитных головок считывания-записи они помещены в герметически закрытый корпус. Емкость этих накопителей благодаря чрезвычайно плотной записи достигает нескольких тысяч мегабайт. Быстродействие их также значительно более высокое, нежели у НГМД.
НЖМД весьма разнообразны. Диаметр дисков чаще всего 3,5 дюйма (89 мм), но есть и другие, в частности 5,25 дюйма (133 мм) и 1,8 дюйма (45 мм). Наиболее распространенная высота корпуса дисковода 25 мм у настольных ПК, 41 мм – у машин-серверов, 13 мм – у портативных ПК и др.
Объем возможной для хранения на НЖМД информации определяется количеством цилиндров (дорожек на рабочей поверхности), головок (рабочих поверхностей) и секторов.
Цилиндр – это совокупность дорожек, к которым возможно обращение без перемещения головок.
В современных НЖМД используется метод зонной записи. В этом случае все пространство диска делится на несколько зон. Во внешних зонах размещается больше данных, чем во внутренних. Это позволило увеличить емкость жестких дисков примерно на 30 %.
Для того чтобы получить на магнитном носителе структуру диска, включающую в себя дорожки и сектора, над ним должна быть выполнена процедура, называемая физическим, или низкоуровневым, форматированием (physical, или low – level formatting). В ходе выполнения этой процедуры контроллер записывает на носитель служебную информацию, определяющую разметку цилиндров диска на сектора и нумерующую их. Форматирование низкого уровня предусматривает и маркировку дефектных секторов для исключения обращения к ним в процессе эксплуатации диска.
Для разделения ЖМД на логические диски используется логическое форматирование утилитой FDISK.
Максимальная емкость и скорость передачи данных существенно зависят от интерфейса, используемого накопителем.
2.4.3.5 Накопители на оптических дисках
В последние годы все большее распространение получают накопители на оптических дисках (НОД). Благодаря маленьким размерам (используются компакт-диски диаметром 3,5 и 5,25 дюйма), большой емкости и надежности эти накопители становятся все более популярными.
Неперезаписываемые лазерно-оптические диски обычно называют компакт-дисками ПЗУ (Compact Disk – CD-ROM). Эти диски поставляются фирмой-изготовителем с уже записанной на них информацией (в частности, с программным обеспечением). Запись информации на них возможна только вне ПК в лабораторных условиях лазерным лучом большой мощности, который оставляет на активном слое CD след-дорожку с микроскопическими впадинами. Таким образом создается первичный "мастер-диск". Процесс массового тиражирования CD-ROM по "мастер-диску" выполняется путем литья под давлением. В оптическом дисководе ПК эта дорожка читается лазерным лучом существенно меньшей мощности.
CD-ROM ввиду чрезвычайно плотной записи информации имеют емкость от 250 Мбайт до 1,5 Гбайт, время доступа в разных оптических дисках также колеблется от 30 до 300 мс, скорость считывания информации от 150 до 1500 кбайт/с.
Основными достоинствами НОД являются:
– сменяемость и компактность носителей;
– большая информационная емкость;
– высокая надежность и долговечность CD и головок считывания/записи (до 50 лет);
– меньшая (по сравнению с НМД) чувствительность к загрязнениям и вибрациям;
– нечувствительность к электромагнитным полям.
2.4.3.6 Накопители на магнитной ленте
Накопители на магнитной ленте были первыми ВЗУ вычислительных машин. В универсальных ЭВМ широко использовались и используются накопители на бобинной магнитной ленте, а в персональных ЭВМ – накопители на кассетной магнитной ленте.
Кассеты с магнитной лентой (картриджи) весьма разнообразны: они отличаются как шириной применяемой магнитной ленты, так и конструкцией. Объемы хранимой на одной кассете информации постоянно растут. Так, емкость картриджей первого поколения, содержащих магнитную ленту длиной 120 м, шириной 3,81 мм с 2ё4 дорожками, не превышала 25 Мбайт. В конце 80-х гг. прошлого века появились картриджи с большей плотностью записи на ленте шириной четверть дюйма (стандарты QIC-40/80). Последние модели таких картриджей (стандарт QIC 3010ё3020) имеют емкость 340, 680 и даже 840ё1700 Мбайт и более. При сжатии данных может быть достигнута еще большая емкость, например, НКМЛ Conner CTD 8000 имеет емкость 8 Гбайт, Sony DDS – 2ё16 Гбайт при трансферте 250 кбайт/с.
Лентопротяжные механизмы для картриджей носят название стримеров. Это инерционные механизмы, требующие после каждой остановки небольшой перемотки ленты назад (перепозиционирования). Такое перепозиционирование увеличивает и без того большое время доступа к информации на ленте (десятки секунд), поэтому стримеры нашли применение в персональных компьютерах лишь резервного копирования и архивирования информации с жестких дисков и бытовых компьютерах для хранения пакетов игровых программ.
Скорость считывания информации с магнитной ленты в стримерах также невысока и обычно составляет около 100 кбайт/с. НКМЛ могут использовать локальные интерфейсы SCSI.
Лекция 3. Программное обеспечение ПЭВМ
3.1 Общая характеристика и состав программного
обеспечения
3.1.1 Состав и назначение программного обеспечения
Процесс взаимодействия человека с компьютером организуется устройством управления в соответствии с той программой, которую пользователь разработал и ввел в память компьютера. На начальном этапе развития вычислительной техники это так и было. Пользователь представлял свои программы на машинном языке в виде двоичных кодов, а устройство управления в зависимости от их содержания подключало нужные электронные цепи и схемы.
По мере усложнения задач и повышения требований к параметрам ЭВМ появилась потребность в более гибком органе управления, чем существующее электронное устройство управления. И такой орган был найден. Так называемые системные управляющие программы благодаря своей гибкости взяли на себя большую часть функций устройства управления по организации процесса обработки информации на компьютере, оставив ему прежние полномочия в рамках возможностей соответствующих электронных схем.
Для примера рассмотрим некоторые режимы, которые должны организовать управляющие программы независимо от назначения программ пользователя. В режиме разделения времени необходимо организовать работу так, чтобы одновременно работали разные устройства и несколько пользователей. Режим реального времени потребовал от компьютера мгновенной реакции на поступающие в ходе технологического процесса внешние прерывания. Разные функции ЭВМ определяют специфику работы устройств управления, но уже не как электронного устройства, а как некоего органа, состоящего из программной и электронной частей.
Такой важный момент, как создание ''дружественной'' среды общения человека и компьютера, тоже заслуга целого комплекса специально разработанных программ, которые обеспечивают, с одной стороны, управление процессом обработки информации в самом компьютере, а с другой – необходимый сервис для работы пользователя. Процесс составления программ любой сложности на символическом языке, близком к математическим и логическим выражениям, тоже стал возможным только тогда, когда была создана специальная система программирования, состоящая из взаимосвязанных отдельных программ.
Таким образом создание компьютера – только первый шаг на пути компьютеризации общества. Перед математиками и программистами стоит задача разработать комплекс разнообразных и взаимосвязанных по своим функциям программ, так называемое программное обеспечение.
Программное обеспечение – это совокупность программ, позволяющих организовать решение задач пользователя на компьютере.
До недавнего времени программное обеспечение отождествляли с понятием математического обеспечения.
Математическое обеспечение – это математические методы, алгоритмы, обеспечивающие решение поставленной задачи.
Программное обеспечение является составной частью компьютера, и некоторая его часть поставляется вместе с технической аппаратурой.
Классификация программного обеспечения
Программные продукты можно классифицировать по различным признакам. Рассмотрим классификацию, в которой основополагающим признаком является сфера (область) использования программных продуктов.
Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов (рис. 3.1):
системное программное обеспечение;
пакеты прикладных программ;
инструментарий технологии программирования.
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ, направленное:
на создание операционной среды функционирования других программ;
обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т. д.).
Рис. 3.1. Классификация программного обеспечения по сфере
Использования
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты ориентированы в основном на квалифицированных пользователей – профессионалов в компьютерной области: системных программистов, администраторов сети, прикладных программистов, операторов. Однако знание базовой технологии работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютеров, программ и данных.
Программные продукты данного класса носят общий характер применения независимо от специфики предметной области. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Пакет прикладных программ (application program package) – это комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области; служит программным инструментарием решения функциональных задач и является самым многочисленным классом программных продуктов, выполняющих обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации, деятельность которых во многих случаях весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичными для отдельных предметных областей.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов:
Транслятор – это комплекс программ, обеспечивающих перевод программы, написанной на символическом языке, в совокупность машинных команд. В зависимости от функционального назначения транслятор может быть компилятором, интерпретатором, ассемблером или языковым процессором.
Компилятор – это транслятор, выполняющий перевод программы, написанной на алгоритмическом языке, в совокупность машинных команд без ее выполнения на компьютере.
Интерпретатор – транслятор, производящий перевод каждой конструкции алгоритмического языка в машинные команды и одновременное выполнение этих конструкций в компьютере.
Ассемблер – транслятор, переводит программы, записанные на машинно-ориентированном языке ассемблера в машинные коды.
Языковый процессор – это транслятор, объединяющий в себе функции компиляции, интерпретации и ассемблирования.
К категории инструментальных средств относятся не только трансляторы с языков высокого уровня, но и загрузчики, отладчики, иные системные программы.
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированные программные продукты, которые являются инструментальными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования, отладки и тестирования программ. Пользователями технологии программирования являются системные и прикладные программисты.
3.1.2 Система программирования
Даже при наличии десятков тысяч программ IBM PC пользователям может потребоваться что-то такое, чего не делают (или делают, но не так) имеющиеся программы. В таких случаях следует использовать системы программирования, т. е. системы для разработки новых программ. Современные системы программирования для персональных компьютеров обычно представляют собой весьма мощные и удобные средства для разработки программ, в них входят:
компьютер, осуществляющий электронное преобразование программ на языке программирования в программу в машинных кодах;
библиотеки программ, содержащие заранее подготовленные подпрограммы, которыми могут пользоваться программисты;
различные вспомогательные программы, например, отладчики, программы для получения перекрестных ссылок и др.
3.1.2.1 Языки программирования
Под языком понимают определенный набор символов и правил (соглашений), устанавливающих способы комбинации этих символов для записи осмысленных сообщений (текстов).
Все языки делят на естественные и искусственные.
Искусственный язык, предназначенный для записи программ, называется языком программирования.
В мире насчитывается несколько сотен символических языков программирования различных структур и возможностей. Но все их можно разделить на две большие группы: машинно-ориентированные и алгоритмические (рис. 3.2).
Рис. 3.2. Классификация языков программирования
Машинный язык представляет собой программу в машинных кодах. Например, машинный код для выполнения сложения C = A + B:
0011 10011010 10001001 10110011
операция адрес адрес адрес
сложения ячейки ячейки ячейки
операнда А операнда В операнда С
В символьном кодировании, за исключением машинного кода, используются символические обозначения операций и адресов операндов.
Пример:
C = A + B можно представить в виде команды:
СЛ A B C
Операция (+) адреса операндов
Вместо двоичных кодов, как в машинной команде, здесь используются условные обозначения, и команда имеет более простой вид. Такую группу языков называют языками символического кодирования. К ним относят Ассемблер, Макроассемблер, автокоды.
Алгоритмические языки – это набор символов и терминов, которые в соответствии с правилами синтаксиса описывают алгоритм решения задачи.
Языки профессиональных программистов – основная группа алгоритмических языков. К наиболее известным относят Фортран, Алгол, Кобол, ПЛ/1, Паскаль, Ада, Си, ЛИСП.
ФОРТРАН (FORmula TRANslation) является первым алгоритмическим языком; был создан в конце 50-х гг.; очень близкий по форме записи к математическим формулам. Существенный недостаток: он не обеспечивает надежности программирования из-за своей громоздкости и несовершенства логических возможностей. Программирование на Фортране можно сравнить с ездой на телеге по автостраде с оживленным автомобильным движением.
АЛГОЛ-60 (Algoritmic Language) появился в 1960 г., более гибок и надежен в программировании, чем Фортран, лежит в основе таких языков, как ПЛ/1, Паскаль, Ада.
Язык СИ изобретен в 1972 г. Денисом Ричи для использования при написании весьма популярной операционной системы Unix. В нем сочетаются свойства языка высокого уровня с возможностью эффективного использования ресурсов компьютера, которое обычно обеспечивается только при программировании на языке Ассемблера. Он не очень прост в обучении и требует тщательности в программировании, но позволяет писать сложные и высокоэффективные программы. Бьярном Страустрапом был разработан язык Си++ – расширенные языки Си, реализующие популярные в последнее время концепции объективно-ориентированного программирования и облегчающие создание сложных программ.
На IBM PC наибольшей популярностью пользуются реализации этого языка фирм Borland (Turbo C) и Mikrosoft (Mikrosoft C и Quik), а также фирмы Symantec (Zortech C). Многие из этих реализаций обеспечивают работу как с классическими Си, так и с Си++.
ПЛ/1(Programming Language One) разработан в США для использования в больших ЭВМ фирмы IBM и ЭВМ семейства ЕС. Это очень большой и сложный для изучения язык; применяется в основном для научных расчетов, обработки больших массивов информации.
АДА-язык, разработанный в 1979 г. по заданию министерства обороны США и названный в честь первой программистки Ады Лавлейс, дочери Дж. Байрона которая еще в XIX в. создавала первые программы для счетно-аналитической машины Ч. Бэбиджа. В нем заимствованы лучшие конструкции других языков, однако трансляторы получились очень сложными и работают медленно.
КОБОЛ (COmmon Businers Oriented) – язык, ориентированный на обработку коммерческой информации, создан в 1960 г.
ЛИПС (LISt Processing – обработка списков) разработан в конце 50-х гг. и является самым популярным языком для работ по искусственному интеллекту.
ПАСКАЛЬ создан в 1970 г. Это очень простой и компактный язык, его понятия близки к фундаментальным понятиям математики. По своей структуре и синтаксису среди существующих языков он наиболее совершенен.
Система программирования Turbo Pascal появилась несколько позже IBM PC (в середине 80-х гг. и подобно аппаратным средствам фирмы IBM завоевала такую же популярность в классе систем программирования. Объясняется это счастливым сочетанием двух безусловных ее достоинств: исключительной простотой и естественностью языка программирования Turbo Pascal (насколько вообще легче может быть простым и естественным язык программирования) и великолепными сервисными возможностями диалоговой среды программирования фирмы Borland.
Эта система относится к семейству Турбо-компиляторов, разработанных фирмой Borland International, Inc. (Турбо-Си, Турбо-Бейсик, Турбо-Пролог, Турбо-Ассемблер) и отличающихся высокой скоростью компиляции и, что самое главное, тщательно продуманной и очень удобной средой, создаваемой в них для программиста. При использовании традиционных компиляторов работа программиста строится по схеме: текстовый редактор – компилятор – компоновщик – прогон программы. При этом неизбежные многочисленные возвраты к текстовому редактору после компиляции, компоновки или прогона программы для устранения обнаруженных ошибок и необходимой коррекции исходного текста делают процедуру создания новой программы весьма утомительной.
При работе в среде Turbo Pascal пользователю нет необходи-мости покидать ее для вызова компилятора, компоновщика или для пробного прогона программы. С точки зрения пользователя Turbo Pascal – это фактически достаточно совершенный текстовый редактор, в котором предусмотрены средства компиляции и прогона программы. Переход от режима редактирования к компиляции – компоновке – прогону программы осуществляется нажатием на одну-две клавиши. При обнаружении системой ошибок в программе компиляция или прогон программы прекращается и на экран выводится исчерпывающая диагностика с указанием места ошибки. В сложных случаях пользователь может применить мощные средства диалогового отладчика, входящего в состав Turbo Pascal. Все это существенно увеличивает эффективность труда программиста, который, как показывает практика, может стабильно в течение нескольких месяцев составлять в среднем 100 и более строк отлаженной программы в день.
Разумеется не только среда, пусть даже весьма совершенная, послужила причиной широкой популярности Turbo Pascal. Не следует забывать, что в его основе лежит мощный язык программирования, представляющий собой значительно расширенную версию языка Turbo Pascal. Задуманный первоначально автором Н. Вином как средство обучения студентов современной методике структурного программирования этот язык в интерпретации фирмы Borland приобрел множество дополнительных свойств, позволяющих говорить о нем как о вполне современном универсальном языке программирования. Именно в Turbo Pascal, как ни в одном другом языке программирования, разумно сочетаются лаконизм и естественность синтаксиса с достаточно гибкими возможностями управления структурами данных и ходом вычислительного процесса.
Вторая группа языков не очень многочисленна. Ее основное достоинство – простые конструкции, доступные для понимания любому человеку. Составлением программ на таких языках (Бэйсик, АПЛ, Пролог) с удовольствием занимаются даже дети.
Особенно широкое распространение получил язык Бэйсик (Вeginner's ALL – purpose Symbolic Instruction Code – универсальный код символических инструкций для начинающих). Он был создан в 1964 г. Томасом Куртом и Джином Камени как язык для начи-нающих, облегчающий написание простых программ. Существуют сотни различных версий Бейсика, которые не полностью (а иногда и мало) совместимы друг с другом. Бейсик очень распространен на микрокомпьютерах, он легок для обучения, но мало подходит для написания больших и сложных программ. На IBM PC широко используется Quick Basik фирмы Microsoft и Turbo Basik фирмы Borland (усовершенствованная версия Turbo Basik распространяется под именем Power Basik фирмой Spektra Publishing).
Прикладное программирование
Класс программных средств для прикладного программирования наиболее представителен, что обусловлено, прежде всего, широким применением средств компьютерной техники во всех сферах деятельности человека, созданием автоматизированных информационных систем различных предметных областей.
Примерная классификация и типовые представители прикладного программного обеспечения представлены на рисунке 3.3.
Рис. 3.3. Классификация пакетов прикладных программ
Проблемно-ориентированные пакеты прикладного программирования (ППП) – самый представительный класс программных продуктов, внутри которого проводится классификация по разным признакам:
типам предметных областей;
информационным системам;
функциям и комплексам задач, реализуемых программным способом, и др.
Для некоторых предметных областей возможна типизация функций управления, структуры данных и алгоритмов обработки. Это вызвало разработку значительного числа ППП одинакового функционального назначения и, таким образом, создало рынок программных продуктов:
автоматизированного бухгалтерского учета;
финансовой деятельности;
управления персоналом (кадровый учет);
управления материальными запасами;
управления производством;
банковские информационные системы и т. п.
Основные тенденции в области развития проблемно-ориентированных программных средств:
создание программных комплексов в виде автоматизированных рабочих мест (АРМ) управленческого персонала;
создание интегрированных систем управления предметной областью на базе вычислительных сетей, объединяющих АРМы в единый программный комплекс с архитектурой клиент – сервер;
организация данных больших информационных систем в виде распределенной базы данных на сети ЭВМ;
наличие простых языковых средств конечного пользователя для запросов к базе данных;
настройка функций обработки силами конечных пользователей (без участия программистов);
защита программ и данных от несанкционированного доступа (парольная защита на уровне функций, режимов работы, данных).
ППП автоматизированного проектирования предназначены для поддержания работы конструктора и технологов, связанных с разработкой чертежей, схем, диаграмм, графическим моделированием и конструированием, созданием библиотеки стандартных элементов чертежей и их многократным использованием, созданием демонстрационных иллюстраций и мультфильмов.
Отличительной особенностью этого класса программных продуктов являются высокие требования к технической части системы обработки данных, наличие библиотек встроенных функций, объектов, интерфейсов с графическими системами и базами данных.
ППП общего назначения содержат широкий перечень программных продуктов, поддерживающих преимущественно информационные технологии конечных пользователей. Кроме конечных пользователей этими программными продуктами за счет встроенных средств технологии программирования могут пользоваться и программисты для создания усложненных программ обработки данных.
Представители программных продуктов общего назначения:
Серверы баз данных – успешно развивающийся вид программного обеспечения, предназначенный для создания и использования при работе в сети интегрированных баз данных в архитектуре клиент – сервер.
Генераторы (серверы) отчетов – самостоятельное направление развития программных средств, обеспечивающих реализацию запросов и формирование отчетов в печатном или экранном виде в условиях сети с архитектурой клиент – сервер.
Текстовые процессоры – автоматическое форматирование документов, вставка рисованных объектов и графики, составление оглавлений и указателей, проверка орфографии, шрифтовое оформление, подготовка шаблонов документов.
Табличный процессор – удобная среда для вычислений силами конечного пользователя; средства деловой графики, специализированная обработка (встроенные функции, работа с базами данных, статистическая обработка данных и др.).
Средства презентационной графики – специализированные программы, предназначенные для создания изображений и их показа на экране, подготовки слайд-фильмов, мультфильмов, видеофильмов, их редактирования, определения порядка следования изображений.
Интегрированные пакеты – набор нескольких программных продуктов, функционально дополняющих друг друга, поддерживающих единые информационные технологии, реализованные на общей вычислительной и операционной платформе.
Методно-ориентированные ППП включают программные продукты, обеспечивающие независимо от предметной области и функций информационных систем математические, статистические и другие методы решения задач.
Офисные ППП охватывают программы, обеспечивающие организационное управление деятельностью офиса:
1. Органайзеры (планировщики) – программное обеспечение для планирования рабочего времени, составления протоколов встреч, расписаний, ведения записной и телефонной книжек.
2. Программы-переводчики, средства проверки орфографии и распознавания текста включают:
программы-переводчики, предназначенные для создания подстрочника исходного текста на указанном языке;
словари орфографии, используемые при проверке текстов;
словари синонимов, используемые для стилевой правки текстов программы, распознавания считанной сканерами информации и преобразования ее в текстовое представление.
3. Коммуникационные ППП предназначены для организации взаимодействия пользователя с удаленными абонентами или информационными ресурсами сети.
Настольные издательские системы включают программы, обеспечивающие информационную технологию компьютерной издательской деятельности:
форматирование и редактирование текстов;
автоматическую разбивку текста на страницы;
создание заголовков;
компьютерную верстку печатной страницы;
монтирование графики;
подготовку иллюстраций и т. п.
Программные средства мультимедиа являются относительно новым классом ППП.
Основное назначение программных продуктов мультимедиа – создание и использование аудио- и видеоинформации для расширения информационного пространства пользователя.
Этот класс ППП сформировался в связи с несколькими факторами:
с изменением среды обработки данных;
появлением лазерных дисков высокой плотности записи, с хорошими техническим параметрами, по доступным ценам;
расширением состава периферийного оборудования, подключаемого к персональному компьютеру;
развитием сетевой технологии обработки;
появлением региональных и глобальных информационных сетей, располагающих мощными информационными ресурсами.
Системы искусственного интеллекта реализуют отдельные функции интеллекта человека. Их основными компонентами являются база знаний, интеллектуальный интерфейс пользователя и программа формирования логических выводов.
Разработка этих систем идет по следующим направлениям:
программы оболочки для создания экспертных систем путем наполнения баз знаний и правил логического вывода;
готовые экспертные системы для принятия решения в рамках определенных предметных областей;
системы анализа и распознавания речи и др.
3.2 Операционные системы
3.2.1 Общие сведения об операционных системах
Структура системного программного обеспечения – базового программного обеспечения, которое, как правило, поставляется вместе с компьютером, и сервисного программного обеспечения, которое может быть приобретено дополнительно, представлена на рисунке 3.4.
Базовое программное обеспечение (base software) – минимальный набор программных средств, обеспечивающих работу компьютера.
Сервисное программное обеспечение – программы и программные комплексы, которые расширяют возможности базового программного обеспечения и организуют более удобную среду работы пользователя.
Рассмотрим назначение программных продуктов, относящихся к базовому программному обеспечению.
Операционные системы.
Операционная система предназначена:
для управления выполнением пользовательских программ;
планирования и управления вычислительными ресурсами ЭВМ;
предоставления услуг пользователю.
Рис. 3.4. Классификация системного программного обеспечения
Операционные системы для персональных компьютеров делятся:
на одно- и многозадачные, в зависимости от числа параллельно выполняемых прикладных процессов;
одно- и многопользовательские, в зависимости от числа пользователей, одновременно работающих с операционной системой;
непереносимые и переносимые на другие типы компьютеров;
несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.
Наиболее традиционное сравнение ОС осуществляется по следующим характеристикам процесса обработки информации:
управление памятью;
функциональные возможности вспомогательных программ (утилит) в составе операционной системы;
наличие компрессии диска;
возможности архивирования файлов;
поддержка многозадачного режима работы;
наличие качественной документации;
условия и сложность процесса инсталляции.
Большое значение сегодня имеет применение 32-разрядных операционных систем для персональных компьютеров:
OS/2 во всех модификация (IBM);
Windows NT во всех модификациях (Microsoft);
Unix во всех модификациях;
Next Step 3.2 (Next);
SCO Open Desktop 3.0 1 (Sante Cruz Operation);
Solaris 2.1 (SunSoft) – x86;
UnixWare Personal Edition 1.0 (Novell).
По данным опроса пользователей программных продуктов, мнение респондентов относительно операционных систем распределилось, как указано в таблице 3.1.
Таблица 3.1
Тип операционной системы |
Пользователи, имеющие операционные системы | Считают лучшими |
MS-DOS | 62,4 % | 18,8 % |
WINDOWS | 52,8 % | 23,1 % |
OS/2 | 14,1 % | 12,5 % |
NETWERA | 10,2 % | 6,8 % |
UNIX | 7,9 % | 5,4 % |
Операционная система MS-DOS (фирма Microsoft) (рис. 3.5).
Предшественником MS-DOS была ОС DOS-89. В то время наиболее популярной системой для микрокомпьютеров на базе Intel 8080 и Zilog Z-80 была ОС CP/М-80 фирмы Digital Research. Эта система обеспечивала доступ к разнообразным средствам прикладного программного обеспечения (текстовым процессорам, администраторам баз данных и т. д.)
В октябре 1980 г. компания IBM предложила фирмам, занимающимся разработкой ПО для микрокомпьютеров, начать поиск операционной системы для нового семейства персональных компьютеров. Фирма Microsoft не могла предложить собственной операционной системы за исключением автономной версии Microsoft BASIC, однако она заплатила фирме Seattle Computer Products за право продавать систему Питерсона DOS-86. За это Seattle Computer Products получила лицензию на право использовать и продавать языки программирования и все версии операционной системы для микропроцессора 8086, разработанные фирмой Microsoft. В июле 1981 г. Microsoft приобрела все права на систему DOS-86, значительно переработала ее и дала название MS-DOS. Осенью 1981 г. появились первые компьютеры IBM PC, фирма IBM предложила для них в качестве основной операционную систему MS-DOS, названную PS-DOS 1.0. Кроме того, фирма IBM выбрала для микрокомпьютеров РС в качестве альтернативны операционные системы СР/М-86 (фирмы Digital Research) и P-system (фирмы Softech). Однако обе эти системы имели ряд недостатков: обладали малым для IBM PC быстродействием, высокой стоимостью, отсутствием доступных языков программирования. Окончательно чаша весов склонилась в пользу системы PC-DOS после того, как фирма IBM с ее помощью реализовала все прикладные программные средства для IBM PC, а также инструментарий, работающий под их управлением. Поэтому с самого начала разработчики программного обеспечения ориентировались на PC DOS, а системы CP/M-86 и P-system не заняли сколько-нибудь значительного места на рынке программного обеспечения для IBM PS.
Фирма IBM была единственным крупным производителем компьютеров, которая оснастила свою продукцию системой MS-DOS (версия 1.0), названной PS-DOS 1.0. Система MS-DOS версия 1.25
Рис. 3.5. Этапы развития системы MS-DOS
(эквивалентная системе фирмы IBM PC DOS 1.1) была опубликована в июне 1982 г. В ней исправлено несколько ошибок. Кроме того, она поддерживала работу двухсторонних дисков и аппаратную независимость ядра DOS. Эту версию системы DOS использовали в своей продукции, кроме IBM, и другие фирмы: Texas Instruments, COMPAQ, Columbia, которые вышли на рынок персональных компьютеров раньше. Из-за резкого снижения цен на ОЗУ и жесткие диски популярность системы MS-DOS (версия 1) была недолгой.
Система MS-DOS версии 2.0 (эквивалентная PC-DOS 2.0) впервые опубликована в марте 1983 г. Оглядываясь назад, можно сказать, что это была принципиально новая операционная система, хотя при ее создании было сделано все возможное для сохранения совместимости с системой MS-DOS 1.0. Эта система содержала много принципиальных новшеств и отличительных черт:
– поддержку гибких дисков большого объема и жестких дисков.
– большое количество черт, напоминающих системы UNIX/XE-NIX, включая иерархическую структуру файлов, дескрипторы файлов, перенаправление ввода-вывода, конвейеры и фильтры.
– фоновую печать (буферизацию печати);
– метки тома, а также дополнительные атрибуты файлов;
– устанавливаемые драйверы внешних устройств;
– настраиваемый пользователем файл конфигурирования системы, который осуществляет управление загрузкой дополнительных драйверов внешних устройств;
– поддержку блоков кружения (конкретных блоков), которые можно использовать для обмена информацией между программами;
– необязательный драйвер дисплея ANSI, который позволяет программам задавать положение курсора и осуществляет управление характеристиками дисплея аппаратно-независимым образом;
– обеспечение динамического распределения памяти, ее модификации и освобождения прикладными программами;
– поддержку настраиваемых пользователем командных интерпретаторов (оболочек);
– системные таблицы для поддержки прикладного программного обеспечения при модификации так называемых национальных форм (обозначение денежных знаков, времени и даты).
Представленная позже система MS-DOS версии 2.11 существенно улучшила использование национальных форматов (табличное управление символами денежных знаков, форматы даты, символы десятичной точки, разделители денежных знаков и т. п.). В ней поддерживаются 16 бит представления иероглифов, исправлено несколько ошибок. Версия 2.11 быстро стала базовой для персональных компьютеров с процессором 8086/8088, выпуск которых был освоен всеми основными фирмами-изготовителями комплексного оборудования, включая Hewlett-Packard, Wang, Digital Equipment Corporation, Texas Instruments, COMPAQ и Tandy.
Система MS-DOS версии 2.25, опубликованная в сентябре 1985 г., получила широкое распространение в странах Юго-Восточной Азии, но никогда не поставлялась в США и страны Европы. В этой версии расширено национальное обеспечение в части японских и корейских символов, исправлены некоторые ошибки. Многие системные утилиты стали совместимыми с системой MS-DOS (версия 3.0).
Система MS-DOS версии 3.0 впервые представлена фирмой IBM в августе 1984 г. в момент начала впуска компьютеров IBM PC/AT на базе процессора 80286. Это была еще одна во многом переписанная операционная система, имевшая новые важные особенности:
непосредственное управление спулером печати прикладными программами;
дальнейшее расширение национальных форматов при обозначении денежных знаков;
расширение сообщения об ошибках, включая код ошибки, который предлагает прикладной программе методику ее исправления;
поддержка захвата и разделения файлов и их записей;
поддержка жестких дисков большого объема;
Система MS-DOS версии 3.1, опубликованная в ноябре 1984 г., оснащена средствами разделения файлов и устройств печати через локальную сеть. Начиная с версии 3.1, новый модуль операционной системы, названный моделью перенаправления, перехватывает запросы прикладных программ на ввод-вывод и фильтрует из них те, которые направлены к устройствам локальной сети, пропуская эти запросы к другой машине для выполнения.
Модификации системы MS-DOS (3.1 и старше) носят скорее эволюционный, чем революционный характер. В версии 3.2, которая появилась в 1986 г., обобщено определение драйверов устройств, что значительно упростило средства поддержки новых магнитных носителей, таких как гибкий диск размером 3,5 дюйма. Система MS-DOS (версия 3.3), выпущенная в 1987 г. одновременно с началом выпуска персональных компьютеров IBM нового семейства PS/2, оснащена еще более мощными средствами поддержки работы клавиатуры на нескольких иностранных языках, включая соответствующие наборы символов печатающего устройства и шрифтов дисплея. Возможности версии 4.0, впервые представленной в 1988 г., значительно возросли благодаря оболочке визуального представления и средствам поддержки файловых систем очень больших размеров.
Одновременно с развитием системы MS-DOS фирма Microsoft вела интенсивные разработки в области пользовательских интерфейсов и многозадачных операционных систем. Пакет Microsoft Windows, впервые примененный в 1985 г., позволил MS-DOS реализовать многозадачный режим и режим графического "рабочего стола" пользователя. Он завоевал широкую популярность среди разработчиков сложных прикладных графических программ, таких как система подготовки издательских оригиналов, система автоматизированного проектирования (САПР). Последнее объясняется тем, что пакет позволяет использовать в программах все достоинства любого имеющегося в наличии устройства вывода без какой-либо аппаратной зависимости.
Каковые перспективы развития системы MS-DOS? Можно предположить, что система MS-DOS, требующая относительно небольшой памяти, легко адаптируемая к разнообразным аппаратным конфигурациям и имеющая громадное число пользователей, останется популярной среди программистов и издателей программного обеспечения в течение ближайшего будущего.
Операционная система OS/2 разработана фирмой IBM для персональных компьютеров на основе системной прикладной архитектуры, ранее используемой для больших ЭВМ. Это многозадачная, однопользовательская, высоконадежная операционная система. OS/2 обеспечивает:
одновременную обработку нескольких приложений;
текстовой и графический интерфейс пользователя;
многопоточную обработку нескольких задач одного приложения;
32-разрядную обработку данных;
сжатие данных при записи на магнитные диски;
защиту памяти.
Важными особенностями операционной системы OS/2 явля-ются высокопроизводительная файловая система HPFS (High Perfomance System), имеющая преимущества для серверов баз данных (в отличие от MS-DOS поддерживаются длинные имена файлов), поддержка мультипроцессорной обработки (до 16-ти процессоров типа INTEL и Power PC). Версия OS/2 Warp работает с мультисредой и имеет встроенный доступ в сеть Internet, систему распознавания речи VoiceType, интегрированную версию Lotus Notes Mail для передачи через Internet электронной почты. В OS/2 могут выполняться прикладные программы Windows 3.1 и Win32s, но не могут выполняться приложения, работающие в среде Windows 95 или Windows NT. Спецификация Open 32 позволяет поставщикам программного обеспечения переносить его на новую платформу.
Сетевые операционные системы – это комплекс программ, обеспечивающий обработку, передачу и хранение данных в сети.
Сетевая ОС предоставляет пользователям различные виды сетевых служб (управление файлами, электронная почта, процессы управления сетью и др.), поддерживает работу в абонентских системах, использует архитектуру клиент–сервер. Вначале сетевые операционные системы поддерживали лишь локальные вычислительные сети (ЛВС), сейчас они распространяются на ассоциации локальных сетей. Наибольшее распространение имеют LAN Server, NetWare, VINES, Windows NT, Windows 95.
Они оцениваются по комплексу критериев: производительность, разнообразие возможностей связи пользователей, администрирования.
Перспективной является многопользовательская и многозадачная операционная система Unix, созданная корпорацией Bell Laboratory. Данная операционная система реализует принцип открытых систем и широкие возможности по комплексированию в составе одной вычислительной системы разнородных технических и программных средств.
Unix обладает важными качествами:
возможность переноса прикладных программ с одного компьютера на другой;
поддержка распределенной обработки данных в сети ЭВМ;
сочетаемость с процессорами RISC.
Unix получила распространение для суперкомпьютеров, рабочих станций и профессиональных персональных компьютеров, имеет большое количество версий, разработанных различными фирмами. Согласно прогнозам объем мирового рынка вычислительных систем, базирующихся на ОС Unix, будет существенно возрастать, особенно с переходов к сетевым технологиям.
Операционная система Windows 95 – популярная графическая ОС, которая запускается на выполнение, как обычная программа MS-DOS. Windows работает на базе MS-DOS, и в совокупности с ней образует полноценную ОС. Наряду с Windows существуют и другие ОС с аналогичным пользовательским интерфейсом для компьютеров различных классов.
Следует назвать те концептуальные черты Windows, благодаря которым она получила широкое распространение и, по заявлению фирмы Microsoft, изменит способ работы с ПЭВМ:
Мультизадачный режим работы.
Различают два типа мультизадачности: кооперативную и преемптивную (с разделением времени).
При кооперативном мультизадачном режиме ОС не выполняет полноценный контроль за распределением ресурсов.
При преемптивном мультизадачном режиме каждая задача получает фиксированный квант времени процессора. По истечении этого кванта времени система вновь получает управление, чтобы выбрать другую задачу для активизации. Если возникает системное событие (завершение ввода-вывода) или задача обращается к системе до истечения ее кванта времени, то это также служит причиной передачи управления системе и последующего переключения задач.
Оптимальное управление ресурсами компьютера.
Графический пользовательский интерфейс.
Наличие техники связывания и встраивание объектов других программ.
Возможность работы в сетевой среде.
Интерфейс мультимедиа.
Операционная система Windows NT является многозадачной, предназначенной для архитектуры клиент–сервер и использования различных протоколов транспортного уровня сетевой операционной системы, имеет 32-разрядную архитектуру и обеспечивает функции локальной сети:
возможность каждой абонентской системы в сети быть сервером или клиентом;
совместную работу группы пользователей;
адресацию оперативной и внешней памяти большого раз-мера;
многозадачность и многопоточность обработки данных;
поддержку мультипроцессорной обработки и др.
Операционные оболочки – это специальные программы, предназначенные для облегчения общения пользователя с командами операционной системы.
Операционные оболочки имеют текстовый и графический варианты интерфейса конечного пользователя.
Наиболее популярны следующие виды текстовых оболочек операционной системы MS-DOS: Norton Commander 5.0, Norton Navigator, Windows Commander, FAR.
Эти программы существенно упрощают задание управляющей информации для выполнения команд операционной системы, уменьшают напряженность и сложность работы конечного пользователя.
Во всем мире имеют огромную популярность такие графические оболочки MS-DOS, как Windows 9x, которые позволяют изменить среду взаимодействия пользователя с компьютером, расширяют набор основных (диспетчер файлов, графический редактор, текстовый редактор, картотека и т. п.) и сервисных функций, обеспечивающих пользователю интегрированную информационную технологию, вплоть до создания локальных одноранговых сетей.
3.2.2 Состав и структура операционной системы MS-DOS
В состав MS-DOS входят следующие компоненты (рис. 3.6):
системный загрузчик SB (System Bootstrap, Boot record);
несистемный загрузчик NSB (Master Boot Record, Non System Bootstrap);
модуль расширения EM BIOS (Extension Module);
базовый модуль BM (Basic Module) MS-DOS;
интерпретатор команд CI (Command Interpreter), или командный процессор;
внешние (устанавливаемые) драйверы устройств;
утилиты DOS;
оболочка MS-DOS Shell ;
инструментальные средства.
Рис. 3.6. Основные модули DOS
Часто полагают, что в состав DOS входит также базовая система ввода-вывода (BIOS – Basic Input/Output System), которая находится в постоянном или полупостоянном запоминающем устройстве каждого IBM-совместимого компьютера. Несмотря на то что она не входит в поставку DOS, с этим можно согласиться, однако необходимо помнить, что BIOS является неотъемлемой частью ПК и может рассматриваться как компонент любой операционной системы, запускаемой на данном ПК.
Внесистемный загрузчик NSB (Non System Bootstrap, Master Boot Record), размещенный на жестком диске командой FDISK.exe, также может считаться компонентом как DOS, так и любой другой операционной системы, способной функционировать на данном компьютере.
Все компоненты DOS, исключая BIOS, размещаются на одном или нескольких магнитных дисках в специальных областях и файлах. Один из дисков обеспечивает занесение DOS в память и запуск ее в работу. Этот процесс называется загрузкой DOS, а диск, с которого возможна загрузка системы, называется системным. На структуру системного диска накладываются определенные ограничения, связанные с порядком размещения на нем важнейших файлов DOS.
Здесь и в дальнейшем, если не приводятся необходимые уточнения, под диском понимается как жесткий, так и гибкий диск.
Описание функций и постоянного местонахождения перечисленных компонентов DOS содержится в таблице 3.2.
Таблица 3.2
Компонента | Местонахождение | Функции | ||
при загрузке |
в процессе работы |
|||
BIOS | ПЗУ |
загрузка драйверов стандартных устройств; тестирование оборудования; инициализация векторов прерывания нижнего уровня; считывание NSB |
Управление стандартными ПУ | |
NSB |
Стартовый сектор физического жесткого диска: 1-й сектор, 0-я головка, 0-я дорожка |
Считывание в память SB и запуск | ||
SB | Стартовый (0) сектор каждого логического диска | Считывание в память и запуск EM BIOS и BM-DOS | ||
EM BIOS | Файл IO.sys |
определение состояния оборудования и установка в исходное состояние включенных ПУ; подключение драйвера сжатия дисков DBLSPACE.bin; конфигурирование MS-DOS по указаниям в файле Config.sys. Подключение внешних драйверов и установка параметров системы; запуск BM-DOS |
организация интерфейса с BIOS; расширение возможностей BIOS |
|
Внешние драйверы устройств | Отдельные файлы |
управление нестандартными ПУ; управление стандартными ПУ |
||
BM-DOS |
Файл MS-DOS.sys |
инициализация векторов прерывания верхнего уровня; инициализация своих внутренних таблиц; считывание в память и запуск CI |
Управление ресурсами ЭВМ и выполняемыми программами | |
CI | Файл Command.com |
Инициализация трех векторов прерывания, которые он обрабатывает; Выполнение файла Autoexec.bat. |
прием команд MS-DOS с клавиатуры; выполнение внутренних команд; загрузка программ в память для выполнения; обработка прерываний по завершению задач |
|
Утилиты | Отдельные файлы |
выполнение внешних команд; реализация сервисных услуг в интерактивном режиме |
В процессе функционирования системы BIOS реализует наиболее простые и универсальные функции DOS по управлению стандартными (основными) периферийными устройствами (ПУ), в частности, по организации ввода-вывода.
Выделение BIOS в отдельный компонент позволяет ''скрыть'' архитектурные особенности конкретной модели ПК и обеспечить независимость программного обеспечения от ПУ.
BIOS содержит:
1) драйверы стандартных ПУ;
2) тестовые программы для контроля работоспособности оборудования;
3) программу начальной загрузки.
Драйверы стандартных устройств – это программа, обслуживающая некоторые ПУ.
Драйвер выполняет следующие функции:
принимает запросы на обращение к ПУ;
преобразует запросы в команды управления устройством с учетом всех деталей конструкции и особенностей работы устройства в реальном масштабе времени;
обрабатывает прерывания обслуживаемого ПУ. Следовательно, драйвер является промежуточным звеном (посредником) между обращающимися к ПУ программами и самим ПУ.
Наряду с реальными, драйвер может обслуживать и виртуальные устройства, т. е. имитировать физические ПУ с использованием других компонентов ПК (оперативной и внешней памяти). Драйверами считаются также программы, обеспечивающие управление дополнительной памятью компьютера.
Программа начальной загрузки (BIOS) – первичный загрузчик –является системнонезависимой и способна запускать в работу любую операционную систему на данном ПК.
Доступ к средствам BIOS осуществляется главным образом через аппарат прерываний. Она совместно с модулем расширения (EM BIOS) обрабатывает семейство прерываний, называемых прерываниями нижнего уровня (услуги BIOS считаются низкоуровневыми).
Таким образом, BIOS – это самый нижний, наиболее близкий к оборудованию, компонент DOS.
NSB – вторичный загрузчик, обеспечивает загрузку с жесткого диска одной из отмеченных специальным образом операционных систем (обычно это DOS).
SB – системный загрузчик ориентирован строго на DOS и способен обеспечивать загрузку только данной системы. Он имеется на каждом диске, подготовленном для работы в среде DOS, даже если диск не является системным.
Все три загрузчика считываются в память и выполняются строго последовательно. Если загрузка DOS производится с гибкого магнитного, а не жесткого диска, то первичный загрузчик считывает непосредственно SB и передает ему управление.
EM BIOS в процессе функционирования DOS является надстройкой над BIOS, модифицируя и/или дополняя ее возможности.
При загрузке DOS данным модулем обеспечивается возможность как логической замены драйверов, хранящихся в BIOS, так и подключения новых драйверов. Необходимость в этом возникает при изменении конфигурации ПУ (BIOS гораздо консервативнее самой DOS) и потребности в использовании имеющихся ПУ нестандартным образом.
Драйверы могут находиться как внутри EM BIOS, так и вне его, т.е. храниться в отдельных файлах. В первом случае они называются внутренними (основными), а во втором – внешними (устанавливаемыми). Наряду с внутренними драйверами EM BIOS содержит ряд управляющих блоков и таблиц.
Внутренние драйверы подключаются к системе при загрузке DOS автоматически, а внешние – по указаниям в файле конфигурации системы CONFIG.SYS. Исключение составляет один из внешних драйверов, а именно драйвер DBLSPACE.BIN, управляющий сжатыми логическими дисками, который подключается к системе автоматически (при условии, что он обнаружен на своем законном месте), причем до обработки файла CONFIG.SYS. Если сжатые логические диски отсутствуют, то подключение драйвера DBLSPACE.BIN не производится, в результате чего освобождается дополнительное пространство для выполнения программ. Когда драйвер на своем месте не обнаружен, то DOS обходится и без него, не отображая никаких, даже предупреждающих, сообщений. Раннее автоматическое подключение этого драйвера позволяет хранить практически все файлы DOS на сжатом диске, получающем имя С.
Некоторые драйверы нежелательно помещать в BIOS или в его расширение по той причине, что они используются не на каждой модели ПК и не каждым пользователем. В этом случае драйверы оформляются как внешние и подключаются только при необходи-мости, что повышает эффективность DOS. Возможность подключения внешних драйверов существенно облегчает адаптацию системы к новым ПУ, не требуя модификации основных ее компонентов.
Если файл CONFIG.SYS отсутствует, то никакие внешние драйверы, за исключением упомянутого драйвера, к системе не подключаются, а параметры DOS устанавливаются по умолчанию.
Драйверы из BIOS, EM BIOS и подключенные внешние драйверы можно рассматривать как единое целое, которое называется подсистемой ввода-вывода. Она содержит драйверы, одни из которых являются обязательными, другие – факультативными.
Драйверы подсистемы ввода-вывода:
накопители на гибких и жестких магнитных дисках;
дисплея и клавиатуры;
принтера; адаптеров интерфейсов (последовательных и параллельных портов);
фиктивного устройства (вывод в это устройство воспринимается, но данные отбрасываются; при попытке ввода с этого устройства немедленно опознается конец файла);
виртуального диска (имитатора в оперативной памяти реального диска);
расширенной, отображаемой, высокой и верхней памяти;
подсистемы управления энергопотреблением;
подсистемы межкомпьютерной связи;
для управления сжатыми дисками;
кэширования дисков;
подмены версии DOS.
Часто к DOS могут подключаться не входящие в состав системы внешние драйверы, в частности, драйвер манипулятора типа ''мышь''.
NSB, SB и подсистема ввода-вывода образуют машинозависимую часть DOS.
BM-DOS – это центральный компонент DOS, реализующий основные функции операционной системы.
Управление ПУ с помощью BM DOS осуществляется на более высоком уровне, чем управление посредством драйверов на основе организации обращений к драйверам. Именно здесь находится файловая система, обеспечивающая выполнение операций над файлами. Основание этой системы образует подсистема ввода-вывода. Файловая система является наиболее развитой функциональной частью DOS.
Основу BM DOS составляют обработчики прерываний верхнего уровня. Обращение к BM DOS возможно только через механизм прерываний. Именно прерывания верхнего уровня выдают большинство программ, работающих под управлением DOS. Обработчики этих прерываний, в свою очередь, могут генерировать прерывания нижнего уровня.
Компоненты подсистемы ввода-вывода, загружаемые с диска, и BM DOS в процессе работы системы находятся в оперативной памяти постоянно (резидентно).
В то время как BIOS, EM BIOS и BM DOS в совокупности управляют ресурсами компьютера, интерпретатор команд CI отвечает за поддержку пользовательского интерфейса DOS.
Пользователь общается с системой путем передачи ей команд, которые она в состоянии проинтерпретировать. Под командой традиционно понимается указание на выполнение некоторого действия.
Файл автозапуска AUTOEXEC.BAT, исполняемый CI в процессе загрузки системы, включает команды DOS и запросы на выполнение программ, которые пользователь должен регулярно выдавать после запуска DOS в работу (например для загрузки резидентных программ). Это освобождает пользователя от частого выполнения рутинных операций. Если файл AUTOEXEC.BAT отсутствует, то CI выдает запросы на установку даты и времени.
CI состоит из двух модулей: резидентного и транзитного.
Резидентный модуль хранится после запуска DOS в оперативной памяти постоянно и включает обработчики трех важных прерываний, а также код подгрузки транзитного модуля CI.
Транзитный (нерезидентный) модуль может перекрываться в оперативной памяти выполняемыми программами, а затем восстанавливаться путем считывания с диска. Этот модуль содержит исполнитель так называемых внутренних команд DOS и загрузчик программ в оперативную память для выполнения.
Внутренними являются команды DOS, которые обычно используются чаще других.
Доступ к CI осуществляется по прерываниям от клавиатуры и другим программным прерываниям, которые он обслуживает.
Дополнительно к тому, что уже отмечалось, EM BIOS, BM DOS и CI содержат коды инициализаций, выполняемые только при загрузке DOS и затем уничтожаемые для освобождения памяти.
Утилиты – это обслуживающие программы, которые предоставляют пользователю сервисные услуги. Утилиты DOS делятся на две категории:
1) не диалоговые утилиты, к которым относятся также утилиты, способные выдавать пользователю ряд простых запросов, но не поддерживающие высокоразвитый пользовательский интерфейс;
2) интерактивные утилиты, имеющие развитый полноэкранный, организованный в виде меню интерфейс.
Очевидно, выполненное разделение весьма условно, но без него трудно отдать дань традиции в трактовке внешней команды DOS.
Внешней командой DOS считают команду, реализуемую утилитами первой или второй категории, но в не диалоговом режиме. Внешней команда именуется потому, что она реализуется не CI, а отдельной программой – утилитой. Внешние команды дополняют пользовательский интерфейс системы. DOS имеет вполне определенный перечень внешних команд.
Оболочка MS-DOS Shell – это надстройка над CI, внешне напоминающая Windows, которая упрощает работу пользователя в среде DOS и предоставляет ему ряд дополнительных возможностей.
Достоинствами оболочки MS-DOS Shell являются:
возможность выделения файлов для групповых операций в различных каталогах, применения групповых операций к найденным файлам;
поддержка создания и использования высокоразвитого меню программ;
обеспечение переключения задач;
компактность резидентного кода (около 4,5 кбайт).
Недостатки MS-DOS Shell:
отсутствие поддержки манипулирования поддеревьями файловой структуры;
невозможность работы с архивами;
слабые средства визуализации файлов.
Несмотря на наличие неоспоримых достоинств, оболочка MS-DOS Shell не пользуется заметной популярностью.
К инструментальным средствам DOS принадлежат:
система программирования MS-DOS QBasic (Quick Basic), построенная на основе интерпретации;
отладчик Debug, позволяющий тестировать и отлаживать исполняемые файлы;
текстовый редактор MS-DOS Editor, обеспечивающий подготовку исходных программ, а также простых текстовых доку-ментов.
BM DOS, CI, утилиты, оболочка и инструментальные средства DOS составляют ее машинонезависимую часть. Конечно, понятие "машинонезависимость" весьма условно, поскольку в любом случае необходим микропроцессор, совместимый с микропроцессором 8086/88 фирмы Intel. Именно эти и более совершенные микропроцессоры применяются в IBM-совместимых ПК.
Не все компоненты DOS, размещаемые в файлах, необходимы для того, чтобы DOS была в состоянии работать. Их отсутствие лишь ограничивает функциональные возможности системы.
Минимальная конфигурация MS-DOS включает: EM BIOS (файл IO.SYS), BM DOS (файл MSDOS.SYS) и CI (файл COMMAND.COM), если не принимать во внимание BIOS, NSB и BR.
Ограничения, накладываемые на структуру системного диска:
файлы IO.SYS и MSDOS.SYS регистрируется на первой и второй позициях корневого каталога системного диска соответственно (первой здесь считается позиция элемента корневого каталога, следующая за стандартным обязательным элементом, обозначаемым точкой);
файл COMMAND.COM находится в любом месте корневого каталога системного диска;
если имеются файлы DBLSPACE.BIN, CONFIG.SYS и AUTOEXEC.BAT, то они также должны содержаться в корневом каталоге системного диска.
Если в файле CONFIG.SYS сделать специальное указание командой SHELL, то файл COMMAND.COM можно разместить в любом каталоге системного диска или любом другом месте диска, если он доступен (является "установленным") во время загрузки DOS.
Остальные файлы DOS могут располагаться в любых каталогах каких угодно дисков. Однако необходимо хранить их в единственном каталоге жесткого диска.
Приведенные ограничения справедливы только в том случае, когда системный диск не сжат компрессором DoubleSpace. Если эта операция произведена, то в корневом каталоге несжатой части системного диска должны оставаться только файлы IO.SYS, MSDOS.SYS и DBLSPACE.BIN, а также еще не упоминавшийся файл конфигурации компрессора, создаваемый им автоматически и имеющий имя DBLSPACE.INI. Файлы COMMAND.COM, CONFIG.SYS и AUTOEXEC.BAT будут считываться из корневого каталога соответствующего сжатого логического диска, поэтому они обязаны находиться именно в нем, если в каждом из данных файлов есть необходимость. Объясняется это тем, что после подключения к системе драйвера DBLSPACE.BIN имя привода, закрепленное за системным диском, присваивается сжатому логическому диску, а сам системный диск получает другое имя. Например, если загрузка производится с диска С:\ и он сжат компрессором DoubleSpace, то при подключении драйвера DBLSPACE.BIN имя С:\ получает сжатый диск, созданный на диске C:\, и загрузка естественным образом продолжается с него.
Несмотря на сказанное, необходимо хранить копии файлов COMMAND.COM, CONFIG.SYS и AUTOEXEC.BAT также и в корневом каталоге несжатой части системного диска. Если последняя рекомендация выполнена, то ПК можно будет загрузить даже тогда, когда доступ к сжатому логическому диску становится невозможным в случае возникновения на нем логических дефектов. После загрузки DOS недоступность сжатого логического диска станет очевидной, и пользователь сможет предпринять адекватные возникшей ситуации меры.
3.3 Операционная система MS-DOS
3.3.1 Логическая структура дисков
Все винчестеры и флоппи-диски, поддерживаемые MS-DОS, за рядом исключений имеют сходный логический формат.
Под логическим форматом понимается то, что на диске резервируются определенные области для хранения служебной информации, необходимой операционной системе для работы с этим устройством.
Процесс создания и заполнения этих областей носит название логического форматирования.
Для создания логической структуры диска используются специальные программы, входящие обычно в состав операционной системы или существующие как независимые утилиты. Содержимое создаваемых областей может полностью или частично заполняться и изменяться не только во время форматирования, но и в процессе последующей работы с данным диском.
3.3.1.1 Логическая структура гибкого магнитного диска
Практически каждый диск содержит следующие области: загрузочная запись или сектор BR (Boot Record), две (одну) таблицы размещения файлов (FAT – File Allocation Table), корневой каталог RD (Root Directory) и область данных DA (Data Area) (рис. 3.7, 3.8).
Рис. 3.7. Логическая структура гибкого магнитного диска
Рис. 3.8. Структура системной области
Загрузочный сектор BR (SB) (рис. 3.9) каждого диска занимает по определению только один сектор и хранится в логическом секторе 0. В нем содержится некоторая информация о диске и небольшая программа IPL (2) (Initial Program Loading 2). Почему именно 2, а не 1, будет ясно из дальнейшего объяснения. Первым байтом этого сектора должен быть либо код безусловного перехода JMP (E9h) с последующим 16-битным смещением, либо код "короткого" (short) перехода JMP (EBh) с 8-битным смещением, причем третьим байтом в этом случае является код операции NOP (90h). Заканчивается сектор определенной кодовой комбинацией – сигнатурой (AA55h). Сразу за инструкцией JMP в этом секторе следует 8-байтное поле, резервируемое для идентификации имени и версии OEM (Original Eguipment Manufacturer). Программы форматирования традиционно записывают здесь ASCII-строку, содержащую марку и версию используемой операционной системы или наименование пакета, например MSDOSn.n либо PCTools.
Рис. 3.9. Структура загрузочного сектора
Безусловно, главным компонентом сектора BR является так называемый блок параметров BIOS BPB (BIOS Parameter Block). Это важнейшая структура данных, содержащая важную информацию: тип носителя (media descriptor), количество используемых байт на сектор и секторов на кластер, количество копий FAT и др.
Последний элемент сектора BR – это программа IPL2. Начальная инструкция JMP в этом секторе выполняет переход на точку входа именно этой программы.
Таблица размещения файлов располагается непосредственно после загрузочной записи и имеет переменный размер (в секторах). FAT используется для хранения сведений о размещении файлов на диске. Эта таблица состоит из элементов (12- или 16-битных), каждый из которых соответствует определенному участку дискового пространства и соответствующим кодом характеризует его состояние: занят, свободен или имеет дефект. В самом начале каждой таблицы FAT (первый элемент) хранится дескриптор (media descriptor), определяющий тип носителя (например для жесткого диска – F8h).
Минимальным элементом, которым MS-DOS оперирует при работе с дисками, является не сектор, а кластер. Кластеры состоят из нескольких секторов (2, 4 и т. д.).
Для дисков с магнитным носителем обычно используется две копии FAT, которые следуют одна за другой. Содержимое их полностью дублируется.
Корневой каталог диска всегда занимает строго фиксированное место – сразу за последней таблицей FAT. Он состоит из ограниченного числа 32-байтных записей, каждая из которых содержит информацию о файле или другом каталоге (подкаталоге), а также метке диска.
Корневая директория включает список всех файлов на дискете, его элементы содержат всю информацию о файле, за исключением сведений о размещении файла, которые хранятся в таблице размещения файлов. Любой элемент имеет длину 32 байт и включает восемь полей (все они выравниваются по левой границе, пустые байты заполняются пробелами):
1) имя файла – 8 байт. Если первый байт имеет значение Е516, то элемент не используется, если 2Е16, то этот элемент указывает на директорий нижнего уровня;
2) расширение имени файла – 3 байт;
3) атрибут – 1 байт. Используется для установления признака:
"только чтение" (нулевой бит);
скрытого файла (первый бит);
системного файла (второй бит);
признака метки тома (третий бит);
признака поддиректории (четвертый бит);
признака архивного файла (пятый бит);
шестой и седьмой биты этого байта резервные.
Если задан признак метки тома, то этот элемент содержит не ссылку на файл, а имя диска, которое занимает первые 11 байт. Архивный бит используется утилитами BACKUP и RESTORE;
4) зарезервированное поле для возможного использования в будущем – 10 байт;
5) время – 2 байт. Здесь хранится время создания или последней модификации файла. Первые 5 бит занимают часы, вторые 3 бит – минуты, третьи 5 бит – секунды. В последнем поле каждая единица соответствует 2 с;
6) дата – 2 байт. Здесь хранится дата создания последней модификации файла. Первые 7 бит занимают годы, которые отсчитываются от значения 1980 (от 1980 г.), вторые 4 бит – месяцы, третьи 5 бит – дни;
7) номер начального кластера – 2 байт. Начальный кластер является первой частью пространства данных в файле на дискете;
8) размер файла – 4 байт. Наличие этого поля связано с тем, что файл обычно частично занимает последний отведенный ему кластер, а здесь указывается его точная длина.
Все остальное место на диске занимает область данных, содержащая файлы данных или подкаталогов.
3.3.1.2 Логическая структура жесткого магнитного диска
Особенности логической структуры жесткого магнитного диска обусловлены наличием несистемного загрузчика NSB (главный загрузочный сектор MBR – MASTER BOOT RECORD).
Каждый жесткий диск (как отдельное электронное устройство) имеет еще одну область, которая называется главной загрузочной записью, или сектором MBR, или несистемным загрузчиком (NSB). Единый жесткий диск может быть разбит на несколько логических дисков, с которыми она может работать как с отдельными устройствами. Именно поэтому физические сектора на жестком диске могут характеризоваться в двух системах координат: физической (сектор, головка, цилиндр) и логической (номер логического сектора).
Для MBR на жестком диске всегда выделяется физический сектор 1 (сектор 1, головка 0, цилиндр 0). Логического номера он не имеет, так как является общим для всех логических дисков.
Этот сектор содержит программу IPL1 (Initial Program Loa-ding 1), расположенную в его начале, которая при своем выполнении сканирует содержимое второго важного элемента MBR – таблицу разделов диска (Partition Table) (рис. 3.10), состоящую, в свою очередь, из четырех 16-байтных элементов (разделов), разбитых на поля. Они содержат информацию о номерах начального и конечного секторов, номерах головок и цилиндров для соответствующего раздела, а также числе секторов, предшествующих разделу и включенных в раздел. Из четырех разделов, на которые может быть поделен диск, только два могут принадлежать MS-DOS: первичный (Primary) и расширенный (Extended), два оставшихся резервируются для других операционных систем: OS/2, Xenix, UNIX, Windows NT и т. д.
Рис. 3.10. Структура MBR
Не следует отождествлять понятия "раздел" и "логический диск", поскольку, например, с расширенным разделом могут быть связаны несколько логических дисков.
Байт поля "Признак загрузки" используется программой IPL1 (при ее выполнении) для выяснения, какой из разделов диска содержит загружаемую операционную систему. Активный (загружаемый) раздел в этом поле содержит код 80h, остальные разделы должны быть помечены кодом 00h.
В поле "Начало раздела" хранятся номера головки, сектора и цилиндра стартового сектора раздела; в поле "Конец раздела" – соответствующие величины для конечного сектора этого раздела.
Число секторов до начала раздела хранится в 4-байтном поле "Относительный сектор". Это число определяется путем последовательного подсчета секторов, начиная с сектора 1, головки 0, цилиндра 0 физического диска, и увеличения номера сектора на дорожке, затем номера головки и цилиндра.
Число секторов в разделе хранится в 4-байтном поле "Размер". Как и для предыдущего поля, первое слово содержит младшую часть числа, второе – старшую.
Еще одно важное поле элементов таблицы разделов – "Тип раздела". Код в нем указывает, какой именно операционной системе принадлежит данный раздел.
Если поле "Тип раздела" содержит код 05h (Extended-раздел), то физический сектор, определяемый в поле "Начало раздела" диска, является вовсе не загрузочным сектором (BR) расширенного раздела, а вторичным главным загрузочным сектором жесткого диска SMBR (Secondary Master Boot Record). Этот сектор содержит собственную таблицу разделов, называемую таблицей логического диска LDT (Logical Drive Table), и непременную сигнатуру AA55h. Эта таблица и определяет местоположение и размер раздела, с которым MS-DOS обращается как с отдельным физическим диском.
Отличия SMBR-сектора от MBR-сектора:
во-первых, он не содержит программы IPL1 и соответственно никогда не определяет загрузочный диск;
во-вторых, таблица логического диска включает максимум два 16-байтных элемента, а не четыре, как основная таблица разделов. Причем, если поле "Тип раздела" первого элемента таблицы определяет размер элемента FAT, то такое же поле второго элемента таблицы (если он существует) содержит код Extended-раздела – 05h. Таким образом, второй элемент таблицы логического диска может определять следующий вторичный загрузочный сектор и т. д.
Каждый диск, определяемый таблицей логического диска, содержит сектор BR, две копии FAT, корневую директорию и, безусловно, область данных (рис. 3.11).
Рис. 3.11. Логическая структура жесткого магнитного диска
Таким образом, Extended-раздел может быть поделен на логические диски от D до Z по количеству букв латинского алфавита.
3.3.2 Начальная загрузка MS-DOS
При загрузке или перезагрузке системы выполнение начинается с адреса OFFFFOH (рис. 3.12). Это определяется особенностями семейства микропроцессоров 8086/8088, а не самой системы MS-DOS. Системы, базирующиеся на этих процессорах, сконструированы так, что адрес OFFFFOH лежит внутри области ПЗУ и содержит машинную команду передачи управления программе проверки системы и программе начального загрузчика ПЗУ.
Программа начального загрузчика ПЗУ считывает в некоторую область памяти программу дискового начального загрузчика, начиная с первого сектора загружаемого диска (сектор загрузчика), и затем передает ей управление. Кроме того, сектор загрузчика содержит таблицу с информацией о формате диска.
Программа дискового начального загрузчика проверяет наличие на диске копии операционной системы MS-DOS. Для этого считывается первый сектор корневого каталога и определяется, являются ли его первые два файла системными файлами IO.SYS и MSDOS.SYS (или IBMBIO.COM и IBMDOS.COM) (в указанном порядке). Если этих файлов там нет, то пользователю предлагается сменить диск и нажать на произвольную клавишу для новой попытки. Если оба системных файла найдены, то дисковый начальный загрузчик считывает их в память и передает управление на точку входа модуля IO.SYS. В некоторых реализациях дисковый начальный загрузчик считывает в память только файл IO.SYS, который, в свою очередь, загружает файл MSDOS.SYS.
Файл IO.SYS, загруженный с диска, обычно состоит из двух отдельных модулей. Первый из них BIOS содержит связанный набор резидентных драйверов таких устройств, как консоль, последовательный порт, печатающее устройство, блочно-ориентированное устройство и таймер, а также программу инициализации, выполняемую только при начальной загрузке системы.
Второй модуль SYSINIT, поддерживаемый системой Microsoft, компонуется в файл IO.SYS, как и BIOS, изготовителем компьютера.
Рис. 3.12. Алгоритм загрузки системы MS-DOS
SYSINIT вызывается с помощью программы инициализации BIOS. Модуль определяет величину непрерывной памяти, доступной системе, и затем располагается по ее старшим адресам. Далее модуль переносит ядро системы DOS MSDOS.SYS из области ее начальной загрузки в область окончательного расположения в памяти, перекрывая начальную программу SYSINIT в любую другую расширяемую программу инициализации, которая содержалась в файле IO.SYS.
Далее SYSINIT вызывает программу инициализации в модуле MSDOS.SYS. Ядро DOS инициализирует ее внутренние таблицы и рабочие области, устанавливает векторы прерываний по адресам с 2OH по 2FH и перебирает связанный список резидентных драйверов устройств, вызывая функцию инициализации для каждого из них.
Функции драйверов определяют состояние оборудования, выполняют всю необходимую инициализацию аппаратуры и устанавливают векторы для внешних аппаратных прерываний имеющихся драйверов.
В процессе инициализации ядро DOS проверяет блоки параметров диска, возвращаемые с помощью резидентных драйверов блочно-ориентированных устройств, определяет наибольший размер сектора, который будет использован в системе, строит блоки параметров дисковода и выделяет буфер сектора диска, затем управление передается модулю SYSINIT.
Когда ядро DOS проинициализировано и все резидентные драйверы доступны, модуль SYSINIT может открыть файл CONFIG.SYS. Этот необязательный файл содержит различные команды, которые позволяют пользователю настраивать среду MS-DOS. Например, пользователь может задать дополнительные драйверы аппаратных устройств, число буферов диска, максимально возможное число одновременно открытых файлов и имя файла командного процессора (оболочки).
Если файл CONFIG.SYS найден, он загружается в память для выполнения. Драйверы, указанные в файле CONFIG.SYS, последовательно загружаются в память, активизируются с помощью вызовов соответствующих модулей инициализации и заносятся в связанные списки драйверов. Функции инициализации каждого из них сообщают модулю SYSINIT размер памяти, отведенной под соответствующий драйвер.
После загрузки всех устанавливаемых драйверов SYSINIT закрывает все дескрипторы файлов и открывает вновь консоль (CON), принтер (PRN) и последовательный порт (AUX) как устройство стандартных ввода и вывода, ошибки, печати и последовательного устройства. Это позволяет символьно-ориентированному драйверу, установленному пользователем, замещать резидентные драйверы BIOS стандартных устройств.
В конце своего выполнения модуль SYSINIT вызывает функцию EXEC для загрузки интерпретатора командной строки, или оболочки. Стандартной оболочкой является COMMAND.COM, однако с помощью файла CONGIG.SYS можно устанавливать и другие оболочки. После загрузки оболочка высвечивает на экране дисплея запрос и ждет от пользователя ввода команды. Теперь система MS-DOS готова для работы и модуль SYSINIT уже не требуется.
3.3.3 Файловая система MS-DOS
Файловая система MS-DOS – часть операционной системы, управляющая размещением и доступом к файлам и каталогам.
Каталог – справочник файлов с указанием месторасположения на диске – бывает текущим, в котором работа пользователя производится в текущее машинное время; пассивным, с которым в данный момент времени не имеется связи; родительским, имеющий подкаталог.
Подкаталог – каталог, который входит в другой каталог.
Доступ – процедура устанавливания связи с памятью и размещенными в ней файлами для записи и чтения.
Файл – логически связанная совокупность данных или программ, для размещения которой во внешней памяти выделяется именованная область.
С понятием файловой системы тесно связано понятие файловой структуры диска, под которой понимают, как размещаются на диске главный каталог, подкаталоги, файлы, операционная система, а также какие для них выделены объемы секторов, кластеров, дорожек.
При формировании файловой структуры диска операционная система MS-DOS работает по определенным правилам:
файл или каталог могут быть зарезервированы с одним и тем же именем в различных каталогах, но в одном и том же каталоге только один раз;
порядок следования имен файлов и подкаталогов в родительском каталоге произвольный;
файл может быть разбит на несколько частей, для которых выделяются участки дискового пространства одинакового объема на разных дорожках и секторах.
3.3.3.1 Файлы
Файл служит учетной единицей информации в операционной системе. Любые действия с информацией в MS-DOS осуществляются над файлами: запись на диск, вывод на экран, ввод с клавиатуры, печать, считывание информации CD-ROM и пр.
На диске файл не требует для своего размещения непрерывного пространства, обычно он занимает свободные кластеры в разных частях диска. Сведения о номерах этих кластеров хранятся в FAT-таблице.
В файлах могут храниться разнообразные виды и формы представления информации: тексты, рисунки, чертежи, числа, программы, таблицы и т. п. Особенности конкретных файлов определяются их формами.
Под формами понимается элемент языка, в символическом виде описывающий представление информации в файле.
Текстовая информация хранится в файле в кодах ASCII, в так называемом текстовом формате. Содержимое текстовых файлов можно просмотреть на экране дисплея с помощью разных программных средств, в том числе и в MS-DOS.
Любой другой файл с нетекстовой информацией просмотреть теми же средствами, что и текстовый файл, не удается. При просмотре на экран будут выводиться абсолютно непонятные символы.
Для характеристики файла используются следующие параметры:
полное имя файла;
объем файла в байтах;
дата создания файла;
время создания файла;
специальные атрибуты файла:
1) R (Read only) – только для чтения;
2) H (Hidden) – скрытый файл;
3) S (System) – системный файл;
4) A (Archive) – архивированный файл.
Вся эта информация хранится в корневом каталоге логической структуры диска.
3.3.3.2 Каталоги
В операционной системе MS-DOS принята иерархическая структура организации каталогов. На каждом диске всегда имеется единственный главный (корневой) каталог. Он находится на нулевом уровне иерархической структуры и обозначается символом "\". Корневой каталог создается при формировании (инициализации, разметке) диска, имеет ограниченный размер и не может быть удален средствами DOS. В главный каталог могут входить другие каталоги и файлы, которые создаются командами операционной системы и могут быть удалены соответствующими командами.
Таким образом, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой – подчиненным по отношению к каталогу верхнего уровня. Если это не вызывает путаницы, употребляют термин "каталог", подразумевая или подкаталог, или родительский каталог в зависимости от контекста.
Каталоги на дисках организованы как системные файлы. Единственное исключение – корневой каталог, для которого отведено фиксированное место на диске. Доступ к каталогам можно получить, как к обыкновенному файлу.
Доступ к содержимому файла организован из главного каталога, через цепочку соподчиненных каталогов (подкаталогов) n-го уровня.
3.3.3.3 Путь и приглашение
Путь – цепочка соподчиненных каталогов, которую необходимо пройти по иерархической структуре к каталогу, где зарегистрирован искомый файл (рис. 3.13).
Корневой каталог:\ | Родительский каталог:\ | Подкаталог:\ | Имя файла |
Рис. 3.13. Структура пути
Из рисунка видно, что доступ к файлу осуществляется через каталог благодаря зарегистрированному в нем имени данного файла. Если каталог имеет иерархическую структуру, то доступ к файлу операционная система организует в зависимости от положения подкаталога, в котором зарегистрировано имя искомого файла.
Доступ к файлу можно организовать следующим образом:
– если имя файла зарегистрировано в текущем каталоге, то достаточно для доступа к файлу указать только его имя;
– если имя файла зарегистрировано в пассивном каталоге, то, находясь в текущем каталоге, вы должны указать путь, т. е. цепочку соподчиненных каталогов, через которые следует организовать доступ к файлу.
При задании пути имена каталогов записываются в порядке следования и отделяются друг от друга символом "\".
Взаимодействие пользователя с операционной системой осуществляется с помощью командной строки, индицируемой на экране дисплея. В начале командной строки всегда имеется приглашение, которое заканчивается символом ">". В нем могут быть отображены имена текущих диска и каталога, текущее время и дата, путь, символы-разделители.
Приглашение операционной системы – индикация на экране дисплея информации, означающей готовность операционной системы к вводу команд пользователя.
Сервисное программное обеспечение
3.4.1 Характеристика компьютерных вирусов
Массовое применение персональных компьютеров оказалось связанным с понятием самовоспроизводящихся программ-вирусов, препятствующих нормальной работе компьютера, разрушающих файловую структуру дисков и наносящих ущерб хранимой в компьютере информации. Проникнув в один компьютер, компьютерный вирус способен распространяться на другие компьютеры.
Компьютерным вирусом называется специально написанная программа, способная самопроизвольно присоединяться к другим программам, создавать свои копии и внедрять их в файлы, системные области компьютера и вычислительные сети с целью нарушения работы программы, порчи файлов и каталогов, создания всевозможных помех в работе на компьютере.
Причины появления и распространения компьютерных вирусов, с одной стороны, скрываются в психологии человеческой личности и ее теневых сторонах (зависти, мести, тщеславии непризнанных творцов, невозможности конструктивно применить свои способности), с другой стороны, обусловлены отсутствием аппаратных средств защиты и противостояния со стороны операционной системы персонального компьютера.
Несмотря на принятые во многих странах законы о борьбе с компьютерными преступлениями и разработку специальных программных средств защиты от вирусов, количество новых программных вирусов постоянно растет. Это требует от пользователя персонального компьютера знаний о природе вирусов, способах заражения вирусами и защиты от них.
Основными путями проникновения вирусов в компьютер являются съемные диски (гибкие и лазерные), а также компьютерные сети. Заражение жесткого диска вирусами может произойти при загрузке компьютера с дискеты, содержащей вирус. Такое заражение может быть и случайным, например, если дискету не вынули из дисковода А и перезагрузили компьютер, при этом дискета может и не быть системной.
Заразить дискету гораздо проще. На нее вирус может попасть, даже если дискету просто вставить в дисковод зараженного компьютера и, например, прочитать ее оглавление.
В загрузочном секторе зараженного диска находится программа-вирус.
После запуска программы, содержащей вирус, становится возможным заражение других файлов. Наиболее часто вирусом заражаются загрузочный сектор диска и исполняемые файлы, имеющие расширение COM, EXE, SYS, BAT. Крайне редко заражаются текстовые и графические файлы.
Зараженная программа содержит внедренную в нее программу-вирус.
При заражении компьютера вирусом очень важно своевременно его обнаружить. Для этого следует знать об основных признаках проявления вирусов:
прекращение работы или неправильная работа ранее успешно функционировавших программ;
медленная работа компьютера;
невозможность загрузки ОС;
исчезновение файлов и каталогов или искажение их содержимого;
изменение даты и времени модификации файлов;
изменение размеров файлов;
неожиданное значительное увеличение количества файлов на диске;
существенное уменьшение размера свободной оперативной памяти;
вывод на экран непредусмотренных сообщений или изображений;
подача непредусмотренных звуковых сигналов;
частые зависания и сбои в работе компьютера.
Следует заметить, что вышеперечисленные явления необязательно вызываются присутствием вируса, а могут быть следствием других причин, поэтому всегда затруднена правильная диагностика состояния компьютера.
В настоящее время известно более 35 000 программных вирусов (по данным лаборатории Касперского AVP), их можно классифицировать по следующим признакам (рис. 3.14):
среде обитания;
способу заражения среды обитания;
воздействию;
особенностям алгоритма.
Рис. 3.14. Классификация компьютерных вирусов:
а – по среде обитания; б – по способу заражения;
в – по степени воздействия; г – по особенности алгоритмов
В зависимости от среды обитания вирусы можно разделить на сетевые, файловые, загрузочные и файлово-загрузочные. Сетевые вирусы распространяются по разным компьютерным сетям. Файловые вирусы внедряются главным образом в исполняемые модули, т. е. в файлы, имеющие расширения COM и EXE. Файловые вирусы могут внедряться и в другие типы файлов, но, как правило, записанные в таких файлах они никогда не получают управление и, следовательно, теряют способность к размножению. Загрузочные вирусы внедряются в загрузочный сектор диска (Boot-сектор) или в сектор, содержащий программу загрузки системного диска (Master Boot Record). Файлово-загрузочные вирусы заражают как файлы, так и загрузочные сектора дисков.
По способу заражения вирусы делятся на резидентные и нерезидентные. Резидентный вирус при заражении компьютера оставляет в оперативной памяти свою резидентную часть, которая потом перехватывает обращение операционной системы к объектам заражения (файлам, загрузочным секторам дисков и т. п.) и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы не заражают память компьютера и являются активными ограниченное время.
Простейшие вирусы – паразитические, они изменяют содержимое файлов и секторов диска и могут быть достаточно легко обнаружены и уничтожены. Можно отметить вирусы-репликаторы, называемые червями, которые распространяются по компьютерным сетям, вычисляют адреса сетевых компьютеров и записывают по этим адресам свои копии. Известны вирусы-невидимки, называемые стелс-вирусами, которые очень трудно обнаружить и обезвредить, так как они перехватывают обращения операционной системы к пораженным файлам и секторам дисков и подставляют вместо своего "тела" незараженные участки диска. Наиболее трудно обнаружить вирусы-мутанты, содержащие алгоритм шифровки–расшифровки, благодаря которым копии одного и того же вируса не имеют ни одной повторяющейся цепочки байтов. Имеются и так называемые квазивирусные или "троянские" программы, которые хотя и не способны к самораспространению, но очень опасны, так как, маскируясь под полезную программу, разрушают загрузочный сектор и файловую систему дисков.
Способы распространения и структура
компьютерных вирусов
Файловые вирусы
Вирус может внедриться в файлы трех типов:
командные (ВАТ);
загружаемые драйверы (IO.SYS, MSDOS.SYS и др.);
выполняемые двоичные файлы (EXE, COM).
Возможно внедрение вируса в файлы данных, но эти случаи возникают либо в результате ошибки вируса, либо при проявлении вирусом своих агрессивных свойств.
Внедрение вируса в SYS-файл происходит следующим образом: вирусы внедряются в SYS-файл, приписывают свои коды к "телу" файла и модифицируют адреса программ стратегии (Strategy) и прерывания (Interrupt) заражаемого драйвера (встречаются вирусы, изменяющие адрес только одной из программ). При инициализации зараженного драйвера вирус перехватывает соответствующий запрос операционной системы, передает его драйверу, ждет ответа на него, корректирует его и остается в оперативной памяти вместе с драйвером в одном блоке памяти. Такой вирус может быть чрезвычайно опасным и живучим, так как внедряется в оперативную память при загрузке DOS раньше любой антивирусной программы, если она, конечно, тоже является драйвером.
Зараженный файл-драйвер:
Возможно также инфицирование системного драйвера другим способом, когда вирус модифицирует его заголовок так, что DOS рассматривает инфицированный файл как цепочку из двух (или более) файлов.
Зараженный файл-драйвер:
Аналогично вирус может записать свои коды в начало драйвера, а если в файле содержится несколько драйверов, то и в середину файла.
Внедрение вируса в COM- и EXE-файлы происходит следующим образом: выполняемые двоичные файлы имеют форматы COM или EXE, отличаются заголовком и способом запуска программ на выполнение. Расширение имени файла (COM или EXE) не всегда соответствует действительному формату файла, что никак не влияет на работу программы. Файлы COM или EXE заражаются по-разному, следовательно, вирус должен отличать файлы одного формата от другого.
Вирусы решают эту задачу двумя способами: одни анализируют расширение имени файла, другие – заголовок файла. Первый способ далее будем называть заражением .COM- (.EXЕ-) файлов, второй способ заражения: COM- (EXE-) файлов. В большинстве случаев вирус инфицирует файл корректно, т. е. по информации, содержащейся в его теле, можно полностью восстановить зараженный файл. Но вирусы, как и большинство программ, часто содержат незаметные с первого взгляда ошибки. Из-за этого даже вполне корректно написанный вирус может необратимо испортить файл при его поражении. Например, вирусы, различающие типы файлов по расширению имени (.COM-, .EXE-), очень опасны, так как портят файлы, у которых расширение имени не соответствует внутреннему формату.
Файловые вирусы при распространении внедряются в тело заражаемого файла: начало, конец или середину. Существует несколько возможностей внедрения вируса в середину файла: он может быть скопирован в таблицу настройки адресов EXE-файла ("Boot – Exe"), область стека файла COMMAND.COM ("Lehigh"), может раздвинуть файл или переписать часть файла в его конец, а свои коды – в освободившееся место ("Apri l – 1– Exe", "Phoenix") и т. д. Кроме того, копирование вируса в середину файла может произойти в результате ошибки вируса. В этом случае файл может быть необратимо испорчен. Встречаются и другие способы внедрения вируса в середину файла, например, вирус "Mutant" применяет метод компрессирования некоторых участков файла.
Внедрение вируса в начало файла может происходить тремя способами. Первый способ заключается в том, что вирус переписывает начало заражаемого файла в его конец, а сам копируется в освободившееся место. При заражении файла вторым способом вирус создает в оперативной памяти свою копию, дописывает к ней заражаемый файл и сохраняет полученную конкатенацию на диск. При заражении третьим способом вирус записывает свои коды в начало файла, не сохраняя старого содержимого начала файла, естественно, что при этом файл перестает работать и не восстанавливается.
Внедрение вируса в начало файла применяется в подавляющем большинстве случаев при поражении COM-файлов. EXE-файлы заражаются таким методом либо в результате ошибки вируса, либо при использовании алгоритма вируса "Pascal".
Внедрение вируса в конец файла – наиболее распространенный способ заражения. При этом вирус изменяет начало файла таким образом, что первыми выполняемыми командами программы, содержащейся в файле, являются команды вируса. В COM-файле это достигается изменением его первых трех (или более) байт на коды инструкции JMP Loc_Virus (или в общем случае – на коды программы, передающей управление на тело вируса). EXE-файл либо переводится в формат COM-файла и затем заражается как последний, либо модифицируется заголовок файла (длина, стартовые адреса).
Стандартным способом заражения будем называть способ, при котором вирус дописывается в конец файла и изменяет первые байты у COM-файла и несколько полей заголовка EXE-файла.
Вирус, после передачи ему управления, действует по следующему алгоритму:
восстанавливает программу (но не файл) в исходном виде;
если вирус резидентный, то он проверяет оперативную память на наличие своей копии и инфицирует память компьютера, если копия не найдена; если вирус не резидентный, то он ищет незараженные файлы в текущем и корневом каталогах, в каталогах отмеченных в команде PATH, сканирует дерево каталогов логических дисков, а затем заражает обнаруженные файлы;
выполняет, если они есть, дополнительные функции: деструктивные действия, графические или звуковые эффекты.
возвращает управление основной программе.
3.4.2.2 Загрузочные вирусы
Загрузочные вирусы заражают загрузочный сектор флоппи-диска и Boot-сектор, или Master Boot Record винчестера. При инфицировании диска вирус в большинстве случаев переносит оригинальный Boot-сектор в какой-либо другой сектор диска. Если длина вируса больше длины сектора, то в заражаемый сектор перемещается первая часть вируса, остальные размещаются в других секторах. Затем вирус копирует системную информацию, хранящуюся в первоначальном загрузчике, и записывает их в загрузочный сектор (для MBR этой информацией является Disk Partition Table, для Boot-сектора дискет – BIOS Parameter Block).
Алгоритм работы загрузочного вируса.
Внедрение в память осуществляется при загрузке с инфицированного диска. При этом системный загрузчик считывает содержимое первого сектора диска, с которого производится загрузка, помещает считанную информацию в память и передает на нее (т. е. на вирус) управление. После этого начинают выполняться инструкции вируса, который уменьшает объем свободной памяти; считывает с диска свое продолжение; переносит себя в другую область памяти; устанавливает необходимые векторы прерываний; совершает дополнительные действия; копирует в память оригинальный Boot-сектор и передает на него управление.
В дальнейшем загрузочный вирус ведет себя так же, как резидентный файловый вирус: перехватывает обращения операционной системы к дискам и инициирует их, в зависимости от некоторых условий совершает деструктивные действия или вызывает звуковые или видеоэффекты.
Программы обнаружения и защиты
от компьютерных вирусов
Для того чтобы не подвергнуть компьютер заражению вирусами и обеспечить надежное хранение информации на дисках, необходимо соблюдать следующие правила:
DrWeb необходимо сочетать с повседневным использованием ревизора диска ADinf;
оснастить свой компьютер современными антивирусными программами, например Aidstest или Doctor Web, и постоянно обновлять их версии;
перед считыванием с дискет информации, записанной на других компьютерах, всегда проверять эти дискеты на наличие вирусов, запуская антивирусные программы своего компьютера;
при переносе на свой компьютер файлов в архивированном виде проверять их сразу же после разархивации на жестком диске, ограничивая область проверки только вновь записанными файлами;
периодически проверять на наличие вирусов жесткий диск компьютера, запуская антивирусные программы для тестирования файлов, памяти и системных областей диска с защищенной от записи дискеты, предварительно загрузив операционную систему также с защищенной от записи системной дискеты;
всегда защищать свои дискеты от записи при работе на других компьютерах, если на них не будет производиться запись информации;
обязательно делать архивные копии на дискетах ценной для вас информации;
не оставлять в кармане дисковода A дискеты при включении или перезагрузке операционной системы, чтобы исключить заражение компьютера загрузочными вирусами;
использовать антивирусные программы для входного контроля всех исполняемый файлов, получаемых из компьютерных сетей.
Для обнаружения, удаления и защиты от компьютерных вирусов разработано несколько видов специальных антивирусных программ.
Различают следующие виды антивирусных программ (рис. 3.15):
программы-детекторы;
программы-доктора или фаги;
программы-ревизоры;
программы-фильтры;
программы-вакцины или иммунизаторы.
Рис. 3.15. Виды антивирусных программ
Программы-детекторы осуществляют поиск характерной для конкретного вируса последовательности байтов (сигнатуры вируса) в оперативной памяти и файлах и при обнаружении выдают соответствующее сообщение. Недостатком таких антивирусных программ является то, что они могут находить только те вирусы, которые известны разработчикам программ.
Программы-доктора, или фаги, а также программы-вакцины не только находят зараженные вирусами файлы, но и "лечат" их, т. е. удаляют из файла "тело" программы вируса, возвращая файлы в исходное состояние. В начале своей работы фаги ищут вирусы в оперативной памяти, уничтожают их и только затем переходят к "лечению" файлов.
Среди фагов выделяют полифаги, т. е. программы-доктора, предназначенные для поиска и уничтожения большого количества вирусов. Наиболее известными полифагами являются AVP, Doctor Web, Aidstest, Scan и Norton AntiVirus.
Программы-детекторы и программы-доктора быстро устаревают и требуют регулярного обновления их версий или антивирусных баз, так как постоянно появляются новые вирусы.
Программы-ревизоры относятся к самым надежным средствам защиты от вирусов. Они запоминают исходное состояние программ, каталогов и системных областей диска тогда, когда компьютер не заражен вирусом, а затем периодически или по желанию пользователя сравнивают текущее состояние с исходным. Обнаруженные изменения выводятся на экран видеомонитора. Как правило, сравнение состояний производят сразу после загрузки операционной системы: проверяются длина файла, код циклического контроля (контрольная сумма файла), дата и время модификации, другие параметры.
Программы-ревизоры имеют достаточно развитые алгоритмы, обнаруживают стелс-вирусы и могут даже отличить изменения версии проверяемой программы от изменений, внесенных вирусом. К числу программ-ревизоров относится широко распространенная в России программа ADinf фирмы "Диалог – Наука".
Программы-фильтры, или "сторожа", представляют собой небольшие резидентные программы, предназначенные для обнаружения подозрительных действий при работе компьютера, характерных для вирусов:
попыток коррекции файлов с расширениями COM и EXE;
изменений атрибутов файлов;
прямой записи на диск по абсолютному адресу;
записи в загрузочные сектора диска;
загрузки резидентной программы.
При попытке какой-либо программы произвести указанные действия "сторож" посылает пользователю сообщение и предлагает запретить или разрешить соответствующее действие.
Программы-фильтры весьма полезны, так как способны обнаружить вирус на самой ранней стадии его существования до размножения. Однако они не "лечат" файлы и диски. Для уничтожения вирусов требуется применить другие программы, например фаги. К недостаткам программ-сторожей можно отнести их "назойливость" (например, они постоянно выдают предупреждение о любой попытке копирования исполняемого файла), а также возможные конфликты с другим программным обеспечением. Примером программы-фильтра является программа Vsafe, входящая в состав пакета утилит операционной системы MS-DOS.
Вакцины, или иммунизаторы, – это резидентные программы, предотвращающие заражение файлов. Вакцины применяют, если отсутствуют программы-доктора, "лечащие" этот вирус. Вакцинация возможна только от известных вирусов. Вакцина модифицирует программу или диск таким образом, чтобы это не отражалось на их работе, а вирус будет воспринимать их зараженными и поэтому не внедрится. В настоящее время программы-вакцины имеют ограниченное применение.
Своевременное обнаружение зараженных вирусами файлов и дисков, полное уничтожение вирусов на каждом компьютере позволяют избежать распространения вирусной "эпидемии" на другие компьютеры.
Антивирусный комплект АО "Диалог – Наука"
Среди обилия современных программных средств борьбы с компьютерными вирусами предпочтение следует отдать антивирусному комплекту АО "Диалог – Наука", в который входят четыре программных продукта: полифаги Aidstest и Doctor Web, ревизор диска ADinf и лечащий блок ADinf Cure Module. Кроме этого можно назвать и такую антивирусную программу, как AVP, которая сейчас нашла самое широкое применение. Эта программа разработана как под операционную систему MS-DOS, так и под операционную систему Windows.
Рассмотрим кратко, как и когда надо применять эти антивирусные программы.
Программа AVP-доктор, в зависимости от версии, позволяет определить до 50 000 различных вирусов. Она имеет два режима работы: через командную строку и полноэкранный интерфейс.
Программа-полифаг Doctor Web (Dr.Web) предназначена, прежде всего, для борьбы с полиморфными вирусами, которые сравнительно недавно появились в компьютерном мире. Использование этой программы для проверки дисков и удаления обнаруженных вирусов в целом подобно программе Aidstest. При этом дублированная проверка практически не происходит, так как Aidstest и Dr.Web работают на разных наборах вирусов.
Программа Dr.Web может эффективно бороться со сложными вирусами-мутантами, которые оказываются не под силу программе Aidstest. В отличие от нее программа Dr.Web способна обнаруживать изменения в собственном программном коде, эффективно определять файлы, зараженные новыми, неизвестными вирусами, проникая в зашифрованные и упакованные файлы, а также преодолевая "вакцинное прикрытие". Это достигается благодаря наличию достаточно мощного эвристического анализатора.
В режиме эвристического анализа программа Dr.Web исследует файлы и системные области диска, пытаясь обнаружить новые или неизвестные ей вирусы по характерным для вирусов кодовым последовательностям. Если таковые будут найдены, то выводится предупреждение о том, что объекты, возможно, инфицированы неизвестным вирусом.
Предусмотрены три уровня эвристического анализа. В его режиме возможны ложные срабатывания, т. е. детектирование файлов, не являющихся зараженными. Уровень "эвристики" подразумевает уровень анализа кода без наличия ложных срабатываний. Чем выше уровень "эвристики", тем выше процент наличия ошибок или ложных срабатываний. Рекомендуются первые два уровня работы эвристического анализатора.
Третий уровень эвристического анализа предусматривает дополнительную проверку файлов на "подозрительное" время их создания.
Некоторые вирусы при заражении файлов устанавливают некорректное время создания, как признак зараженности данных файлов. Например, для зараженных файлов секунды могут иметь значение 62, а год создания может быть увеличен на сто лет.
В комплект поставки антивирусной программы Dr.Web могут входить также файлы дополнения к основной вирусной базе программы, расширяющие ее возможности.
Программа-полифаг Aidstest
Aidstest – это программа, которая умеет обнаруживать и уничтожать более 1 300 компьютерных вирусов, получивших наиболее широкое распространение в России. Версии Aidstest регулярно обновляются и пополняются информацией о новых вирусах.
Антивирус-ревизор диска ADinf
Ревизор ADinf позволяет обнаружить появление любого вируса, включая стелс-вирусы, вирусы-мутанты и неизвестные на сегодняшний день вирусы.
Программа Adinf запоминает:
информацию о загрузочных секторах;
информацию о сбойных кластерах;
длину и контрольные суммы файлов;
дату и время создания файлов.
На протяжении всей работы компьютера программа ADinf следит за сохранностью этих характеристик. В режиме повседневного контроля ADinf запускается автоматически каждый день при первом включении компьютера. Особо отслеживаются вирусоподобные изменения, о которых немедленно выдается предупреждение. Кроме контроля за целостностью файлов, ADinf следит за создание и удалением подкаталогов: созданием, удалением, перемещением и переименованием файлов; появлением новых сбойных кластеров; сохранностью загрузочных секторов и др. Перекрываются все возможные места для внедрения вируса в систему.
ADinf проверяет диски, не используя DOS, читая их по секторам прямым обращениям в BIOS. Благодаря такому способу проверки Adinf обнаруживает маскирующиеся стелс-вирусы и обеспечивает высокую скорость проверки диска.
Лечащий блок ADinf Cure Module – это программа, которая помогает "вылечить" компьютер от нового вируса, не дожидаясь свежих версий полифагов Aidstest или Dr.Wed, которым этот вирус будет известен.
Программа ADinf Cure Module использует тот факт, что несмотря на огромные разнообразия вирусов существует совсем немного различных методов их внедрения в файлы. Во время нормальной работы, при регулярном запуске ревизора ADinf он сообщает ADinf Cure Module о том, какие файлы изменились с момента последнего запуска. ADinf Cure Module анализирует эти файлы и записывает в свои таблицы информацию, которая может потребоваться для восстановления файлов при заражении вирусом. Если заражение произошло, то ADinf заметит изменения и снова вызовет ADinf Cure Module, который на основе анализа зараженного файла и сопоставления его с записанной информацией попытается восстановить исходное состояние файла.
3.4.4 Общие сведения об архивации файлов
Одним из наиболее широко распространенных видов сервисных программ являются программы, предназначенные для архивации, упаковки файлов путем сжатия хранимой в них информации.
Сжатие информации – это процесс преобразования информации, хранящейся в файле, к виду, при котором уменьшается избыточность в ее представлении и соответственно требуется меньший объем памяти для хранения.
Сжатие информации в файлах производится благодаря устранению избыточности различными способами, например, за счет упрощения кодов, исключения из них постоянных бит или представления повторяющихся символов или последовательности символов в виде коэффициента повторения и соответствующих символов. Применяются различные алгоритмы подобного сжатия информации.
Сжиматься могут как один, так и несколько файлов, которые в сжатом виде помещаются в так называемый архивный файл (архив).
Архивация (упаковка) – помещение (загрузка) исходных файлов в архивный файл в сжатом или несжатом виде.
Разархивация (распаковка) – процесс восстановления файлов из архива точно в таком виде, какой они имели до загрузки в архив.
При распаковке файлы извлекаются из архива и помещаются на диск или в оперативную память.
Архивный файл – это специальным образом организованный файл, содержащий в себе один или несколько файлов в сжатом или несжатом виде и служебную информацию об именах файлов, дате и времени их создания или модификации, размеров и т. п.
Программами-архиваторами называются программы, осуществляющие упаковку и распаковку файлов.
Целью упаковки файлов обычно является обеспечение более компактного размещения информации на диске, сокращение времени и соответственно стоимости передачи информации по каналам связи в компьютерных сетях. Кроме того, упаковка в один архивный файл группы файлов существенно упрощает их перенос с одного компьютера на другой, сокращает время копирования файлов на диски, позволяет защитить информацию от несанкционированного доступа, способствует защите от заражения компьютерными вирусами.
Самораспаковывающийся архивный файл – это загрузочный исполняемый модуль, который способен к самостоятельной разархивации находящихся в нем файлов без использования программы-архиватора.
Самораспаковывающийся архив получил название SFX-архив. Архивы такого типа в MS-DOS обычно создаются в форме .EXE-файла.
Степень сжатия файлов характеризуется коэффициентом Kc, определяемым как отношение объема сжатого файла Vc к объему исходного файла Vo, выраженное в процентах:
Степень сжатия зависит от используемой программы, метода сжатия и типа исходного файла. Наиболее хорошо сжимаются файлы графических образов, текстовые файлы и файлы данных, для которых степень сжатия может достигать 5–40 %, меньше сжимаются файлы исполняемых программ и загрузочных модулей – 60–90 %. Почти не сжимаются архивные файлы. Программа для архивации отличается используемыми методами сжатия, что соответственно влияет на степень сжатия.
Большие по объему архивные файлы могут быть размещены на нескольких дисках (томах) и называются многотомными. Том – это составная часть многотомного архива. Создавая архив из нескольких частей, можно записать его части на несколько дискет.
В настоящее время применяется несколько десятков программ-архиваторов, которые отличаются перечнем функций и параметрами работы, однако лучшие из них имеют примерно одинаковые характеристики. Из числа наиболее популярных программ можно выделить ARJ, PKPAK, LHA, ICE, HYPER, ZIP, PAK, ZOO, EXPAND, разработанные за рубежом, а также отечественные AIN и RAR. Обычно упаковка и распаковка файлов выполняется одной и той же программой, но в некоторых случаях это осуществляется разными программами, например, программа PKZIP производит упаковку файлов, а PKUNZIP – распаковку файлов.
Программы-архиваторы позволяют создавать архивы, для извлечения из которых содержащихся в них файлов не требуются какие-либо программы, так как сами архивные файлы могут содержать программу распаковки и называются самораспаковывающимися.
Многие программы-архиваторы производят распаковку файлов, выгружая их на диск, но имеются и такие, которые предназначены для создания упакованного исполняемого модуля (программы). В результате такой упаковки создается программный файл с теми же именем и расширением, который при загрузке в оперативную память самораспаковывается и сразу запускается. Вместе с тем возможно и обратное преобразование программного файла в распакованный формат. К числу таких архиваторов относятся программы RKLITE, LZEXE, UNP.
Управление программой-архиватором осуществляется одним из двух способов:
с помощью командной строки MS-DOS, в которой формируется команда запуска, содержащая имя программы-архиватора, команду управления и ключи ее настройки, а также имена архивного и исходного файлов; подобное управление характерно для архиваторов ARJ, AIN, ZIP, PAK, LHA и др.;
с помощью встроенной оболочки и диалоговых панелей, позволяющихся после запуска программы вести управление с использованием меню и функциональных клавиш, что создает для пользователя более комфортные условия работы. Такое управление имеет программа-архиватор RAR.
Выполняя предписанные ей действия, программа-архиватор, как правило, выводит на экран протокол своей работы. Все современные программы-архиваторы оснащены помощью, которая вызывается вводом в командной строке только одного имени программы или имени с ключом /?. Помощь может быть краткой – на одном экране или развернутой – на нескольких. Многие архиваторы имеют экраны помощи с примерами составления команд для выполнения различных операций. Информация помощи обычно выводится на английском или другом международном языке.
3.5 Операционная система Windows
3.5.1 Общие сведения об операционной системе Windows
Microsoft Windows – это высокопроизводительная, многозадачная и многопотоковая 32-разрядная операционная система с графическим интерфейсом и расширенными сетевыми возможностями, работающая в защищенном режиме, поддерживающая 16-разрядные приложения без всякой их модификации. Windows 9х – интегрированная среда, обеспечивающая эффективный обмен текстовой, графической, звуковой и видеоинформацией между отдельными программами. Базовые функциональные возможности Windows 9х перекрывают все, что заложено в MS-DOS, Windows 3.х и Windows для рабочих групп 3.х. Windows 9х – первая полномасштабная операционная система семейства Windows, не требующая MS-DOS. Она полностью совместима с используемыми в настоящее время программными и аппаратными средствами.
Усовершенствования, внесенные в архитектуру Windows 9х, дают пользователю ряд преимуществ, основные из которых связаны со следующими понятиями:
интегрированная операционная система;
вытесняющая многозадачность;
многопоточность.
Ядро интегрированной операционной системы загружаемое в момент включения компьютера, активизирует графический интерфейс пользователя и обеспечивает полную совместимость с операционной системой MS-DOS.
При использовании Windows 9х отпадает необходимость в отдельной копии MS-DOS.
Вытесняющая многозадачность – свойство операционной системы самостоятельно в зависимости от внутренней ситуации передавать или забирать управление у того или иного приложения.
В Windows 3.х приложения работали в режиме кооперативной многозадачности, т. е. последовательно. Каждое приложение периодически самостоятельно проверяло очередь сообщений, чтобы при необходимости передать управление другому приложению. Приложения, редко проверяющие очередь сообщений, забирали себе практически все процессорное время.
В Windows 9х для 32-битовых приложений используется механизм вытесняющей многозадачности, основанный на многопоточности.
Многопоточность – свойство операционной системы выполнять операции одновременно над потоками нескольких 32-битовых приложений, называемых процессами.
Процесс состоит из потоков.
Поток – это некоторая часть процесса, которой может быть выделено процессорное время для одновременного выполнения наряду с другими потоками того или иного процесса.
32-битовые приложения Windows 9х способны порождать или инициировать несколько потоков внутри данного процесса. Каждый процесс состоит как минимум из одного потока. Многопоточное приложение значительно эффективнее в работе, быстрее реагирует на действия пользователя и выполняет многие операции в фоновом режиме.
Распределение времени между активными приложениями в Windows 9х осуществляет ядро ОС, а поддержка вытесняющей многозадачности обеспечивает плавное переключение между одновременно выполняемыми процессами и не позволяет одному приложению занять все системные ресурсы.
Windows 9х выполняет 32-битовые и MS-DOS-приложения в режиме вытесняющей многозадачности, а 16-битовые приложения – в режиме кооперативной многозадачности.
Везде, где не ущемляется совместимость с 16-битовыми приложениями и повышается производительность, Windows 9х использует 32-битовый код. Такие компоненты, как планировщик, диспетчер памяти, подсистема ввода-вывода и драйверы устройств, являются 32-битовыми. Многие графические функции, включая печать, растеризацию шрифтов True Type, ключевые графические операции, переведены в 32-битовый код. Вместе с тем значительная часть кода User, осуществляющая управление окнами, оставлена для совмещения с существующими приложениями в 16-битовом формате.
На рисунке 3.16 схематически показаны основные компоненты Windows 9х.
Рис. 3.16. Архитектура системы Windows 9х
Системная виртуальная машина (или просто системная ВМ) – так называется входящая в состав Windows 9х операционная среда, которая поддерживает работу всех Windows-приложений и таких подсистем Windows, как Интерфейс Графического Устройства (Graphics Device Interface, GDI).
32-разрядные приложения Windows – это новые приложения, которые используют 32-разрядную модель памяти 80386 процессора и подмножество разработанного Microsoft интерфейса прикладного программирования Win32. В Windows 9х каждое из приложений Win32 имеет собственное адресное пространство, которое недоступно другим приложениям. Windows 9х может управлять этими приложениями на основе принципа вытесняющей многозадачности.
Оболочка – это 32-разрядное приложение Windows, которое обеспечивает взаимодействие пользователя с системой. Оболочка Windows 9х объединяет функции, знакомые по Windows 3.1, Диспетчера Программ, Диспетчера Файлов и Диспетчера Задач в одном приложении.
16-разрядные приложения Windows – это "старые" приложения Windows. Они используют модель сегментной адресации памяти семейства процессоров Intel (модель памяти 80286 процессора). Так же как, и в Windows 3.1, 16-разрядные приложения при работе под Windows 9х делят между собой единое адресное пространство и не могут управляться в соответствии с принципом вытесняющей многозадачности. Microsoft называет их "приложениями Win16".
Уровень функций Windows API (Application Program Interface) интерфейса прикладного программирования Windows 9х обеспечивает полную совместимость с существующим Windows 3.1 API, а также поддержку нового 32-разрядного API, который доступен только 32-разрядным приложениям Windows. 32-разрядное API является подмножеством разработанного Microsoft интерфейса Win32, который впервые появился в Windows NT и в Win32s-расширении для Windows 3.1.
Модуль Windows Kernel поддерживает необходимые Windows низкоуровневые функции, такие как динамическое размещение памяти и др. В Windows 9х Kernel обеспечивает соответствующий сервис как для 16-разрядных, так и для 32-разрядных приложений.
Модуль Windows GDI обеспечивает графические возможности Windows и поддерживает работу с цветом, шрифтами и изобразительными примитивами для дисплея и принтеров. В Windows 9х модуль GDI продолжает поддерживать существующие 16-разрядные приложения, однако теперь он обладает еще и множеством новых возможностей, которые доступны только 32-раз-рядным программам.
Модуль User – это диспетчер окон. Он занимается созданием и управлением видимыми на экране окнами, диалоговыми окнами, кнопками и прочими элементами интерфейса Windows.
MS-DOS виртуальные машины (MS-DOS BM) обеспечивают работу приложений MS-DOS под Windows. Так же, как и в Win-dows 3.1, пользователь может одновременно запустить несколько MS-DOS BM. В Windows 9х появилось несколько нововведений, которые позволяют пользователю более эффективно управлять виртуальными машинами, однако в целом поддержка MS-DOS BM изменилась незначительно.
Остальные модули реализуют функции базовой системы.
Базовая система. Управление файловой системой в Windows 9х претерпело ряд серьезных изменений. В Windows 3.1 файловой системой локального диска управляла MS-DOS, что существенно снижало производительность Windows. До тех пор пока за управление файловой системой отвечала MS-DOS, внести в этот процесс какие-либо улучшения не представлялась возможным. В Windows 9х все обстоит совсем по-другому, а именно MS-DOS уже не используется для управления хранящимися на локальном диске файлами. Новая файловая подсистема обеспечивает набор интерфейсов, который делает возможным совместное использование различных файловых систем локальных дисков (включая и файловые системы, хранящиеся на компакт дисках) и сетевых файловых систем.
Сетевая подсистема представляет собой последнее воплощение разработанной Microsoft одноранговой сети, которая впервые появилась в Windows for Workgroups в 1992 г., а впоследствии и в Win-dows NT. Сетевая подсистема осуществляет доступ к удаленным файлам при помощи новой файловой подсистемы. Фирмы-производители сетевого программного обеспечения могут подключать свои продукты к новой файловой подсистеме, что обеспечит пользователю одновременный доступ к нескольким сетям. Сама Windows поддерживает протоколы SMB, Novell и TCP/IP.
Сервис операционной системы включает такие серьезные компоненты, как подсистема конфигурирования аппаратных средств Plug and Play, а также набор всевозможных полезных функций, вроде тех, что выдают информацию о текущих дате и времени.
Диспетчер виртуальной машины – это "сердце" операционной системы Windows. Он включает код, реализующий все действия базовой системы по управлению задачами, действиями над виртуальной памятью, загрузкой и завершением программ, а также поддержкой взаимодействия программ.
Драйверы устройств в Windows могут быть самыми разнообразными, в том числе драйверы реального режима и так называемые виртуальные драйверы, или виртуальные драйверы внешних устройств (VЧD). Некоторым программам для поддержки отдельных аппаратных средств могут потребоваться старые драйверы MS-DOS реального режима, однако при разработке Windows одна из главных задач состояла в создании драйверов защищенного режима для мыши, приводов компакт-дисков и большинства жестких дисков.
Виртуальные драйверы устройств, или VЧD, помогают нескольким приложениям совместно использовать одно устройство. Например, запуск двух приложений MS-DOS в отдельных окнах требует от системы создания двух виртуальных машин MS-DOS, каждой из которых необходимо осуществлять вывод на единственный физический экран. Виртуальный драйвер экрана и должен обеспечивать возможность такого совместного применения. Термин "VЧD" также используется как общее наименование некоторых 32-разрядный модулей операционной системы.
Концепция виртуальных машин
Слово "виртуальный" очень часто входит в состав терминов, относящихся к Windows, поскольку в основе большинства возможностей, которыми обладает Windows, лежит именно обеспечение виртуальной среды для работы прикладных программ. Наиболее ценной из виртуальных возможностей является возможность поддержки виртуальных машин, на которых работают программы, поэтому очень важно правильно понимать относящуюся к данному вопросу терминологию и то, как виртуальные машины Windows реализованы технически.
При рассмотрении виртуальных машин Windows важно обратить внимание на следующие моменты:
виртуальные машины Windows. Это либо виртуальные машины MS-DOS, каждая из которых реализует отдельный сеанс работы с MS-DOS, либо системная виртуальная машина, которая обеспечивает контекст необходимых для работы всех приложений Windows;
системная виртуальная машина все время работает в защищенном режиме. В Windows 3.1 системная ВМ для того, чтобы могли выполняться программы MS-DOS, в определенные моменты переключается из защищенного в виртуальный 8086-й режим, однако в Windows подобное происходит крайне редко;
Windows применяет виртуальный 8086-й режим для запуска приложений MS-DOS. При этом система использует виртуальный 8086-й режим процессора для того, чтобы установить управляемую защиту для кода, которому в противном случае необходимо было бы работать в реальном режиме.
Независимо от того, имеете вы дело с MS-DOS или системной виртуальной машиной, которая поддерживает работу всех приложений Windows, мощность и текущий контекст виртуальной машины определяются теми ресурсами, которые ей выделены. Каждая виртуальная машина включает в себя следующие компоненты:
карту памяти, которая определяет, какой объем виртуальной памяти доступен программе, выполняющейся в данный момент на этой виртуальной машине;
контекст выполнения, который определяется состоянием регистров виртуальной машины (регистров процессора прямого доступа, а также рядом других управляющих параметров, таких как, например, уровень привилегированного доступа к процессору);
набор ресурсов, доступных приложению, выполняющемуся на данной виртуальной машине. В пределах системной виртуальной машины каждое приложение Windows пользуется ресурсами посредством функций Windows API, а на виртуальной машине приложение MS-DOS использует интерфейс программных прерываний MS-DOS и может пытаться непосредственно взаимодействовать с аппаратными средствами.
Рассмотрим карту памяти Windows как компонент виртуальной машины (рис. 3.17).
386-й процессор поддерживает четырехгигабайтное виртуальное адресное пространство, и Windows способна использовать его целиком. В его пределах различные компоненты системы и приложения занимают участки с фиксированными границами. Одна из обязанностей Диспетчера виртуальных машин (Virtual Machine Manager – VMM) состоит в отображении этого четырехгигабайтного адресного пространства в доступную физическую память.
На карте системной памяти нижний мегабайт виртуального адресного пространства используется для работающей в данный момент MS-DOS ВМ. Кроме того, каждая ВМ имеет в своем распоряжении еще и участок памяти в области между вторым и третьим гигабайтами. Подобное распределение памяти позволяет самой системе использовать память ВМ независимо от того, активна она или нет. Впрочем, когда работает MS-DOS ВМ, ее память отображается в начало первого мегабайта.
Рис. 3.17. Карта системной памяти Windows 9х
В пределах виртуального адресного пространства 32-раз-рядных приложений стандартные средства разработки используют четвертый гигабайт как адрес загрузки по умолчанию. Можно, конечно, указать адрес и поменьше, однако это приводит к серьезному увеличению объема вычисления, которые будут связаны с тем, что системе придется производить пересчет адресов при загрузке приложений. Загрузка в адресное пространство, расположенное между четвертым и вторым гигабайтами, происходит мгновенно.
Этот четырехмегабайтный адрес как нижняя граница памяти, в которую загружаются приложения, соответствует тому адресу, начиная с которого загружала 32-разрядные приложения первая версия Windows NT, поэтому такое решение разработчиков представляется вполне разумным.
Системная виртуальная машина представляет собой работающую в защищенном режиме среду, в которой выполняются все приложения Windows, а также основные компоненты графической подсистемы Windows. Взаимодействие между приложениями и Windows осуществляется посредством сотен функций интерфейса прикладного программирования (API). Такого рода интерфейс позволяет приложениям прибегать к услугам системы при помощи вызова именованных функций, а не через пронумерованные прерывания, которые были доступны приложениям MS-DOS. Связь между Windows-приложением и Windows-подсистемами осуществляется в момент загрузки программы, в процессе так называемого динамического связывания.
При работе с файловой системой Windows 3.1 полагается на MS-DOS, что хотя и является единственным примером зависимости Windows 3.1 от MS-DOS, представляет собой слабое место системы. Такая зависимость от MS-DOS порождает много проблем, с которыми разработчики Windows борются уже в течение длительного времени. В Windows 9х все эти проблемы удалось решить путем замены файлового сервиса MS-DOS новой подсистемой защищенного режима.
Все действия MS-DOS по работе с файлами реализуются путем программного прерывания INT 21H, которое вызывает глобальную ошибку защиты (general protection fault), которую операционная система перехватывает и должным образом обрабатывает. Windows 3.1 временно переключает системную ВМ в виртуальный 8086-й режим, чтобы код, содержащий инструкцию MS-DOS INT 21H, мог отработать корректно. По завершении операции с файлом системная ВМ снова переключается в защищенный режим, и код приложения Windows продолжает выполняться.
Перехватив подобную ситуацию, Windows 9х передает ее для обработки диспетчеру файловой системы, который работает в защищенном режиме. При этом не происходит переключения из защищенного в виртуальный 8086-й режим, и при наличии работающего в защищенном режиме драйвера соответствующего целевого устройства контекст системной ВМ на протяжении всех операции остается контекстом защищенного режима.
Виртуальные машины MS-DOS – это точная копия работающего под управлением MS-DOS компьютера. С точки зрения приложения, ВМ обладает мегабайтом памяти, карта которой соответствует аппаратной карте памяти. Так, например, адресуемая напрямую видеопамять располагается, начиная с адреса В8000H. Обычно контекст MS-DOS представляет собой отображенную в виртуальное адресное пространство ВМ среду виртуального 8086-го режима с копией MS-DOS.
MS-DOS ВМ настраиваются посредством ВМ, которую можно увидеть при помощи специальных средств отладки: эта ВМ никогда не содержит реально выполняющихся приложений. Она создается и настраивается в соответствии с начальным состоянием среды после того, как завершится начальная загрузка системы и обработка инструкций, содержащихся в файлах CONFIG.SYS и AUTOEXEC.BAT. Внутри скрытой BM содержится вся глобальная для среды MS-DOS информация. Например, если перед запуском Windows в файле AUTOEXEC.BAT предусмотрен запуск резидентной программы, она будет загружена и станет частью глобальной среды MS-DOS. Даже в Windows 9х, крайне мало зависящей от MS-DOS, можно использовать CONFIG.SYS для загрузки драйверов устройств и AUTOEXEC.BAT для запуска резидентных программ, которые необходимо сделать частью глобальной среды MS-DOS.
Впоследствии, когда запускается приложение MS-DOS из Windows, система создает новую MS-DOS, а именно выделяет некоторый объем памяти и соответствующие управляющие блоки, после чего копирует в новую ВМ всю глобальную среду, содержащуюся в скрытой ВМ. Это копирование означает, что исходное состояние новой MS-DOS ВМ в точности соответствует тому состоянию компьютера, которое получили бы после его включения и завершения процесса начальной загрузки. Подобное копирование из скрытой ВМ также объясняет, почему изменения, вносимые в работу одной из виртуальных машин MS-DOS, никак не отражаются на работе других: как тех, что уже работают, так и тех, что будут запускаться позже.
Архитектура файловой системы
Новая архитектура файловой системы состоит из множества отдельных составляющих. На самом деле называть ее "файловой системой" не вполне правильно. Она имеет уровневую структуру, при этом на высшем уровне располагается устанавливаемый диспетчер файловой системы Installable filesystem manager (IFS), а на низком уровне – набор драйверов портов или драйверов минипортов, которые взаимодействуют с отдельными аппаратными средствами. В пределах той функциональности, что обеспечивают указанные компоненты, система может поддерживать несколько активных файловых систем. Некоторые из них (например FAT) Windows 9х поддерживает непосредственно. Поддержка файловых систем, разработанных не в Microsoft, осуществляется при помощи устанавливаемых модулей, которые поставляются самими фирмами-разработчиками. На рисунке 3.18 показаны все основные компоненты архитектуры файловой системы.
Выбор уровневой управляемой IFS структуры должен был снять проблемы, связанные с использованием прерывания MS-DOS INT 21H как единственного интерфейса для всех действий файловой системы.
На рисунке 3.18 показано весьма незначительное число уровней файловой системы, хотя именно эти компоненты должны присутствовать в стандартной системе.
Всего файловая система поддерживает 32 уровня: от подсистемы ввода-вывода (I/O subsystem – IOS) и далее до аппаратных средств. При инициализации компоненты регистрируют себя в IOS и объявляют уровни, на которых они хотели бы работать. Для того чтобы работать на более чем одном уровне, модуль должен передать IOS различные точки входа – по одной для каждого уровня. Над IOS располагаются файловые системы и устанавливаемый диспетчер файловой системы (IFS manager).
Основные функции наиболее употребительных уровней и компоненты, которые могут в них находиться:
Рис. 3.18. Уровни архитектуры файловой системы Windows 9х
Диспетчер IFS находится на самом верхнем уровне и представляет собой единственный VЧD, обеспечивающий интерфейс между запросами приложения и конкретной файловой системой, к которой обращается это приложение. Диспетчер IFS принимает как динамические обращения к функциям API от приложений Win32, так и обращения к прерыванию INT 21H, генерируемые Win16 или MS-DOS-приложениями. Диспетчер IFS преобразует эти обращения в обращения к следующему уровню – уровню файловой системы.
Работающая на этом уровне VFAT представляет собой работающую в защищенном режиме реализацию FAT файловой системы. VFAT может служить примером драйвера файловой системы (filesystem driver – FSD). Каждый FSD поддерживает определенную организацию файловой системы и обслуживает запросы. Диспетчер IFS – это единственный модуль, который может обращаться к FSD, приложения не могут обращаться к FSD напрямую.
Сам по себе VFAT – 32-разрядный модуль, написанный в виде реентерабельного кода, что позволяет многим задачам параллельно выполнять один и тот же код файловой системы.
CDFS представляет собой реализованную в виде реентерабельного кода для защищенного режима, соответствующую стандарту ISO 9660 файловую систему компакт-дисков. Это еще один пример FSD. В большинстве случаев CDFS заменит резидентную программу MSCDEX, используемую для поддержки компакт-дисков, и таким образом все взаимодействие с приводами компакт-дисков будет проходить в защищенном режиме.
Подсистема ввода-вывода (IOS) – это высший уровень подсистемы блочных устройств. Модуль IOS постоянно находится в памяти и обеспечивает другим компонентам файловой системы разнообразный сервис, включая перенаправление запросов и уведомлений о тайм-аутах.
Драйвер отслеживания томов (Volume Tracking Driver – VTD) занимает следующий после IOS уровень и отвечает за управление сменными устройствами. Обычно такими устройствами являются дисководы для дискет, однако сервисом VTD может пользоваться любое устройство, соответствующее "правилам сменности" Windows 9х. Основная задача VTD заключается в слежении за тем, чтобы в дисководе находился нужный диск или устройство. Если вытащить дискету из дисковода в то время, пока файл еще открыт, именно VTD просигнализирует об ошибке.
Драйвер определенного типа (Type Specific Driver – TSD) управляет всеми устройствами какого-то одного типа, например, жесткими дисками или накопителями на магнитной ленте. TSD проверяет запросы к устройству, которым он управляет и осуществляет преобразование входных параметров из логических в физические. Необходимо обратить внимание на то, что TSD в большей степени относится к устройствам определенного логического типа, например, к сжатым дискам, нежели конкретным аппаратным средствам.
Драйверы, поддерживаемые поставщиками (Vendor Supplied driver – VSD) представляют уровень, на котором работают драйверы, перехватывающие запросы к конкретным блочным устройствам. На этом уровне, например, можно частично изменить поведение существующего драйвера блочного устройства, а не подключать совершенно новый драйвер. Хорошим примером потенциального VSD служит модуль шифрования данных.
Драйвер порта (Port Draiver – PD) управляет конкретным адаптером. На персональном компьютере, оснащенном шиной ISA, будет работать драйвер порта IDE. Он занимается взаимодействием с устройством на самом низком уровне, включая инициализацию адаптера и обслуживание аппаратных прерываний.
SCSI-преобразователь (SCSIizer) преобразует запросы на ввод-вывод в блоки команд формата SCSI. Обычно на этом уровне будет присутствовать по одному SCSIizer-модулю на каждое SCSI-устройство, например, привод компакт-диска.
SCSI-диспетчер – это модуль, который позволяет применять в Windows 9х драйверы минипортов Windows NT. Это означает, что можно в буквальном смысле использовать одни и те же двоичные файлы драйверов как переводчика между драйвером минипорта Windows NT и верхними уровнями файловой системы.
Драйвер минипорта (Miniport Driver) – это модуль, специфичный для SCSI-устройств. Взаимодействуя со SCSI-диспетчером, он делает все то же самое, что и драйверы портов, но только для SCSI-адаптера. Драйверы минипортов Windows 9х строятся в соответствии с теми же правилами, что и драйверы минипортов Windows NT.
Преобразователь (Mopper) защищенного режима – модуль, который позволяет использовать существующие MS-DOS-драйверы в Windows, что очень важно для обеспечения совместимости. Преобразователь защищенного режима маскирует драйверы реального режима для обеспечения большей отдачи от модулей новой файловой системы таким образом, чтобы им не приходилось учитывать разницу в интерфейсе.
Хранение длинных имен
Требования совместимости, которым должна удовлетворять Windows 9х, означают, что невозможно просто изменить существующий формат хранения данных на диске, который применяется в FAT файловой системе.
Формат элемента каталога FAT файловой системы для короткого имени файла представлен на рисунке 3.19.
Рис. 3.19. Формат элемента каталога FAT
Новая VFAT файловая система поддерживает как длинные, так и короткие имена и, если не считать того, что она не использует поле "дата последнего изменения файла", 32-байтный элемент каталога идентичен тому формату, который поддерживают предыдущие версии MS-DOS.
Метод работы с длинными именами файлов строится на использовании байта атрибута элемента каталога для короткого имени файла. Установка младших четырех бит этого байта (значение OFH) задает элементу каталога атрибуты "только для чтения", "скрытый", "системный" и "метка тома" (read only, hidden, system file и volume). Добавление атрибута "метка тома" дает "невозможное" сочетание. Как это ни удивительно, проведенное Microsoft тестирование показало, что ни одна из существующих дисковых утилит не обратила внимания на такую комбинацию бит. В отличие от других, не имеющих смысла комбинаций, заметив которые дисковые утилиты пытаются "исправить" ошибку, эта (OFH) защищает элемент каталога от изменения.
В пределах одного кластера, в котором хранится информация о содержимом каталога, элемент с длинным именем файла располагается в соответствии с форматом, который показан на рисунке. Длинное имя файла не может существовать без связанного с ним элемента с коротким именем. Если имеет место такая ситуация, значит нарушена целостность данных на диске.
Каждый 32-байтный элемент, описывающий длинное имя файла, содержит порядковый номер (seguence number), защитный байт атрибута (protective attribute bute), значение типа (type value) и контрольную сумму (checksum). Порядковый номер помогает Windows 9х узнать о непоследовательном или некорректном изменении структуры каталога.
Интерфейс прикладного программирования (Windows API)
Разнообразие функций интерфейса прикладного программирования Windows 9х является по меньшей мере всеобъемлющим. Windows 9х API представляет собой подмножество разработанного Microsoft интерфейса Win32, и он обеспечивает совместимость за счет поддержки прикладных Windows-программ и приложений MS-DOS. С появлением Windows 9х Microsoft рекомендует прекратить разработку 16-разрядных приложений и, желая побудить разработчиков сделать такой выбор, делает новые возможности системы Windows 9х доступными только для 32-разрядных приложений. Впрочем, для большинства разработчиков достаточным поводом для такого перехода может служить одна только возможность наконец-то отказаться от использования сегментной адресации памяти. Если добавить к этому те новые возможности, что доступны теперь приложениям Win32, переход к 32-разрядному API становится весьма привлекательным.
Windows поддерживает свои API при помощи трех главных компонентов системы – модулей Kernel, User и GDI. Kernel берет на себя большинство функций операционной системы, таких как выделение памяти, управление процессами и пр.
Модуль User отвечает за управление окнами в ходе работы Windows, а именно за создание и перемещение окон, отправку сообщений, работу диалоговых окон, а также за бесчисленное множество сопутствующих действий. GDI – мотор графики Windows – занимается рисованием, масштабированием шрифтов, управлением цветом и печатью.
Каждое приложение Windows использует код этих модулей. В Windows 9х модули Kernel, User и GDI присутствуют в системе резидентно в виде 16- и 32-разрядной реализации. Кроме того, много кода используется совместно, как, например, 16- и 32-разрядные воплощения CGI.
Доступ ко всем функциям Windows API осуществляется по имени – в противоположность принятой в MS-DOS схеме пронумерованных прерываний. Для того чтобы обратиться к одной из функций Windows-подсистемы, программисты попросту используют имя необходимой функции в тексте программы, которую потом компилирует и компонует с соответствующими библиотеками, в результате чего получается готовое к работе приложений.
Если разобрать откомпилированную для Windows программу, то обнаружится набор ссылок на функции Windows API; ссылок, которые необходимы для того, чтобы Windows могла правильно загружать приложения. Так делают все программы Windows. На самом деле модули Kernel, User и GDI – это не что иное, как динамически компонуемые библиотеки Windows (Dynamic Link Library – DLL). Windows интенсивно использует такие библиотеки, а метод, который позволяет приложению обращаться к DLL, называется динамическим связыванием (Dynamic Linking).
3.5.5 Компоненты подсистемы Plug and Play
У проекта Plug and Play было несколько основных задач, которые должны были решить сама спецификация и любые ее воплощения. Самая главная цель состояла в том, чтобы не только облегчить добавление к системе новых аппаратных средств или изменение конфигурации уже подключенных устройств, но и предельно упростить эти действия. Пользователи изменяют конфигурацию устройств быстрее, чем раньше и не испытывают при этом раздражения, а значит, гораздо меньше переживаний выпадает на долю групп поддержки, в которые обычно звонят пользователи, если у них что-то не получается. У разработчиков аппаратных средств появляется четкий стандарт, которому они могут следовать вместо того, чтобы пытаться самим решать все потенциальные проблемы, связанные с установкой и конфигурированием. В случае если все новые аппаратные средства будут разрабатываться в соответствии со стандартом Plug and Play, становится вполне реальной ситуация, при которой все, что останется сделать для добавления устройства к сис-теме – это подключить его и скопировать на жесткий диск все необходимое программное обеспечение. С существующим в настоящее время программным обеспечением достичь такого уровня простоты очень сложно, поскольку аппаратные средства не соответствуют стандарту Plug and Play. Впрочем, можно сделать очень многое в смысле улучшения программного обеспечения, и стандарт Plug and Play действительно способствует совершенствованию драйверов устройств, которые могут позволить существующим соответствующим ISA аппаратным средствам поддаваться управлению в среде Plug and Play.
Спецификация Plug and Play насчитывает пять целей:
Простота установки и конфигурирования новых устройств.
Единые динамические изменения конфигурации.
Совместимость с уже установленными устройствами.
Независимость от аппаратных средств и операционной системы.
Упрощенность и повышенная гибкость аппаратной реализации.
В пределах подсистемы Plug and Play взаимодействует множество модулей, основные из которых показаны на рисунке 3.20.
Функциональное назначение элементов:
Дерево аппаратных средств. Это база данных, в которой содержится информация о текущей конфигурации системы, стро-ится диспетчером конфигурации и хранится в памяти. Каждая вершина дерева называется узлом устройства (device node) и содержит логическое описание либо конкретного устройства, либо шины.
.INF-файлы – это набор дисковых файлов, содержащих информацию о конкретных типах устройств. Например, в файле SCSI.INF хранится информация обо всех известных SCSI-устройствах. В ходе установки нового устройства, соответствующего Plug and Play, будет использован новый .INF-файл. Обычно такой файл находится на дискете, поставляемой вместе с устройством.
Рис. 3.20. Составляющие подсистемы Plug and Play
Реестр. Дерево аппаратных средств, которое описывает устройства, входит в состав реестра Windows 9х как поддерево.
События – это набор функций API, используюемых для уведомления об изменениях текущей конфигурации системы. В Windows 9х о событиях сигнализирует система сообщений. В других реализациях о них может сообщать один из компонентов операционной системы.
Диспетчер конфигурации. Этот модуль отвечает за построение базы данных, в которой содержится информация о конфигурации компьютера, помещаемой в реестр, и за уведомление драйверов устройств о том, какие ресурсы им выделены. Диспетчер конфигурации при работе системы представляет собой центральный модуль подсистемы Plug and Play.
Энумератор (Enumerator). Это новый тип драйвера, взаимодействующий с драйвером устройства и с диспетчером конфигурации. Энумератор обслуживает конкретное устройство (обычно шину), к которому могут подключаться другие устройства. С каждым описанным в дереве аппаратных средств устройством шины связан свой энумератор. Особый энумератор (root enumerator), называемый корневым, входит в состав диспетчера конфигурации. Он помогает настраивать устройства, которые не соответствуют стандарту Plug and Play.
Арбитр ресурсов. Этот модуль отвечает за управление выделением конкретных ресурсов и предотвращение конфликтов.
Plug and Play BIOS. Новая системная BIOS, которая поддерживает действия Plug and Play. Любое устройство (например, видеоконтроллер) также может иметь свою BIOS, соответствующую стандарту Plug and Play. Кроме того, Plug and Play BIOS выступает в качестве энумератора для материнских плат, и в этом качестве играет важную роль при присоединении к докам портативных систем.
Драйверы устройств Plug and Play. Это драйверы защищенного режима, которые отвечают за управление устройствами и, кроме того, участвуют в работе подсистемы Plug and Play.
Интерфейс пользователя – набор стандартных диалоговых окон, служащих для получения информации в тех случаях, когда подсистеме Plug and Play для конфигурирования необходима помощь пользователя. Они дают пользователю возможность ознакомиться с конфигурацией системы, которую строит подсистема Plug and Play.
Приложение. С точки зрения стандарта Plug and Play, это написанная для Windows 9х программа, которая способна воспринимать и обрабатывать сообщения системы о смене конфигурации.
Деятельность подсистемы Plug and Play состоит, главным образом, в том, что она от имени различных устройств управляет четырьмя видами ресурсов:
Память. Речь идет о требованиях устройств к физической памяти, например, сколько страниц памяти нужно устройству и каковы ограничения по выравниванию.
Ввод-вывод. Это порты ввода-вывода, через которые будет происходить работа с устройством. Информация о конфигурации устройства включает перечень альтернативных наборов портов.
DMA – список необходимых устройству каналов прямого доступа к памяти и любых альтернативных каналов, которые оно может использовать.
IRO – требования устройства к линии запроса прерываний, альтернативные IRQ, а также сведения о том, может ли устройство использовать IRQ как разделяемый ресурс.
Подсистема Plug and Play включает множество модулей, написанных на Си и Ассемблере. Большинство своих компонентов система загружает динамически. Главным элементом подсистемы Plug and Play является дерево аппаратных средств, описывающее текущую конфигурацию системы.
Допустим, что не вносилось никаких изменений в конфигурацию системы с того момента, когда в последний раз с ней работали. Посмотрим, что произойдет, если включить питание.
1. Системная BIOS "заглядывает" в энергонезависимое запоминающее устройство (СМ OS) и определяет конфигурацию компьютера. Затем BIOS конфигурирует все устройства, для которых ей удается обнаружить соответствующую информацию; в данном случае речь идет об устройствах материнской платы. При этом BIOS отключает все адаптеры, для которых отсутствует информация о конфигурации.
2. Начинается процесс загрузки. Система по-прежнему работает в реальном режиме. Корневой энумератор диспетчера конфигурации использует поддерево аппаратных средств из реестра Windows для справки о том, какой должна быть конфигурация системы.
3. Корневой энумератор просматривает поддерево реестра в поисках информации об устройствах, не соответствующих стандарту Plug and Play. Обнаружив очередное такое устройство, он создает узел устройства и добавляет его к корню хранящегося в памяти дерева аппаратных средств. Кроме того, корневой энумератор конфигурирует все те устройства, которые не сконфигурировала BIOS.
4. Продолжается загрузка системы в реальном режиме. Системный загрузчик обрабатывает файл SYSTEM.INI и загружает все указанные в нем статические виртуальные драйверы внешних устройств.
5. После этого загружаются остальные энумераторы. Например, BIOS отметила тот факт, что в состав системы входит шина ISA. В реестре указано, какой энумератор следует загрузить для данной шины.
6. Энумератор изучает подключенные к шине устройства и загружает либо статический VЧD (если таковой необходим), либо еще один энумератор, если необходимо обследовать дополнительную шину.
7. Теперь в памяти уже находятся все необходимые драйверы реального режима и статические VЧD. Ядро операционной системы заканчивает свою собственную инициализацию и переключается в защищенный режим.
8. Запускается диспетчер конфигурации. Некоторые из подключенных к системе устройств уже полностью проинициализированы и их драйверы уже загружены. Про остальные устройства система уже знает, но их драйверы еще не загружены.
9. Диспетчер конфигурации загружает нужные энумераторы, которые, в свою очередь, изучают подключенные устройства и присоединяют к дереву аппаратных средств новые узлы. По окончании этого процесса диспетчер конфигурации загружает драйверы, соответствующие новым узлам устройств. Именно на этом этапе становится известно обо всех возможных конфликтах, и принимаются соответствующие решения.
10. Если после всех этих действий останется какое-нибудь неопознанное, не поддерживающее стандарт Plug and Play устройство, Windows начинает процесс его установки, в ходе которого пользователю приходится помогать системе разобраться с конфигурированием. Если необходимости в этом не возникает, система начинает работать.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
Богумирский Б. Руководство пользователя ПЭВМ: В 2 ч. – СПб.: Ассоциация AILCO, 1992. - 298 с.
Герасименко В. Защита информации в автоматизированных системах обработки данных: в 2 кн. Книги 1, 2. - М.: Энергоиздат, 1994. - 576 с.
Герасименко В., Малюк А. Основы защиты информации. - М.: МОПО, МИФИ, 1997. - 537 с.
Доктрина информационной безопасности Российской Федерации от 9 сентября 2000 г. № Пр-1895.
Жигарев А. Основы компьютерной грамоты. - Л.: Машиностроение, 1988. - 285 с.
Информатика: Учебник / Под ред. проф Макаровой Н.. - М.: Финансы и статистика, 1997. - 768 с.
Каранчук В. и др. Основы применения ЭВМ. - М.: Радио и связь, 1988. - 276 с.
Копылов В. Информационное право: Уч. пособие. - М.: Юрист, 1997. - 472 с.
Медник С. Защита ЭВМ. - М.: Мир, 1982. - 263 с.
Мельников В. Защита информации в компьютерных системах. - М.: Финансы и статистика, 1997. - 364 с.
СТ ИСО 2382/1–84.
Острейковский В. Информатика: Учебник для вузов. - М.: Высш. шк., 2000. - 508 с.
Петров В., Пискарев А., Шеин А. Информационная безопасность. Защита информации от несанкционированного доступа в автоматизированных системах: Уч. пособие. Изд. 2-е, испр. и доп. - М.: МИФИ, 1995. - 84 с.
Романец Ю.В и др. Защита информации в компьютерных системах и сетях / Под ред. В.Ф. Шаньгина. – М.: Радио и связь, 1999. - 328 с.
Спесивцев А., Вегнер В., Крутяков А., Серегин В., Сидоров В. Защита информации в персональных ЭВМ. - М.: Радио и связь, МП "Веста", 1992. - 192 с.
Соболева Т. Тайнопись в истории России. - М.: Международные отношения, 1994. – 382 с.
Теория и практика обеспечения информационной безопасности/ Под ред. Зегжды П.. - М.: Издательство Агентства "Яхтсмен", 1996. - 192 с.
Федеральный Закон Российской Федерации от 20 февраля 1995г. № 24-ФЗ (с изменениями от 10 января 2003 г.) "Об информации, информатизации и защите информации".
Хоффман Л. Современные методы защиты информации: Пер. с англ. / Под ред. Герасименко В. А. - М.: Советское радио, 1980. - 263 с.
Цигичко В., Смолян Г. Оценка систем информационной безопасности. - М.: ИСА РАН, 1995. – 43 с.
Черешкин Д., Аносов В. и др. Концепция информационной безопасности Российской Федерации / Под ред. Черешкина Д. и Вирковского В.. – М.: ИСА РАН, 1994. – 44 с.
Шураков В. Обеспечение сохранности информации в системах обработки данных. - М.: Финансы и статистика, 1985. - 224 с.