This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
СОДЕРЖАНИЕ I. ОБЩАЯ ХАРАКТЕРИСТИКА ПРОЦЕССОВ СБОРА, ПЕРЕДАЧИ, ОБРАБОТКИ И НАКОПЛЕНИЯ ИНФОРМАЦИИ............................................................................7 Основные понятия информатики 7 История развития информатики 9 История компьютера 11 Виды и свойства информации 14 Восприятие, сбор, передача, обработка и накопление информации 16 Кодирование информации 19 Вероятностный подход к определению количества информации 20 Единицы измерения информации 22 П. СИСТЕМЫ СЧИСЛЕНИЯ И ОСНОВЫ ЛОГИКИ..............24 Системы счисления 26 Двоичная система счисления 27 Объекты и операции алгебры логики 30 Законы алгебры логики 32 III. ТЕХНИЧЕСКИЕ СРЕДСТВА РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ Открытая архитектура персонального компьютера Основные блоки компьютера Принтеры Дополнительные устройства, подключаемые к компьютеру Носители информации
32 32 34 39 43 48
IV. ОСНОВЫ МОДЕЛИРОВАНИЯ Основные понятия моделирования Уровни моделирования Виды моделирования Имитационное моделирование
50 50 53 54 57
V. АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ Понятие и свойства алгоритма Правила построения алгоритмов Виды алгоритма Способы записей алгоритмов Объектно-ориентированное программирование
60 60 62 63 65 67
Языки программирования Ассемблер, Фортран, Бейсик и Рефал Язык программирования Си Язык программирования Си++ VI. БАЗЫ ДАННЫХ Классификация баз данных Реляционные базы данных Современные технологии, используемые в работе с данными Системы управления базами данных (СУБД) Правила Кодда Свойства и типы полей Виды и способы организации запросов Система управления базами данных Microsoft Access Система управления базами данных Oracle VII. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА Файлы и каталоги Создание, структура и методы проектирования программы Системы кодировки русских букв Структура программного обеспечения Системное и прикладное программное обеспечение Операционная система: назначение и основные функции Операционная система MS DOS Операционная система Windows З.хх Операционная система Windows 95 Операционная система Windows 98 Операционная система Windows NT Операционная система Windows 2000 Операционная система Windows Millennium Edition Прочие операционные системы Общие сведения о Norton Commander Прочие программы офисного назначения Основные программы для работы со звуком и музыкой Компьютерные вирусы Антивирусные программы
VIIL ТЕХНОЛОГИЯ ОБРАБОТКИ ТЕКСТОВОЙ ИНФОРМАЦИИ Создание текстового документа Набор текста Базовые функции редактирования текстового документа Основные методы форматирования текстовых документов Оформление абзацев текстового документа Работа с таблицами текстового документа Текстовые редакторы IX. ТЕХНОЛОГИЯ ОБРАБОТКИ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ Компьютерная графика Растровая графика Векторная графика Основные цветовые модели Цветовая палитра Форматы файлов растровой графики Программы для работы с растровой графикой Программы для работы с векторной графикой X. ТЕХНОЛОГИЯ ОБРАБОТКИ ЧИСЛОВОЙ ИНФОРМАЦИИ Табличные процессоры (электронные таблицы): назначение и основные возможности Основные объекты в табличных процессорах Абсолютная и относительная адресация ячеек Формулы и функции Построение диаграмм Табличный процессор Microsoft Excel Табличные процессоры Quattro Pro и SuperCalc XI. ЛОКАЛЬНЫЕ И ГЛОБАЛЬНЫЕ СЕТИ ЭВМ Базовая модель OSI (Open System Interconnection) Топологии вычислительной сети Протоколы вычислительной сети Маршрутизаторы и мосты вычислительной сети Сетевые средства коммутации Классификация вычислительных сетей Локальные вычислительные сети Глобальные вычислительные сети Сеть Internet
Электронная почта Технология World Wide Web (WWW)....... Язык гипертекстовой разметки Web-документов HTML XII. ОСНОВЫ ЗАЩИТЫ ИНФОРМАЦИИ И СВЕДЕНИЙ Информационная безопасность и информационные технологии Способы и средства защиты информации Политика безопасности при защите информации Компьютерная преступность Классификация методов шифрования информации Выбор паролей Электронно-цифровая подпись Информационная безопасность в сетях ЭВМ Проблемы защиты информации в Internet Защита информации в локальных вычислительных сетях
ОБЩАЯ ХАРАКТЕРИСТИКА ПРОЦЕССОВ СБОРА, ПЕРЕДАЧИ, ОБРАБОТКИ И НАКОПЛЕНИЯ ИНФОРМАЦИИ
?
Основные понятия информатики
Информатика — наука о преобразовании информации. Она исследует процессы получения, передачи, обработки, хранения и представления информации. В широком смысле информация — это отражение реального мира с помощью знаков или сигналов. В узком смысле под информацией понимают те явления, которые человек получает из окружающего мира. Информатика (от франц. information — информация и automatique — автоматика) — область научно-технической деятельности. В современном мире информация обрабатывается в основном вычислительными машинами. Понятие «информация» тесно связано с понятием «информационные системы». Информационные системы включают в себя следующие компоненты: функциональные компоненты, системы обработки данных, организационные компоненты. Функциональные компоненты информационной системы представляют собой подсистемы обработки информационных ориентиров по определенному функциональному признаку. Типовыми задачами систем обработки данных (СОД) информационной системы являются: сбор и перенос информации на машинные носители (жесткий диск, гибкий диск); передача информации в места ее хранения и обработка; ввод информации в ЭВМ и контроль ввода; создание и ведение внутримашинной информационной базы; обработка информации на ЭВМ (накопление, сор-
Основные понятия информатики
тировка, корректировка, выборка, арифметическая и логическая обработка); вывод информации; управление вычислительными процессами в вычислительных сетях. Организационные компоненты информационной системы — совокупность методов и средств для совершенствования организации структурных объектов, штатного расписания, должностных инструкций персонала. Информационные технологии — целенаправленный процесс преобразования информации, использующий совокупность средств и методов сбора, обработки, хранения и передачи информации. Как и многие другие технологии, информационная технология должна отвечать следующим требованиям: + обеспечивать высокую степень деления всего процесса обработки информации на составляющие компоненты (фазы, этапы, операции, действия); + включать весь набор инструментов, необходимых для достижения поставленной цели; + отдельные компоненты должны быть стандартизированы и унифицированы. Информационные ресурсы — информация, используемая на производстве, в технике, управлении обществом, специально организованная и обрабатываемая на ЭВМ. Информационные ресурсы в объеме страны — национальные информационные ресурсы. Информационные ресурсы страны определяют ее научно-технический прогресс, научный потенциал, экономическую и стратегическую мощь. В этом смысле говорят об информатизации общества. Инфосфера — совокупное информационное пространство. Информатизация общества — повсеместное внедрение комплекса мер, направленных на обеспечение полного и своевременного использования достоверной информации, и зависит от степени освоения и развития новых информационных технологий.
История развития информатики
? История развития информатики Всю историю информатики принято разбивать на два больших этапа: предысторию и историю. Предыстория информатики такая же древняя, как и история развития человеческого общества. В предыстории выделяют ряд этапов. Каждый из них характеризуется по сравнению с предыдущим резким возрастанием возможностей хранения, передачи и обработки информации. Начальный этап предыстории — освоение человеком развитой устной речи. Членораздельная речь, язык стал специфическим социальным средством хранения и передачи информации. Второй этап — возникновение письменности. Прежде всего возросли (по сравнению с предыдущим этапом) возможности по хранению информации. Человек получил искусственную внешнюю память. Организация почтовых служб позволила использовать письменность и как средство для передачи информации. Возникновение письменности было необходимым условием для начала развития наук. С этим же этапом связано и возникновение понятия «натуральное число». Все народы, обладавшие письменностью, владели понятием числа и пользовались той или иной системой счисления. Третий этап — книгопечатание. Книгопечатание можно назвать первой информационной технологией. Воспроизведение информации было поставлено на поток, на промышленную основу. По сравнению с предыдущим этот этап не столько увеличил возможности по хранению, сколько повысил доступность информации и точность ее воспроизведения. Четвертый и последний этап предыстории связан с успехами точных наук (прежде всего математики и физики) и начинающейся в то время научно-технической революцией. Этот этап характеризуется возникновением таких мощных средств связи, как радио, телефон и телеграф, к которым по завершению этапа добавилось и теле-
История развития информатики
видение. Кроме средств связи появились новые возможности по получению и хранению информации — фотография и кино. К ним также важно добавить разработку методов записи информации на магнитные носители (магнитные ленты, диски). С разработкой первых ЭВМ принято связывать возникновение информатики как науки. Для такой «привязки» имеется несколько причин. Во-первых, сам термин «информатика» появился на свет благодаря развитию вычислительной техники, и поначалу под ним понималась наука о вычислениях. Во-вторых, выделению информатики в отдельную науку способствовало такое свойство современной вычислительной техники, как единая форма представления обрабатываемой и хранимой информации. Вся информация, вне зависимости от ее вида, хранится и обрабатывается на ЭВМ в двоичной форме. Информатика представляет собой комплексную научно-техническую дисциплину. Информатика под своим названием объединяет довольно обширный комплекс наук, каждая из которых занимается изучением одного из аспектов понятия информация.
10
История компьютера
?История компьютера В развитии вычислительной техники обычно выделяют несколько поколений ЭВМ: на электронных лампах (40-е — начало 50-х гг.), дискретных полупроводниковых приборах (середина 50—60-х гг.), интегральных микросхемах (в середине 60-х гг.). История компьютера связана с попытками человека автоматизировать большие объемы вычислений. Простые арифметические операции с большими числами затруднительны для человеческого мозга. Поэтому уже в древности появилось простейшее счетное устройство — абак. В XVII в. была изобретена логарифмическая линейка, облегчающая сложные математические расчеты. В 1642 г. Блез Паскаль сконструировал восьмизарядный суммирующий механизм. Два столетия спустя, в 1820 г. француз Шарль де Кольмар создал арифмометр, способный производить умножение и деление. Все основные идеи, которые лежат в основе работы компьютеров, были изложены еще в 1833 г. английским математиком Чарльзом Бэббиджом. Он разработал проект машины для выполнения научных и технических расчетов, где предугадал устройство современного компьютера. Для ввода и вывода данных Бэббидж предлагал использовать перфокарты — листы из плотной бумаги с информацией, наносимой с помощью отверстий. В то время перфокарты использовались в текстильной промышленности. Управление такой машиной должно было осуществляться программным путем. Идеи Бэббиджа стали воплощаться в конце XIX в. В 1888 г. американский инженер Герман Холлерит сконструировал первую электромеханическую счетную машину. Эта машина, названная табулятором, могла считывать и сортировать статистические записи, закодированные на перфокартах. В 1890 г. изобретение Холлерита было использовано в 11-й американской переписи населения. Работа, которую 500 сотрудников выполняли в 11
История компьютера
течение семи лет, Холлерит с 43 помощниками на 43 табуляторах выполнил за один месяц. Дальнейшее развитие науки и техники позволило в 1940-х гг. построить первые вычислительные машины. В феврале 1944 г. на одном из предприятий Ай-Би-Эм в сотрудничестве с учеными Гарвардского университета по заказу ВМС США была создана машина «Марк-1» весом в 35 т. «Марк-1» был основан на использовании электромеханических реле и оперировал десятичными числами, закодированными на перфоленте. Машина могла манипулировать числами длиной до 23 разрядов. Для перемножения двух 23-разрядных чисел ей было необходимо 4 секунды, что было недостаточно быстро. В 1943 г. американцы начали разработку альтернативного варианта вычислительной машины на основе электронных ламп. В 1946 г. была построена первая электронная вычислительная машина ENIAC. Ее вес составлял 30 т, она требовала для размещения 170 м2 площади. Вместо тысяч электромеханических деталей ENIAC содержала 18 тыс. электронных ламп. Считала машина в двоичной системе и производила 5 тыс. операций сложения или 300 операций умножения в секунду. Машины на электронных лампах работали быстрее, но сами электронные лампы часто выходили из строя. Для их замены в 1947 г. американцы Джон Бардин, Уолтер Браттейн и Уильям Брэдфорд Шокли предложили использовать изобретенные ими стабильные переключающие полупроводниковые элементы — транзисторы. Совершенствование первых образцов вычислительных машин привело в 1951 г. к созданию компьютера UNIVAC, который стал первым серийно выпускавшимся компьютером, а его первый экземпляр был передан в Бюро переписи населения США. В 1959 г. были изобретены интегральные микросхемы (чипы), в которых все электронные компоненты вместе с проводниками помещались внутри кремниевой пластинки. Применение чипов в компьютерах позволяет со12
История компьютера
кратить пути прохождения тока при переключениях, и скорость вычислений повышается в десятки раз. Уменьшаются габариты машин. Появление чипа знаменовало собой рождение третьего поколения компьютеров. В 1970 г. сотрудник компании Intel Эдвард Хофф создал первый микропроцессор, разместив несколько интегральных микросхем на одном кремниевом кристалле. Это революционное изобретение кардинально перевернуло представление о компьютерах как о громоздких, тяжеловесных монстрах. С микропроцессором появляются микрокомпьютеры — компьютеры четвертого поколения, способные разместиться на письменном столе пользователя. В середине 1970-х гг. начинают предприниматься попытки создания персонального компьютера — вычислительной машины, предназначенной для частного пользователя. Во второй половине 1970-х гг. появляются наиболее удачные образцы микрокомпьютеров американской фирмы Apple, но широкое распространение персональные компьютеры получили с созданием в августе 1981 г. фирмой IBM модели компьютера IBM PC. Применение принципа открытой архитектуры, стандартизация основных компьютерных устройств и способов их соединения привели к массовому производству клонов IBM PC, распространению микрокомпьютеров во всем мире. За последние десятилетия XX в. микрокомпьютеры проделали значительный эволюционный путь, многократно увеличили быстродействие и объемы перерабатываемой информации, но окончательно вытеснить большие вычислительные системы-мейнфреймы они не смогли. Более того, развитие больших вычислительных систем привело к созданию суперкомпьютера — суперпроизводительной и супердорогой машины, способной просчитывать модель ядерного взрыва или крупного землетрясения. В начале XXI в. человечество вступило в стадию формирования глобальной информационной сети, которая способна объединить возможности компьютерных систем.
13
Виды и свойства информации
? Виды и свойства информации Все многообразие окружающей нас информации можно сгруппировать по различным признакам. По признаку «область возникновения» информация делится на: + элементарную — отражает процессы и явления неодушевленной природы; + биологическую — отражает процессы растительного и животного мира; + социальную — отражает процессы человеческого общества. По способу передачи и восприятия различают информацию: + визуальную — передается видимыми образами и символами; + аудиальную — передается звуками; + тактильную — передается ощущениями; + органо-лептическую — передается запахами и вкусом; + машинную — выдаваемую и воспринимаемую средствами вычислительной техники. Информацию, создаваемую и используемую человеком, по общественному назначению делят на виды: ВИДЫ ИНФОРМАЦИИ
В информатике рассматривают две формы представления информации: + аналоговую (непрерывную) — температура тела; мелодия, извлекаемая на скрипке, когда смычок не отрывается от струн и не останавливается; движение автомобиля; + дискретную (прерывистую) — времена года, точка и тире в азбуке Морзе. Информация имеет определенные свойства: + полезность (относительно конкретной информационной системы); + полнота; + достоверность, она уменьшается с уменьшением полноты; + новизна, актуальность — с течением времени информация стареет; + ценность, самая ценная информация — достаточно полезная, полная, достоверная и новая; + ясность; + защищенность, т.е. невозможность несанкционированного использования или изменения.
15
Восприятие, сбор, передача, обработка и накопление информации
? Восприятие, сбор, передача, обработка и накопление информации Восприятие информации — процесс преобразования сведений, поступающих в техническую систему или живой организм из внешнего мира, в форму, пригодную для дальнейшего использования. Благодаря восприятию информации обеспечивается связь системы с внешней средой (в качестве которой могут выступать человек, наблюдаемый объект, явление или процесс и т.д.). Восприятие информации необходимо для любой информационной системы. Современные информационные системы, создаваемые, как правило, на базе ЭВМ, в качестве своей составной части имеют более или менее развитую систему восприятия. Система восприятия информации представляет довольно сложный комплекс программных и технических средств. Для развитых систем восприятия можно выделить несколько этапов переработки поступающей информации: предварительная обработка для приведения входных данных к стандартному для данной системы виду, выделение в поступающей информации семантически и прагматически значимых информационных единиц, распознавание объектов и ситуаций, коррекция внутренней модели мира. В зависимости от анализаторов, входящих в комплекс технических средств системы восприятия, организуется восприятие зрительной, акустической и других видов информации. Кроме того, различают статическое и динамическое восприятие. Сбор информации — это процесс получения информации из внешнего мира и приведение ее к стандарту для данной информационной системы. Обмен информацией между воспринимающей ее системой и окружающей средой осуществляется посредством сигналов. Сигнал можно определить как средство перенесения информации в пространстве и времени. В качестве носителя сигнала могут выступать звук, свет, электрический ток, магнитное поле и т.п. Сбор информации, как правило, сопро16
Восприятие, сбор, передача, обработка и накопление информации
вождается ее регистрацией, т.е. фиксацией информации на материальном носителе (документе или машинном носителе). Передача информации осуществляется различными способами: с помощью курьера, пересылка по почте, доставка транспортными средствами, дистанционная передача по каналам связи. Дистанционная передача по каналам связи сокращает время передачи данных. Для ее осуществления необходимы специальные технические средства. Некоторые технические средства сбора и регистрации, собирая автоматически информацию с датчиков, установленных на рабочих местах, передают ее в ЭВМ. Дистанционно может передаваться как первичная информация с мест ее возникновения, так и результатная в обратном направлении. В этом случае результатная информация отражается на различных устройствах: дисплеях, табло, печатающих устройствах. Поступление информации по каналам связи в центр обработки в основном осуществляется двумя способами: на машинном но сителе и непосредственно в ЭВМ при помощи специальных программных и аппаратных средств. Общая схема передачи информации
Восприятие, сбор, передача, обработка и накопление информации
вычислительную систему. Организация процесса предполагает определение последовательности решения задач и реализацию вычислений. Последовательность решения задается, исходя из их информационной взаимосвязи, когда результаты решения одной задачи используются как исходные данные для решения другой. Технология электронной обработки информации — человеко-машинный процесс исполнения взаимосвязанных операций, протекающих в установленной последовательности с целью преобразования исходной (первичной) информации в результатную. Операция представляет собой комплекс совершаемых технологических действий, в результате которых информация преобразуется. Технологические операции разнообразны по сложности, назначению, технике реализации, выполняются на различном оборудовании многими исполнителями. Хранение и накопление информации вызвано многократным ее использованием, применением постоянной информации, необходимостью комплектации первичных данных до их обработки. Хранение информации осуществляется на машинных носителях в виде информационных массивов, где данные располагаются по установленному в процессе проектирования группировочному признаку.
18
Кодирование информации
Кодирование информации С целью засекречивания информации применяется ее кодирование. С незапамятных времен появились коды в виде криптограмм (по-гречески — тайнопись). Самый первый код связан с именем изобретателя телеграфного аппарата Сэмюэля Морзе и известен как азбука Морзе. Каждой букве или цифре в азбуке Морзе соответствует своя последовательность из кратковременных (называемых точками) и длительных (тире) сигналов, разделяемых паузами. Способы кодирования информации следующие: символьный, лингвистический, табличный, графический. Любой способ кодирования характеризуется наличием основы (алфавит, тезаурус, спектр цветности, система координат, основание системы счисления и т.п.) и правил конструирования информационных образов на этой основе. Коды, использующие два различных элементарных сигнала, называются двоичными. Если отвлечься от физической природы сигналов, удобно обозначать их символами 0 и 1. Тогда кодовые слова можно представлять как последовательность из нулей и единиц. Существует много кодов: двоичный код обмена информации ДКОИ, восьмеричный код обмена информацией КОИ-8, в современных персональных компьютерах информация представляется в коде ASCII (American Standard Code for Information Interchange) — американский стандартный код для обмена информацией. В России используется так называемая альтернативная ASCII кодировка, содержащая символы русского алфавита. При вводе информации в компьютер каждый символбуква русского или латинского алфавита, цифра, знак пунктуации или действия кодируется определенной последовательностью из восьми двоичных цифр в соответствии с таблицей кодирования. Комбинация из 8 бит называется байтом, или слогом. 19
Вероятностный подход к определению количества информации
Вероятностный подход к определению количества информации В последние годы XX столетия ученые решили придать слову «информация» вероятностное значение: «мера определенности в сообщении». Теория информации была вызвана потребностью в ней практики. Ее возникновение связывают с работой Клода Шеннона «Математическая теория связи», изданной в 1946 г. Во второй половине XX в. земной шар «гудел» от передающейся информации, бегущей по телефонным и телеграфным кабелям и радиоканалам. Позднее появились электронные вычислительные машины — обработчики информации. Ранее основной задачей теории информации являлось повышение эффективности функционирования систем связи. Сложность при проектировании и эксплуатации средств, систем и каналов связи в том, что конструктору и инженеру недостаточно решить задачу с физических и энергетических позиций. Важно при создании передающих систем знать, какое количество информации пройдет через эту передающую систему. Количественный подход — наиболее разработанная ветвь теории информации. В соответствии с этим определением совокупность 100 букв — фраза из 100 букв из газеты, пьесы Шекспира или теоремы Эйнштейна — имеет в точности одинаковое количество информации. Такое определение количества информации является полезным и практичным. Оно соответствует задаче инженера связи, который должен передать всю информацию, содержащуюся в поданной телеграмме, вне зависимости от ценности этой информации для адресата. Передающей системе необходимо передать нужное количество информации за определенное время. Оценка количества информации основывается на законах теории вероятностей, точнее, определяется через вероятности событий. Сообщение о событии, у которого только два одинаково возможных исхода, содержит одну единицу инфор20
Вероятностный подход к определению количества информации
мации, называемую битом. Выбор единицы информации не случаен. Он связан с наиболее распространенным двоичным способом ее кодирования при передаче и обработке. Известно, что количество информации зависит от вероятностей тех или иных исходов события. Если событие, как говорят ученые, имеет два равновероятных исхода, это означает, что вероятность каждого исхода равна 1/2. Такова вероятность выпадения «орла» или «решки» при бросании монеты. Если событие имеет три равновероятных исхода, то вероятность каждого равна 1/3. Следует отметить, что сумма вероятностей всех исходов всегда равна единице: ведь какой-нибудь из всех возможных исходов обязательно наступит. Событие может иметь и неравновероятные исходы. Так, при футбольном матче между сильной и слабой командами вероятность победы сильной команды велика — например, 4/5. Вероятность ничьей намного меньше, например 3/20. Вероятность же поражения совсем мала. Количество информации — это мера уменьшения неопределенности некоторой ситуации. Различные количества информации передаются по каналам связи, и количество проходящей информации не может быть больше его пропускной способности. Ее определяют по количеству информации за единицу времени.
21
Единицы измерения информации
Единицы измерения информации В настоящее время наиболее известны следующие способы измерения информации: объемный, энтропийный, алгоритмический. Объемный способ измерения информации является простым и грубым способом измерения информации. Соответствующую количественную оценку информации естественно назвать объемом информации. Объем информации в сообщении — это количество символов в сообщении. Поскольку, например, одно и то же число может быть записано многими разными способами (с использованием разных алфавитов): «двадцать один»; 21; 11001; XXI, то этот способ чувствителен к форме представления (записи) сообщения. В вычислительной технике обрабатываемая и хранимая информация вне зависимости от ее природы (число, текст, отображение) представлена в двоичной форме (с использованием алфавита, состоящего всего из двух символов — 0 и 1). Такая стандартизация позволила ввести две стандартные единицы измерения: бит и байт. Байт — это восемь бит. В теории информации и кодирования принят энтропийный подход к измерению информации. Этот способ исходит из следующей модели. Получатель информации (сообщения) имеет определенные представления о возможных наступлениях некоторых событий. Эти представления в общем случае недостоверны и выражаются вероятностями, с которыми он ожидает то или иное событие. Общая мера неопределенности (энтропия) характеризуется некоторой математической зависимостью от совокупности этих вероятностей. Количество информации в сообщении определяется тем, насколько уменьшится эта мера после получения сообщения. В алгоритмической теории информации (раздел теории алгоритмов) предлагается алгоритмический метод оценки информации в сообщении. Этот метод заключает22
Единицы измерения информации
ся в том, что любому сообщению можно приписать количественную характеристику, отражающую сложность (размер) программы, которая позволяет ее произвести. Существует много разных вычислительных машин и разных языков программирования (разных способов задания алгоритма), и поэтому для определенности задаются некоторой конкретной вычислительной машиной. Предполагаемая количественная характеристика — сложность слова (сообщения) определяется как минимальное число внутренних состояний вычислительной машины, требующихся для его воспроизведения. В алгоритмической теории информации также используются и другие способы задания сложности.
23
СИСТЕМЫ СЧИСЛЕНИЯ И ОСНОВЫ ЛОГИКИ 2
Системы счисления
Система счисления — это совокупность правил и приемов записи чисел с помощью набора цифровых знаков (алфавита). Количество цифровых знаков называют основанием системы счисления. Различают два типа систем счисления: + позиционные, когда значение каждой цифры числа определяется ее местом (позицией) в записи числа; + непозиционные, когда значение цифры в числе не зависит от ее места в записи числа. Примером непозиционной системы счисления является римская: XI, IV, XV и т.д. Примером позиционной системы счисления можно назвать десятичную систему, используемую повседневно. Любое целое число в позиционной системе можно записать в форме многочлена:
где S — основание системы счисления; А — значащие цифры числа, записанные в данной системе счисления; п — количество разрядов числа. Пример 1. Число 5341 1 0 запишем в форме многочлена: 5341 1 0 = 5 • 10 3 + 3 • 10 2 + 4 • 101 + 1 • 10°. Пример 2. Число 321 1 0 запишем в двоичной системе счисления. Для этого необходимо разложить число в виде суммы по степеням 2: 8
6
3 2 1 1 0 = 1 - 2 + 1-2 + 1-2°. Записываем коэффициенты при степенях двойки (от минимальной нулевой степени к максимальной) справа 24
Системы счисления
налево. Поэтому данное число в двоичной системе счисления будет иметь вид: 101000001 2 . Для того чтобы решить обратную задачу: перевести число из двоичной системы счисления в десятичную, необходимо воспользоваться формулой и произвести вычисления в 10-ной системе счисления. Пример 3. Число 10100101 2 перевести в 10-ную систему счисления: 10100101 2 = 1 • 2° + 1 • 22 + 1 • 25 + 1 • 27 = 165 1 0 .
25
Двоичная система счисления
Двоичная система счисления Двоичная система счисления — способ записи чисел с помощью цифр 1 и 0, которые являются коэффициентами при степени два. Ее обозначение — &В. Например, запись &В11001 говорит о том, что число представлено в двоичной системе счисления. Для перевода целого числа из десятичной в двоичную систему счисления необходимо это число делить на двойку. Если поделилось без остатка, то пишем 0; если с остатком 1, то пишем 1. Это будет последняя цифра в записи числа. Например: 25 — 24 = 1 (остаток 1) 25/2 = 12 12 - 12 = 0 (остаток 0) 12/2 = 6 6 — 6 = 0 (остаток 0) 6/2 = 3 3 — 2 = 1 (остаток 1) 3/2 = 1 (остаток от деления числа 25 на 2) — это и будет первая цифра в записи числа 25 в двоичной системе. То есть 25 1 0 = 11001 2 . Для перевода целого числа из двоичной системы в десятичную необходимо цифры умножать на двойку в степени номера позиции (номер позиции начинается с нуля и нумеруется справа налево). Например: 11001 = 1-2° + 0-2 1 + 0-2 2 + 1-2 3 + 1-2 4 = = 1 + 0 + 0 + 8 + 16 = 25. 43210 — номера позиции цифр в числе — они являются степенями двойки.
26
Объекты и операции алгебры логики
Объекты и операции алгебры логики Логика (от греч. слова logos — слово, мысль, речь, разум) — совокупность наук о законах и формах мышления, о наиболее общих законах мышления. Начало исследований в области формальной логики было положено работами Аристотеля в IV в. до н.э. Логика оперирует понятиями, суждениями и умозаключениями. В середине XIX в. возникла и начала интенсивно развиваться математическая логика, применяющая для анализа рассуждений математические средства и методы. Именно она заложила теоретические основы последующей разработки языков программирования. Одним из основных разделов математической логики является алгебра логики (исчисление высказываний), основоположником которой был Джордж Буль (1815— 1864), положивший в основу своего логического учения методы алгебры (алгебра Буля). Алгебра логики в ее современном изложении занимается исследованием операций с высказываниями. Высказывание — это истинное или ложное предложение. В еcтественном языке высказывания образуются повествовательным предложением или риторическим вопросом. Вопросительные и повелительные предложения не образуют высказывания. Например: «истинные» — «Юпитер — планета Солнечной системы», «три умножить на три равно девяти», «3 — простое число»; «ложные» — «Венера — не планета Солнечной системы», «шесть меньше четырех». Предложения «Будь внимателен!», «Успеешь ли ты вовремя?» не являются высказываниями. Вопрос об истинности простых высказываний лежит вне сферы логики — на него отвечают конкретные науки, повседневная практика или наблюдение. Высказывания обычно обозначаются большими буквами латинского алфавита. Если высказывание А истинно, то пишется А = 1, если ложно, то А = 0. 27
Объекты и операции алгебры логики
Сложные высказывания содержат простые высказывания, соединенные логическими связками. В алгебре логики определены действия над высказываниями, выполняя которые, получаются новые сложные высказывания, истинность или ложность которых можно определить из таблицы истинности. Логическая связка отрицание: в обычном языке ему соответствует выражение «неверно, что ...», относящееся ко всему высказыванию, или присоединение союза «не» к некоторой части простого высказывания. Например: если А — простое высказывание «Идет дождь», то отрицанием А(А) является высказывание «Неверно, что идет дождь» или «Дождь не идет». Отрицанию соответствует таблица истинности: А 1
А 0 1
0
Логическая связка конъюнкция: в обычном языке ей соответствуют союзы «и», «а», «но», «да», «однако», «хотя» и т.п. Возможны различные варианты записи конъюнкции: F = А Л В; F = А х В; F = F & В. Следует отметить, что в некоторых случаях, для упрощения записи, знак конъюнкции опускается и сложное высказывание записывается следующим образом: АВ. Иногда конъюнкцию называют логическим произведением. Принято считать, что сложное высказывание, полученное из двух простых высказываний, соединенных связкой конъюнкция, истинно только в том случае, если истинны оба простых высказывания. Например: если А — «3 — простое число» — «истина»; В — « 3 x 3 = 9» — «истина»; то А Л В: «3 — простое число и 3 х 3 = 9» — «истина»: А 1 1 0 0 28
В 1 0 1 0
Ал В 1 0 0 0
Объекты и операции алгебры логики
Логическая связка дизъюнкция: в обычном языке ей соответствует союз «или». Союз «или» в обычном языке может употребляться в двух разных смыслах: нестрогое «или» — когда члены дизъюнкции не исключают друг друга, т.е. могут быть одновременно истинными, и строгое «или» (часто заменяется союзом «либо ..., либо ...») — когда члены дизъюнкции исключают друг друга. Нестрогая дизъюнкция обозначается или F = A v В, или F = А + В. Принято считать, что сложное высказывание, полученное из двух простых высказываний, соединенных связкой, — нестрогая дизъюнкция — ложно только в том случае, если ложны оба простых высказывания. Например: нестрогая дизъюнкция — если А — «Студенты в спортзале делают упражнения на бревне»; В — «Студенты в спортзале делают упражнения на батуте»; то А V В — «Студенты в спортзале делают упражнения на бревне или на батуте»: А 1 1 0 0
В 1 0 1 0
Av
В 1 1 1 0
Строгая дизъюнкция обозначается или F = Av.B, или F = A v v В, или F = А + В. Принято считать, что сложное высказывание, полученное из двух простых высказываний, соединенных связкой, — строгая дизъюнкция — ложно тогда, когда оба простых высказывания или ложны, или истинны. Например, строгая дизъюнкция — если А — «Студенты в спортзале играют в футбол»; В — «Студенты в спортзале играют в баскетбол»; то А у. В — «Студенты в спортзале играют в футбол или в баскетбол»:
1 0 0
В 1 0 1 0
Av В 0 h-i
1
h-i
А
0 29
Законы алгебры логики
Законы алгебры логики 1. Свойства операций отрицания, конъюнкции и дизъюнкции 0=1 XV 0=Х XV 1=1
Т=0 ХЛ1=Х ХЛО=О
Переменные могут обозначать произвольные буквы выражения. 2. Закон идемпотентности
X v X=Х
X Л X=Х
устанавливает, что повторяющиеся переменные в выражении излишни и их можно опустить. Таким образом, понятия «возведение в степень» и «умножение на коэффициенты», отличные от логического 0 и логической 1 (т.е. числа), не имеют смысла. 3. Закон двойного отрицания X v X = 1
X л X = 0
X = X
устанавливает, что дважды выполненное отрицание эквивалентно пустой операции. 4. Закон коммутативности XvY=YvX
X A Y = Y A X
устанавливает, что порядок переменных при выполнении операций не влияет на результат этой операции. 5. Часто бывают полезны при упрощении булевых выражений следующие теоремы поглощения X V X A Y = Y X V X A Y = X V Y
X Л_(Х v Y) = X XA(XVY) = X A Y
6. Закон де Моргана (X v Y) = X л Y (X л Y) = X v Y описывает эффект отрицания переменных, связанных операциями И и ИЛИ. 30
Законы алгебры логики
7. Согласно закону ассоциативности (XvY)vZ = Xv(YvZ) = (XvZ)vY = X v Y v Z ( X A Y ) A Z =
X A ( Y A Z )
=
X A Y A Z
переменные можно группировать в любом порядке как для операции конъюнкции, так и для операции дизъюнкции. 8. Закон дистрибутивности X v Y A Z = (X v Y) А (X v Z) XA(YVZ)
=
X A Y V X A Z
устанавливает, что в алгебре логики допускается вынесение общего множителя за скобки. 9. Следует отметить свойство симметрии, присущее законам алгебры логики. Все законы представлены парой соотношений. В каждой паре одно соотношение получается из другого заменой всех операций конъюнкции на операции дизъюнкции, и наоборот, а также всех вхождений логического 0 на логические 1 и всех вхождений логической 1 на логические 0. Это свойство симметрии известно как принцип двойственности.
31
III
ТЕХНИЧЕСКИЕ СРЕДСТВА РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ ПРОЦЕССОВ Открытая архитектура персонального компьютера
В современный компьютер заложена возможность усовершенствования его отдельных частей и использования новых устройств. Компьютер не является единым неразъемным устройством и дает возможность его сборки из независимо изготовленных частей подобно детскому конструктору. При этом методы сопряжения устройств с компьютером доступны всем желающим. Этот принцип, называемый принципом открытой архитектуры, наряду с другими достоинствами обеспечил, в частности, успех персональному компьютеру. На основной электронной плате компьютера (системной или материнской) размещены только те блоки, которые осуществляют обработку информации (вычисления). Схемы, управляющие всеми устройствами компьютера — монитором, дисками, принтером и т.д., реализованы на отдельных платах, которые вставляются в стандартные разъемы на системной плате — слоты. В последнее время появилась тенденция размещать контроллеры дисков, последовательных и параллельных портов (иногда и видеоадаптеры) непосредственно на материнской плате. Ко всем этим электронным схемам подводится электропитание из единого блока питания, а для удобства и надежности все это заключается в общий металлический или пластмассовый корпус — системный блок. Компьютер должен иметь следующие устройства: + арифметическо-логическое устройство (АЛУ), выполняющее арифметические и логические операции; + устройство управления (УУ), которое организует процесс выполнения программ; 32
Открытая архитектура персонального компьютера
+ запоминающее устройство (ЗУ), или память для хранения программ и данных; + внешние устройства для ввода-вывода информации. Память компьютера должна состоять из некоторого количества пронумерованных ячеек, в каждой из которых могут находиться или обрабатываемые данные, или конструкции программ. Все ячейки памяти должны быть одинаково легко доступны для других устройств компьютера.
2 . Зак. 511
Основные блоки компьютера
Основные блоки компьютера Обычно персональные компьютеры состоят из трех основных блоков. Это системный блок, монитор и клавиатура. Кроме того, абсолютное большинство современных компьютеров оснащены также манипулятором типа «мышь». Системный блок является самой главной частью компьютера: в нем расположены следующие основные узлы: + электронные схемы, управляющие работой компьютера (микропроцессор, оперативная память, контроллеры устройств и т.д.); + накопители (дисководы, приводы) для гибких магнитных дисков; + накопитель на жестком магнитном диске; + проигрыватель компакт-дисков; + блок питания, преобразующий переменное сетевое напряжение в ряд постоянных, необходимых для работы электронных схем компьютера; + прочие устройства, которые могут быть подключены к компьютеру. Существуют низкопрофильные настольные (slim) системные блоки, башни (mini, midi и big tower). Материнская плата — своеобразная база компьютера, на основе которой можно получить десятки и сотни вариантов ЭВМ, наилучшим образом приспособленных для того или иного рода работ. Если материнская плата продается отдельно, то она не комплектуется ни процессором, ни оперативной, ни кэш-памятью. Типы этих устройств обычно задаются в достаточно широких пределах, и пользователь сам может выбрать для себя оптимальную конфигурацию. Дисководы для дискет, компакт-дисков и прочих устройств внешней памяти. Чаще всего используется следующий набор: приводы для дискет 3,5", 5,25", CD ROM. Иногда встраиваются: стример, CD-recorder и zip-дисковод.
Основные блоки компьютера
В разъемы системной шины материнской платы встраиваются контроллеры различных устройств (монитора, CD-ROM и т.д.). Разъемы для внешних устройств выводятся на заднюю панель системного блока. Примечательно, что они сделаны так, что при подключении этих устройств что-либо перепутать просто невозможно. На лицевой панели обычно выведены отсеки для приводов внешних запоминающих устройств, кнопки пуска, перезагрузки и турбо (повышение тактовой частоты процессора), светодиодные индикаторы питания и жесткого диска, а также (не всегда) цифровой индикатор тактовой частоты установленного процессора. Звуковая карта или плата. Как правило, звуковые карты обеспечивают возможность как цифро-аналогового, так и обратного преобразования звуковых колебаний, а также позволяют создавать некоторые звуковые эффекты. Монитор (дисплей) компьютера IBM PC предназначен для вывода на экран текстовой и графической информации. Дисплей представляет собой, по сути, телевизор без ВЧ- и ЗЧ-блоков, в который поступает готовый полный видеосигнал из видеоконтроллера компьютера. Этот сигнал содержит данные о количестве точек в строке, строк в кадре, о частоте их регенерации, о яркости каждой из точек. Поток электронов, модулированный видеосигналом, формирует изображение. Мониторы обладают высокой разрешающей способностью, которая обеспечивается очень малыми размерами зерна (0,25 мм не предел), а также большим их числом. Кроме того, большое значение имеет и диагональ монитора. Для сложных чертежей и графического дизайна используются в основном мониторы с диагональю трубки до 17" и более. Большое значение имеет частота развертки монитора. Монитор отображает получаемый сигнал построчно, выводя один ряд точек за другим. Частота смены строк на-
Основные блоки компьютера
зывается частотой горизонтальной развертки. Она важна в основном для видеоконтроллера. Частота управляющих сигналов, указывающих на необходимость перейти к новому кадру, называется частотой кадровой развертки. Она важна не только для компьютера, но и для пользователя. При малой частоте смены кадров пользователь видит своеобразное мерцание экрана, что негативно влияет на зрение. Только при частоте кадровой развертки, равной или превышающей 75—80 Гц, это мерцание пропадает. Клавиатура предназначена для ввода информации в компьютер. В настоящее время она является основным инструментом ввода алфавитно-цифровой информации, так как голосовой ввод еще недостаточно совершенен. Наиболее популярны клавиатуры со 101 или 102 клавишами, но иногда используют клавиатуры с большим или меньшим числом клавиш. Каждая клавиша представляет собой кнопку переключателя. Содержащаяся в клавиатуре микросхема отслеживает состояние этих переключателей и посылает соответствующие импульсы в BIOS компьютера. Микропроцессор — важнейшая часть любого компьютера. Он производит обработку информации, обеспечивает все необходимые вычисления. Это достаточно большая микросхема, габариты которой, впрочем, обусловлены больше необходимостью эффективного охлаждения, чем размерами кристалла. В компьютерах IBM PC и совместимых используются, как правило, микропроцессоры фирм Intel, AMD, Cyrix и т.д., каждый из которых имеет свои достоинства и недостатки. Важнейшим показателем микропроцессора является его такто ая частота, т.е. количество элементарных операций в екунду. Чем выше тактовая частота, тем выше производительность процессора. Оперативная память, или оперативное запоминающее устройство (ОЗУ), является, наряду с процессором, важнейшим элементом компьютера: из ОЗУ процессор "эрет программы и исходные данные для обработки, в
Основные блоки компьютера
нее же записывает результат. Работает оперативная память очень быстро, за что, собственно, и получила свое название. Иногда в компьютерной литературе ОЗУ называют еще аббревиатурой RAM — Random Access Memory (память с произвольным доступом). При выключении компьютера ОЗУ очищается, и записанная в него информация уничтожается. Такое же явление может иметь место в случае кратковременного выключения питания или импульсного падения напряжения в сети. Отметим также такую важную вещь, как кэш-память. Она расположена между ОЗУ и процессором и имеет существенно меньшее время доступа и обмена информацией, чем ОЗУ. В кэш обычно хранятся копии всех наиболее часто используемых файлов. При обращении микропроцессора к памяти поиск данных сначала производится в кэш, а поскольку время доступа к кэш-памяти гораздо меньше, и в большинстве случаев необходимые микропроцессору данные там уже есть, то среднее время доступа к памяти сокращается. Мышь — манипулятор, представляющий собой коробочку (обычно серого цвета) с двумя или тремя кнопками, легко умещающуюся в ладони. Вместе с проводом для подключения к системному блоку, он действительно похож на мышь. При перемещении мыши на экране аналогично перемещается курсор, который может иметь форму стрелки, песочных часов, если система занята и т.д. При необходимости выполнения той или иной операции (запуск программы, выбор объекта и др.) нужно нажать одну из кнопок мыши один или два раза (соответственно click и double click). В зависимости от принципа устройства, мыши делятся на: механические, оптомеханические и оптические. В механических перемещение шарика внутри отслеживается механическими датчиками (колесиками), в оптомеханических перемещается также шарик, но его поло37
Основные блоки компьютера
жение отслеживается уже оптическими датчиками, а в оптических движущихся частей нет вообще. Некоторые пользователи предпочитают применять вместо мыши ее разновидность — трекбол. По сути, это та же мышь, только перевернутая вверх шариком, а перемещение курсора обеспечивается при вращении этого шарика рукой пользователя. В ноутбуки часто встраивается мини-трекбол, имеющий диаметр шара порядка 15—25 мм.
38
Принтеры
Принтеры В зависимости от принципа действия выделяют матричные, струйные и лазерные принтеры. Матричные принтеры обеспечивают самое худшее качество печати, но цена отпечатанной ими страницы минимальна. Принцип печати матричных принтеров таков: печатающая головка принтера содержит вертикальный ряд иголок, являющихся сердечниками электромагнитов. Когда на обмотку того или иного магнита поступает импульс тока, иголка выталкивается из обмотки и ударяет по бумаге через красящую ленту. Эти точки и формируют изображение. В печатающей головке может быть от 9 до 48 иголок. Наилучшее качество печати имеют те принтеры, у которых иголок больше. Помимо количества иголок в печатающем узле, матричные принтеры отличаются также следующими характеристиками: шириной вывода, максимальным разрешением, скоростью печати, количеством встроенных шрифтов и т.д. Ширина вывода. Она определяется шириной каретки, и у самых дешевых матричных принтеров обычно не превышает 210 мм. Иными словами, эти принтеры могут печатать на листах или бумажной ленте формата А4 (210x297 мм). Принтеры с широкой кареткой печатают на листах или ленте формата A3 (420x297 мм), причем возможна печать и на меньших листах нестандартных или побочных форматов. Существуют принтеры и с большими каретками, в частности, до АО. Максимальное разрешение при печати указывается обычно в количестве точек на дюйм (dpi, т.е. dot per inch). Для подавляющего большинства работ вполне достаточно разрешение 300x300 dpi. Скорость печати матричных принтеров определяется количеством печатаемых знаков в секунду (cps, т.е.
Принтеры
characters per second). В черновом режиме cps может варьировать от 60 до 450 знаков, а при печати с максимальным разрешением — в 2—4 раза меньше. Иными словами, при печати стандартной страницы (А4, около 3 тыс. символов) в черновом режиме потребуется от 25 до 100 с, а в режиме максимального качества — от 30 с до 3 мин на страницу. Ряд моделей оснащен автоподатчиком страниц. Это особенно удобно при печати больших объемов информации. Некоторые типы матричных принтеров могут печатать и цветные объекты (иллюстрации, выделенный цветом текст, заставки и т.д.). Это достигается использованием специальной красящей ленты. Но качество отпечатанной таким образом страницы довольно низкое. Струйные принтеры. Изображение в струйных принтерах формируется микрокаплями специальных чернил, которые выбрасываются на бумагу через сопла в печатающей головке. Устройство сопел основано на пьезоэффекте, т.е. на свойстве кварцевой пластинки изгибаться при подведении к ней электрического тока. Кварцевые пластинки в печатающей головке соединены с микродозаторами, которые подают на них небольшую порцию чернил (порядка 9 пиколитров). При подаче на пластинку импульса постоянного тока она изгибается и «выстреливает» на бумагу эту каплю. Всего сопел в печатающей головке может быть от 50 до 200. Как и в матричных принтерах, печатающая головка струйного принтера движется по горизонтали, а по окончании каждой полосы бумага протягивается по вертикали. Стоимость отпечатанной страницы у них выше, чем у матричных принтеров. Важнейшей особенностью струйной печати является возможность создания высококачественного цветного изображения. Здесь потребуется увеличить число печатающих элементов втрое, а к каждому элементу нужно подвести чернила одного из основных цветов — красного, зеленого или синего. Форматы бумаги, поддерживаемые струйными принтерами, обычно следующие: А4 и гораздо реже A3, а так=10
Принтеры
же, естественно, меньшие. Есть принтеры, которые могут печатать на листах формата А2 и на непрерывной ленте, а также на специальной полимерной пленке (это может пригодиться при подготовке презентаций в программе Microsoft Power Point и ей подобных). Подавляющее большинство современных принтеров поддерживают все шрифты TrueType, а некоторые из них — и PostScript шрифты. Скорость печати струйных принтеров достаточно высока, даже самый дешевый принтер печатает в черновом режиме со скоростью 4-5 страниц в минуту, а в наилучшем — со скоростью 1—2 страницы в минуту. При печати чернобелых рисунков (в Corel Draw под Windows 98) скорость печати на разных принтерах составляет от 30 с до 3 мин на страницу формата А4. Скорость цветной печати обычно меньше в 2-3 раза. Лазерные принтеры. Эта группа принтеров обладает наивысшим качеством печати, близким к типографскому. В этих принтерах используется принцип ксерографии, т.е. изображение переносится с селенированного барабана, к которому электрически притягиваются частицы краски (тонера), но, в отличие от ксерокса, печатающий барабан электризуется с помощью лазера по командам, поступающим из компьютера. В зависимости от производительности и разрешающей способности лазерные принтеры можно условно разделить на несколько групп: + принтеры низшей ценовой категории производительностью 4—6 страниц в минуту и с максимально достижимым разрешением 300 точек на дюйм. Месячная нагрузка не должна превышать 5-10 тыс. страниц в месяц; + принтеры среднего класса, которые идеально подходят для небольших и средних организаций, имеют скорости печати до 8—12 страниц в минуту и могут иметь разрешение вплоть до 600 точек на дюйм. Этого вполне достаточно для печати документов с практически типографским качеством (600 dpi — 41
Принтеры
это разрешение ризографа). Месячный объем печати не должен превышать 20—30 тыс. страниц; + высокопроизводительные принтеры, предназначенные для работы в локальных сетях (например, один такой принтер может обслуживать 2—3 отдела крупного банка). Их производительность составляет 16— 40 и более страниц в минуту при типографском качестве (вплоть до 1200 dpi). В месяц такие аппараты могут отпечатать до 50 тыс. страниц и выше, а также обладают дополнительными сервисными возможностями (сортировка, автоматическая двухсторонняя печать и проч.); + профессиональные принтеры, имеющие особо высокое качество печати при разрешении 1800 dpi и выше. Используются в типографиях при подготовке издания к печати. В эту же группу можно включить цветные лазерные принтеры, которые также могут использоваться в рекламных агентствах и при распечатке фотографий в формате Kodak CD и т.д. Большинство лазерных принтеров работают только с бумагой формата А4, причем они не требовательны к качеству бумаги. Еще одной разновидностью принтеров можно считать группу печатающих устройств для портативных компьютеров (это в основном струйные принтеры), которые имеют минимальные размеры и вес, а также встроенный блок для аккумуляторов. Как правило, они обеспечивают невысокое качество печати, работают только с форматом А4, имеют производительность 2—6 страниц в минуту, но подача страниц в них ручная.
42
Дополнительные устройства, подключаемые к компьютеру
Дополнительные устройства, подключаемые к компьютеру Сканеры бывают ручными, планшетными и барабанными. Ручные сканеры ("щетки") обычно самые дешевые и обладают невысокой разрешающей способностью (не более 300 dpi). Это связано прежде всего с тем, что большее разрешение недостижимо из-за неравномерного прохождения сканера над объектом, т.к. он проводится вручную. Ручные сканеры удобны для сканирования текста, например, газет, а также для несложных рисунков больших форматов. Барабанные сканеры применяются в основном в издательском деле, поскольку они обладают наибольшим разрешением (вращательное движение сделать более стабильным проще, чем поступательное). Планшетный сканер напоминает обычный ксерокс, и их иногда выполняют совмещенными. Иногда применяются так называемые слайд-сканеры, которые могут вводить в компьютер изображения объемных предметов. Их разрешающая способность обычно очень высокая. Модемы — специальные устройства, предназначенные для обмена информацией между компьютерами по телефонной или другой линии. Модем необходим не только для подключения к сети Internet, но и для внутрикорпоративной связи, для локальных сетей и т.д. Факсмодем — устройство, сочетающее в себе возможности модема и факсимильного аппарата. Некоторые модемы обладают голосовыми функциями, т.е. могут заменить автоответчик. Модемы бывают внутренними (Internal) и внешними (External). Предпочтение следует отдать последним, поскольку при зависании "перезагрузить" внешний модем гораздо проще: его нужно просто обесточить на секундудругую, а затем снова включить в сеть. Чтобы перезагрузить внутренний модем, потребуется перезапуск всего компьютера. 43
16. Дополнительные устройства, подключаемые к компьютеру
Максимальная скорость передачи данных у модемов может быть от 2400 до 115200 бит/с. Чем больше эта скорость, тем лучше, но большинство отечественных телефонных линий могут попросту передавать информацию со скоростью не более 14400 бит/с, следовательно, часто высокая скорость модема может быть не реализованной на практике. Сетевой адаптер — дает возможность подключать компьютер в локальную сеть. При этом пользователь может получать доступ к данным, находящимся на других компьютерах. Джойстик — манипулятор в виде укрепленной на шарнире ручки с кнопкой. Употребляется в основном для компьютерных игр. Музыкальная приставка — дает возможность исполнять музыку с помощью компьютера. Без этой приставки компьютер может выводить в каждый момент звук только одного тона. Дигитайзер — устройство для «оцифровки» изображений. Позволяет преобразовать изображения в цифровую форму для обработки в компьютере. С помощью дигитайзера можно по точкам вводить в компьютер графики функций или чертежи с бумажного листа. Это устройство оборудовано прицельным приспособлением (лупа с перекрестием), которое оператор наводит на интересующие его точки. Если нажать кнопку на прицеле, координаты точки фиксируются. Таким способом можно ввести в компьютер характерные точки чертежа, чтобы по ним потом восстанавливать линии. Используется в системах обработки изображений. Графический планшет — устройство для ввода контурных изображений. Используется, как правило, в системах автоматического конструирования (САПР) для ввода чертежей в компьютер. По устройству планшет мало чем отличается от дигитайзера, но координаты его прицельного приспособления — пера — фиксируются не по нажатию кнопки, а автоматически, сотни и тысячи раз в секунду. Это позволяет отслеживать самые замыслова44
16. Дополнительные устройства, подключаемые к компьютеру
тые линии с точностью не хуже, чем у сканера. Новейшие планшеты реагируют и на силу нажатия пера. Можно рисовать линии разной толщины и яркости, как если бы в руках была мягкая кисточка. Причем запоминать можно не россыпь точек, а сразу линии. Упрощаются тяжелейшие задачи — распознавание рукописного текста и проверка подлинности почерка. Видеокамера — подключенная через специальное оборудование позволяет вводить в компьютер видеоизображение («живое видео»). Эта информация затем может быть использована для организации спецэффектов и постановки трюков в фильмах. Световое перо — устройство, напоминающее обычную ручку только с проводом. Данное устройство по возможностям сходно с мышью с той разницей, что мышью вы водите по столу, а световым пером — по экрану. Внутри светового пера находится специальный элемент — фотодиод, который регистрирует изменение яркости в том месте экрана, куда указывает перо. У светового пера есть недостатки. Один из них — необходимость все время держать руку на весу, от чего она быстро устает. Другой недостаток состоит в том, что приходится заслонять часть экрана собственной рукой. Поэтому перья в настоящее время почти не используются. Сенсорный экран — представляет собой технологию по взаимодействию с программами, в которой инструментом, реализующим функции светового пера, является человеческий палец. Секрет заключается в мониторе, который выполнен таким образом, что позволяет определить присутствие пальца на экране или в непосредственной близости от него. Такой способ взаимодействия имеет ряд недостатков. Разрешающая способность такой технологии невелика из-за размеров пальца, а постоянное прикосновение к экрану способствует его жировому загрязнению. Кроме того, так же как и при работе со световым пером, приходится держать руку на весу. Трекпад (сенсорный планшет) — может реагировать не только на специальное перо, но даже на обычный па45
Дополнительные устройства, подключаемые к компьютеру
лец. Такой «следящий планшет» не удобен для точных работ. Зато, жертвуя точностью, его можно сократить до размеров, приемлемых в компьютере. Правда, не столько для рисования, сколько для перемещения указателя. Речевой ввод. Для ввода информации в виде речи в компьютер микрофон выполняет те же самые функции, что и в магнитофоне. Затем специальная электрическая схема (аналогово-цифровой преобразователь) преобразует сигналы, поступающие от микрофона, в сигналы, пригодные как для обработки компьютером, так и для хранения на магнитных дисках. Устройства распознавания голоса. Говоря о системах распознавания голоса, можно отметить два аспекта — одно дело узнать голос отдельного человека, а другое преобразовать его в текст, который можно видеть на экране монитора или хранить в памяти компьютера. Системы первого типа относительно просты, они не преобразуют человеческий голос в текст, а всего лишь его «узнают» (отличают от сказанного другим, не "вникая в смысл"). Чаще всего это используется в качестве пароля для защиты отдельных данных или доступа к компьютеру. Системы второго типа намного сложнее и интеллектуальнее, они должны не просто преобразовывать одни сигналы в другие (аналоговые сигналы в цифровые), но и представлять звуковую информацию как в памяти компьютера, так и на экране монитора в текстовом виде. Решение данной проблемы позволит человеку общаться с компьютером наиболее естественным для него способом — при помощи голоса. Однако такие системы требуют, чтобы их предварительно настроили на тембр голоса того человека (нескольких человек), который будет с ними работать. Системы распознавания почерка. В качестве устройств ввода в системах распознавания почерка могут использоваться как сканер, так и графический планшет. Помимо данных устройств в такие системы обязательно включается специальное программное обеспечение, которое позволяет преобразовать почерк в печатный текст. При 46
Дополнительные устройства, подключаемые к компьютеру
наличии образцов почерков в памяти компьютера возможно определение анонимного автора письма, записки и т.д., что используется, например, в криминалистике. Другие системы ввода (датчики). В последнее время в устройствах ввода применяются новые технологии. В качестве примера можно привести устройства, отслеживающие положение зрачков глаз. Используя такое устройство, можно взглядом перемещать указатель по экрану. Это дает возможность использовать компьютер практически полностью парализованным людям. При использовании компьютера для управления робототехническим комплексом, устройствами ввода служат всевозможные датчики (температурные, определяющие интенсивность цвета, положение, радиационный фон, влажность воздуха, загазованность и др.).
17
Носители информации
Носители информации Носителями информации в любых ЭВМ являются прежде всего магнитные носители и специализированные микросхемы. В настоящее время широко используются оптические и магнитооптические внешние запоминающие устройства (ВЗУ). Для записи информации долговременного хранения
используют гибкие магнитные носители — дискеты.
Дискеты (их еще называют флоппи-дисками или просто «флопами») отличаются размерами и емкостью. Наиболее распространены в настоящее время дискеты размером 5,25" и 3,5", причем первые уже практически вышли из употребления. Они называются соответственно «пятидюймовыми» и «трехдюймовыми». Трехдюймовые дискеты предпочтительнее, поскольку, имея меньшие размеры, они имеют емкость 1,44 Мб, хотя встречаются и более старые емкостью 720 Кб. Дискеты размером 5,25" чаще всего имеют емкость 1,2 Мб, хотя встречается и совсем уже архаичный формат — 360 Кб. Существующие на дискетах обозначения DS/DD и DS/HD показывают формат носителя: соответственно, «Double Side/ Double Density» и «Double Side/High Density», т.е. «двухсторонний/двойная плотность» и «двухсторонний/высокая плотность». Жесткий диск (винчестер, Hard Disc Drive, HD) представляет собой устройство для постоянного хранения той или иной информации. Емкость диска определяется прежде всего качеством магнитного слоя, количеством дисков, зазором магнитной головки и т.д. Стример представляет собой кассету с магнитной лентой, аналогичную обычным магнитофонным аудиокассетам, однако лента в нем используется достаточно высокого качества, чаще всего СrО2. Применяется только для архивного хранения информации, поскольку имеет значительное время доступа, что делает его непригодным для оперативной работы. 48
Носители информации
В последние годы широчайшее распространение получил очень удобный формат записи информации — Compact Disc (компакт-диск или CD). Большинство CD имеют емкость 650 Мб (некоторые — 700 Мб) и могут быть использованы как высококачественные носители аудиозаписей (формат Compact Disk Digital Audio), как носители видеозаписей (Video CD) или как носитель компьютерной информации (CD-ROM, или Compact Disc Read Only Memory, т.е. компакт-диск только для чтения). Все эти форматы (хотя их гораздо больше) могут быть считаны компьютерным проигрывателем компакт-дисков. Информация записывается оптическим способом при помощи лазерного луча. В простейшем случае луч лазера буквально выжигает в алюминиевой фольге небольшие углубления (питы, от англ. pit — выступ), и при считывании лазерным лучом меньшей мощности, пучок света может, попав на пит, отразиться и попасть на фотоприемник, на выходе которого появится импульс напряжения (логическая единица). Если же луч попадает на другое место диска, на котором рекордер не оставил отметку, он рассеивается, и на фотоприемник не попадает практически ничего. Обычный CD — CD-R применим только в качестве архивного носителя, так как перезаписать на него информацию невозможно. Дальнейшим развитием технологии записи CD-R, сближающим эту технологию по сфере применения с магнитооптикой, являются перезаписываемые компакт-диски (CD-RW). Несмотря на более высокую стоимость устройства записи и самого диска, возможность осуществлять перезапись информации (до 1000 перезаписей диска) может быть значительным преимуществом. Устройства записи (CD-ReWriter) позволяют записывать как перезаписываемые диски CD-RW, на которых можно хранить, например, документы временного срока хранения, так и обычные CD-R с одноразовой записью, наиболее подходящие для документов постоянного хранения. Отметим, что в целях повышения скорости доступа к данным CD-ROM приводы имеют скорости вращения диска во много раз больше, чем обычные CD-проигрыватели для музыкальных дисков. 49
Основные понятия моделирования
IV
ОСНОВЫ МОДЕЛИРОВАНИЯ Основные понятия моделирования
Первыми моделями, как заместителями некоторых объектов, были языковые знаки. Они возникли в ходе развития человечества и постепенно превратились в разговорный язык. Слово было первой моделью реального объекта. Следующим этапом развития моделирования можно считать возникновение знаковых числовых обозначений. Сведения о результатах счета первоначально сохранялись в виде зарубок. Постепенное совершенствование этого метода привело к изображению чисел в виде цифр как системы знаков. Значительное развитие моделирование получило в древней Греции. В V—III вв. до н. э. в Греции была создана геометрическая модель Солнечной системы В основе термина «модель» лежит латинское слово modulus — мера, образец. Появление этого термина было обусловлено тем обстоятельством, что при изучении сложных явлений, процессов, объектов, устройств или систем (обобщенно — объектов исследования) не всегда удается учесть полную совокупность факторов, определяющих свойства объекта исследования. В создаваемой модели выделяются наиболее характерные, доминирующие факторы, которые в подавляющей степени определяют основные свойства объекта исследования. В результате объект исследования заменяется некоторым упрощенным подобием, но обладающим теми же характерными, главными признаками, что и объект исследования. Появившийся вследствие проведенной подмены новый объект принято называть моделью объекта исследования. Модель — любой аналог, образ (мысленный или условный) какого-либо объекта исследования, используемый в качестве его «заместителя», «представителя». 50
Основные понятия моделирования
Модель должна описывать как количественные, так и качественные характеристики системы. Она может применяться в качестве: + средства осмысления действительности; + средства общения; + средства обучения и тренировки; + инструмента прогнозирования; + средства постановки экспериментов. Фазовая переменная — величина, характеризующая физическое или информационное состояние моделируемого объекта. Примерами фазовых переменных служат электрические напряжения и токи, механические напряжения и деформации, сила, скорость, температура, давление и т.п. Элемент — составная часть сложного объекта исследования. Система — целое, составленное из частей; множество элементов, находящихся в отношениях и связях друг с другом, образующих определенную целостность, единство. Математическая модель — описание объекта исследования; выполненное с помощью математической символики. Для составления математической модели можно использовать любые математические средства — дифференциальное и интегральное исчисления, теорию вероятностей, математическую статистику и т.д. По существу вся математика создана для формирования математических моделей. Полная математическая модель — это модель, отражающая состояния как моделируемой системы, так и всех ее элементов. Макромодель более простая математическая модель по сравнению с полной математической моделью. Макромодель адекватна в отношении внешних свойств объекта исследования, например адекватна по фазовым переменным, относящимся к внешним выводам электронных схем (по отношению к входным и выходным зажимам устройств). Однако в отличие от полной математи51
18. Основные понятия моделирования
ческой модели макромодель не отражает внутренних состояний отдельных элементов. Концептуальная модель (содержательная) — это абстрактная модель, определяющая структуру системы (элементы и связи), свойства элементов и причинно-следственные связи. В концептуальной модели обычно в словесной (вербальной) форме приводятся самые главные сведения об объекте исследования, основных элементах и важнейших связях между ними. Основная проблема при создании концептуальной модели заключается в нахождении компромисса между простотой модели и ее адекватностью. Моделирование — метод научного исследования явлений, процессов, объектов, устройств и систем, основанный на построении и изучении моделей с целью получения новых знаний или дальнейшего совершенствования характеристик объектов исследований.
Уровни моделирования
Уровни моделирования Существуют следующие уровни моделирования: + Метауровенъ моделирования — уровень сложности в описаниях объектов исследования, характеризующийся укрупненным рассмотрением протекающих в объекте процессов. Это позволяет в одном описании отразить взаимодействие всех элементов сложного объекта. Для моделирования на метауровне широко используют методы теории массового обслуживания, конечных автоматов, автоматического управления. На этом уровне моделируются, например, локальные и глобальные вычислительные сети, городские телефонные сети, энергосистемы, системы регулирования движением транспорта. + Макроуровень моделирования — уровень сложности в описаниях объектов, характерной особенностью которого является рассмотрение физических процессов, протекающих в непрерывном времени, но дискретном пространстве. Например, макроуровень описания радиоэлектронной аппаратуры — схемотехнический уровень. На нем рассматриваются радиоэлектронные схемы, состоящие из таких дискретных элементов, как транзисторы, диоды, резисторы, конденсаторы и т.п. + Микроуровень моделирования — уровень сложности в описании объектов исследования, характерной особенностью которого является рассмотрение физических процессов, протекающих в сплошных средах и непрерывном времени. Типичные математические модели на микроуровне — дифференциальные уравнения в частных производных с заданными краевыми условиями. Результатами моделирования на микроуровне являются поля напряжений и деформаций в деталях механических конструкций, электромагнитные поля в электропроводящих средах, поля температур нагретых деталей. 53
Виды моделирования
Виды моделирования Различают следующие виды моделирования: + физическое; + математическое: • аналитическое; • машинное: — цифровое; — аналоговое; + имитационное. При физическом моделировании используют физические модели, элементы которых подобны натуральным объектам исследования, но имеют чаще всего иной масштаб. Физические модели могут иметь вид полномасштабных макетов (например, авиационные тренажеры), выполняться в уменьшенном масштабе (например, глобус) или в увеличенном масштабе (например, модель атома). Физические модели конкретны. Физическое моделирование применяется преимущественно для моделирования сложных объектов исследования, не имеющих точного математического описания. При физическом моделировании для исследования некоторого процесса в качестве физической модели порой используют процесс другой физической природы, описываемый аналогичными математическими зависимостями. Математическое моделирование — изучение объекта исследования путем создания его математической модели и использования ее с целью получения полезной информации. Математическое моделирование разделяется на аналитическое и машинное моделирование. При аналитическом моделировании результат получается в процессе раздумий, размышлений, умозаключений. Формирование модели производится, в основном, с помощью точного математического описания объекта исследования. При машинном моделировании математическая модель создается и анализируется с помощью вычислительной 54
Виды моделирования
техники. Машинное моделирование, в свою очередь, можно подразделить на аналоговое и цифровое. Многие явления различной физической природы имеют аналогичные (сходные, подобные) закономерности и описываются с помощью одного и того же математического аппарата, сходными формулами. Это обстоятельство позволяет исследовать некоторое явление путем изучения другого явления совершенно иной природы. Описанный подход называется «аналоговое моделирование», а модель, реализуемая с помощью иных физических механизмов, — аналоговая модель. При аналоговом моделировании используются универсальные аналоговые вычислительные машины (АВМ) или специализированные аналоговые модели. В АВМ математические величины представляются в аналоговой форме в виде различных физических величин, например, электрического напряжения. В АВМ основными элементами являются операционные усилители, вид передаточной характеристики которых определяется конфигурацией цепей обратной связи. Имеющаяся модель в АВМ реализуется путем соединения нескольких электрических схем, каждая из которых выполняет определенную математическую операцию (суммирование, интегрирование, дифференцирование и т.д.). В АВМ возможно непрерывное изменение исследуемой величины в пределах определенного диапазона, при котором каждое значение отличается от ближайшего значения на бесконечно малую величину. В АВМ результат математической операции получается практически сразу же после ввода исходных данных и меняется непрерывно по мере изменения входных данных. В АВМ точность выполнения математических операций ограничена технологией изготовления различных элементов, реализующих эти операции. Практически достижима наименьшая погрешность АВМ — 0,1—0,01%. При цифровом моделировании используются цифровые ЭВМ. 55
Виды моделирования
В цифровых ЭВМ математические величины представляются в цифровой форме (в двоичной системе счисления). Значение переменной при таком моделировании может изменяться только дискретно на некоторую конечную величину. Эту величину можно выбрать достаточно малой, и она во многом определяется разрядностью ЭВМ. В цифровых ЭВМ математические операции выполняются в течение определенного промежутка времени, длительность которого зависит от их сложности, необходимой точности, выбранного алгоритма и быстродействия компьютера. В процессе выполнения расчетов значения исходных данных, как правило, изменяться не могут. Новые данные могут быть введены только после окончания вычислений при прежних исходных данных. В цифровых ЭВМ точность математических операций определяется в основном используемым алгоритмом и количеством разрядов при числовом представлении математических величин. При использовании цифровых ЭВМ выполнение расчетов часто происходит с помощью приближенных численных методов (например, интегрирование методом Симпсона, итерационное решение системы линейных уравнений, решение дифференциальных уравнений методом Рунге — Кутта и т.д.). Выделяют еще один вид моделирования — имитационное. Имитационное моделирование — процесс конструирования модели реальной системы и постановки экспериментов на этой модели с целью либо понять поведение системы, либо оценить (в рамках ограничений, накладываемых некоторым критерием или совокупностью критериев) различные стратегии, обеспечивающие функционирование данной системы. Объектами имитационного моделирования являются вычислительные системы, сети ЭВМ, телефонные станции, системы передачи сообщений, транспортные объекты, склады и т.п.
56
Имитационное моделирование
Имитационное моделирование При большой размерности задачи или, если задача по каким-то причинам не поддается решению в явном (аналитическом) виде, используют имитационное моделирование. Имитационное моделирование — процесс конструирования модели реальной системы и постановки экспериментов на этой модели с целью либо понять поведение системы, либо оценить (в рамках ограничений, накладываемых некоторым критерием или совокупностью критериев) различные стратегии, обеспечивающие функционирование данной системы. Имитация — процесс создания модели реальной системы и проведения с ней экспериментов с целью осмысления поведения системы или оценки различных стратегий. Имитационное моделирование является экспериментальной и прикладной методологией, имеющей целью: + описать поведение систем; + построить теории и гипотезы, которые могут объяснить наблюдаемое поведение; + использовать эти теории для предсказания будущего поведения системы, т.е. тех воздействий, которые могут быть вызваны изменениями в системе или изменениями способов ее функционирования. Имитационное моделирование применимо в любой отрасли науки. Можно сформулировать конкретные критерии, которым должна удовлетворять «хорошая» имитационная модель: + простота и понятность пользователю; + целенаправленность; + надежность в смысле гарантии от абсурдных ответов; + удобство в управлении и обращении, т.е. общение с ней должно быть легким; + полнота с точки зрения возможностей решения главных задач; 57
Имитационное моделирование
+ адаптивность, позволяющая легко переходить к другим модификациям или обновлять данные; + допущение постепенных изменений в том смысле, что, будучи вначале простой, она может во взаимодействии с пользователем становиться все более сложной. Выделяются следующие этапы имитационного моделирования: 1. Определение системы — установление границ, ограничений и измерителей эффективности системы, подлежащей изучению. 2. Формулирование модели — переход от реальной системы к некоторой логической схеме (абстрагирование). 3. Подготовка данных — отбор данных, необходимых для построения модели, и представление их в соответствующей форме. 4. Трансляция модели — описание модели на языке, приемлемом для используемой ЭВМ. 5. Оценка адекватности — повышение до приемлемого уровня степени уверенности, с которой можно судить относительно корректности выводов о реальной системе, полученных на основании обращения к модели. 6. Стратегическое планирование — планирование эксперимента, который должен дать необходимую информацию. 7. Тактическое планирование — определение способа проведения каждой серии испытаний, предусмотренных планом эксперимента. 8. Экспериментирование — процесс осуществления имитации с целью получения желаемых данных и анализа чувствительности. 9. Интерпретация — построение выводов по данным, полученным путем имитации. 10. Реализация — практическое использование модели и результатов моделирования. 11. Документирование — регистрация хода осуществления проекта и его результатов, а также документирование процесса создания и использования модели. 58
Имитационное моделирование
Все имитационные модели представляют собой модели типа так называемого «черного ящика». Это означает, что они обеспечивают выдачу выходного сигнала системы, если на ее взаимодействующие подсистемы поступает входной сигнал. Поэтому для получения необходимой информации или результатов необходимо осуществлять "прогон" имитационных моделей. Имитационные модели не способны формировать свое собственное решение в том виде, в каком это имеет место в аналитических моделях, а могут лишь служить в качестве средства для анализа поведения системы в условиях, которые определяются экспериментатором. Дополнительным преимуществом имитационного моделирования можно считать широчайшие возможности его применения в сфере образования и профессиональной подготовки. Разработка и использование имитационной модели позволяют экспериментатору видеть и «разыгрывать» на модели реальные процессы и ситуации. Это в свою очередь должно в значительной мере помочь ему понять и прочувствовать проблему, что стимулирует процесс поиска нововведений.
59
V
АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ Понятие и свойства алгоритма
Слово «алгоритм» происходит от algorithm — латинского написания имени аль-Хорезми, под которым в средневековой Европе знали величайшего математика из Хорезма (город в современном Узбекистане) Мухаммеда бен Мусу, жившего в 783—850 гг., который сформулировал правила выполнения 4 арифметических действий над многозначными числами. Алгоритм — это конечная последовательность однозначных предписаний, исполнение которых позволяет с помощью конечного числа шагов получить решение задачи, однозначно определяемое исходными данными. Свойства алгоритма: 1. Дискретность. Это свойство состоит в том, что алгоритм должен представлять процесс решения задачи как последовательность простых шагов. При этом для выполнения каждого шага алгоритма требуется некоторый конечный отрезок времени, т.е. преобразование исходных данных в результат осуществляется во времени дискретно. 2. Определенность. Каждая команда алгоритма должна быть четкой, однозначной и не оставлять места для произвола. 3. Результативность. Алгоритм должен приводить к решению поставленной задачи за конечное число шагов. 4. Массовость. Алгоритм решения задачи разрабатывается не для одной конкретной задачи, а для целого класса однотипных задач, различающихся лишь исходными данными. Алгоритм может быть предназначен для выполнения его человеком или автоматическим устройством. Создание алгоритма, пусть даже самого простого, — процесс 60
Понятие и свойства алгоритма
творческий. Он доступен исключительно живым существам, а долгое время считалось, что только человеку. Другое дело — реализация уже имеющегося алгоритма. Ее можно поручить субъекту или объекту, который не обязан вникать в существо дела, а возможно, и не способен его понять. Такой субъект или объект принято называть формальным исполнителем. Каждый алгоритм создается в расчете на вполне конкретного исполнителя. Те действия, которые может совершать исполнитель, называются допустимыми действиями. Совокупность допустимых действий образует систему команд исполнителя. Алгоритм должен содержать только те действия, которые допустимы для данного исполнителя. Объекты, над которыми исполнитель может совершать действия, образуют так называемую среду исполнителя.
Правила построения алгоритмов
Правила построения алгоритмов Первое правило — при построении алгоритма прежде всего необходимо задать множество объектов, с которыми будет работать алгоритм. Формализованное (закодированное) представление этих объектов носит название данных. Алгоритм приступает к работе с некоторым набором начальных данных, которые называются входными, и в результате работы выдает данные, называемые выходными. Таким образом, алгоритм преобразует входные данные в выходные. Второе правило — для работы алгоритма требуется память компьютера. В памяти размещаются входные данные, с которыми алгоритм начинает работать, а также промежуточные данные и выходные данные. Память является дискретной, т.е. состоящей из отдельных ячеек. Поименованная ячейка памяти носит название переменной. В теории алгоритмов размеры памяти не ограничиваются, т.е. считается, что мы можем предоставить алгоритму любой необходимый для работы объем памяти. Практическая работа с алгоритмами (программирование) начинается с реализации первых двух правил. В языках программирования распределение памяти осуществляется декларативными операторами (операторами описания переменных). Третье правило — дискретность. Алгоритм строится из отдельных шагов (действий, операций, команд). Множество шагов, из которых составлен алгоритм, конечно. Четвертое правило — детерминированность. После каждого шага необходимо указывать, какой шаг выполняется следующим, либо давать команду остановки. Пятое правило — сходимость (результативность). Алгоритм должен завершать работу после конечного числа шагов. При этом необходимо указать, что считать результатом работы алгоритма.
62
Виды алгоритма
Виды алгоритма Алгоритмы как логико-математические средства отражают указанные компоненты человеческой деятельности и тенденции, а сами алгоритмы в зависимости от цели, начальных условий задачи, путей ее решения, определения действий исполнителя подразделяются следующим образом: + механические алгоритмы, или иначе, детерминированные, жесткие (например, алгоритм работы машины, двигателя и т.п.). Механический алгоритм задает определенные действия, обозначая их в единственной и достоверной последовательности, обеспечивая тем самым однозначный требуемый или искомый результат, если выполняются те условия процесса, задачи, для которых разработан алгоритм; + гибкие алгоритмы: — вероятностные (стохастические) алгоритмы дают программу решения задачи несколькими путями или способами, приводящими к вероятному достижению результата; — эвристические алгоритмы (от греч. эврика) — это алгоритмы, в которых достижение конечного результата программы действий однозначно не предопределено, так же как не обозначена вся последовательность действий, не выявлены все действия исполнителя. К эвристическим алгоритмам относят, например, инструкции и предписания. В этих алгоритмах используются универсальные логические процедуры и способы принятия решений, основанные на аналогиях, ассоцияциях и прошлом опыте решения схожих задач. + линейные алгоритмы — наборы команд (указаний), выполняемых последовательно во времени друг за другом; + разветвляющиеся алгоритмы — алгоритмы, содержащие хотя бы одно условие, в результате провер63
Виды алгоритма
ки которого ЭВМ обеспечивает переход на один из двух возможных шагов; циклические алгоритмы — алгоритмы, предусматривающие многократное повторение одного и того же действия (одних и тех же операций) над новыми исходными данными. К циклическим алгоритмам сводится большинство методов вычислений, перебора вариантов; вспомогательные (подчиненные) алгоритмы (процедуры) — алгоритмы, ранее разработанные и целиком используемые при алгоритмизации конкретной задачи. В некоторых случаях при наличии одинаковых последовательностей указаний (команд) для различных данных с целью сокращения записи также выделяют вспомогательные алгоритмы.
64
Способы записей алгоритмов
Способы записей алгоритмов Существуют следующие способы записи алгоритма: 1. Словесно-формульное описание (на естественном языке с использованием математических формул). Данный способ записи алгоритма состоит из перечня действий (шагов), каждый из которых имеет порядковый номер. Алгоритм должен выполняться последовательно шаг за шагом. Если в тексте алгоритма написано «перейти к шагу с номером L», то это означает, что выполнение алгоритма продолжится с указанного шага с номером L. Словесное описание алгоритмов применяют при решении несложных задач, но оно малопригодно для представления сложных алгоритмов из-за отсутствия наглядности. 2. Графическое описание в виде блок-схемы (набор связанных между собой геометрических фигур). Для обозначения шагов решения в виде схемы алгоритма используются специальные обозначения (символы). Перечень наиболее часто употребляемых символов приведен в таблице:
1
3 . Зак 5 1
65
Способы записей алгоритмов
Окончание таблицы
3. Описание на каком-либо языке программирования (программа). Программа — это набор машинных команд, который следует выполнить компьютеру для реализации того или иного алгоритма. Программа — это форма представления алгоритма для исполнения его машиной.
66
Объектно-ориентированное программирование
Объектно-ориентированное программирование Объектно-ориентированные языки характеризуются наличием специфического механизма, реализующего отношения класс — подкласс (тип — подтип), связанного с использованием механизмов наследования свойств. Механизм наследования свойств в объектно-ориентированных языках позволяет повысить лаконичность программ путем использования деклараций «класс — подкласс» и их надежность. В целом объектно-ориентированный подход к разработке программ интегрирует в себе как методы структуризации управления, так и структуризацию данных. При этом понятие «объекта» (которое формально так и не определено) не содержит в себе каких-то принципиальных отличий в этих разновидностях структуризации. Объектом может быть и константа, и переменная, и процедура, и процесс. В объектно-ориентированном подходе к разработке программ центральным является понятие класса объектов. Класс определяется как множество объектов, обладающих внутренними свойствами, присущими любому объекту класса. Причем спецификация (определение) класса проводится путем определения его внутренних свойств, которые в этом плане играют роль классообразующих признаков. Понятие «свойства» является первичным в определении класса. Спецификация класса никак не связана с заданием значений свойств, более того, применительно к классу говорить о таких значениях не имеет смысла — обладание значениями является прерогативой объекта. Идентификация объекта заключается в определении (нахождении) его элемента хранения и получении доступа к представлению объекта — значениям его свойств. Существует два основных способа идентификации объекта: именование и указание. Именование заключается в назначении объекту определенного имени. Такое 3*
67
Объектно-ориентированное программирование
назначение производится на фазе трансляции, и в процессе выполнения программы объект не может быть переименован. Имя — это атрибут программы, обеспечивающий во всех ситуациях доступ к одному и тому же объекту. Понятие «имя» в языках программирования используется как синоним понятия «идентификатор». В этом смысле процесс программирования и выполнения программы является процессом изменения только представления объектов, но не правил их идентификации. Указание — второй основной способ идентификации — связано с использованием особых объектов, в представлении которых хранится как бы «стрелка», указывающая на идентифицируемый объект. Такой особый объект называется указателем или ссылкой. Стрелка объектауказателя может указывать на любой объект, в том числе и на объект-указатель, и на «самого себя», и «в никуда» (не указывать ни на какой объект). Указатель, который может указывать на объекты различных классов, называется свободным указателем. Указатель, который может указывать только на объекты определенного класса, называется ограниченным указателем. Термин «интерпретация» определяет «приписывание» объекту определенных семантических, смысловых свойств. Например, символ «I», интерпретируемый как «римская цифра 1», будет ассоциироваться с объектом определенной системы счисления, характеризуемой особыми свойствами этой системы. Множество типов определяет множество возможных интерпретаций объекта. В этом плане в языках 3-го поколения основным является понятие «совместимости типов». Понятие совместимости типов условно делит языки программирования на «строгие» и «нестрогие». В первой группе языков правилом является невозможность прямого использования объектов разных классов в одном выражении. Такое выражение необходимо конструировать на основе специальных функций преобразования типов, приведения типов и специальных методов совмещения 68
Объектно-ориентированное программирование
типов. Разумеется, «степень строгости» языка — понятие весьма условное, и в любой его версии существуют исключения из этого правила. «Нестрогие» языки представляют программисту полную свободу в интерпретации объектов: в одном выражении можно «смешивать» абсолютно различные объекты. Объектно-ориентированный стиль программирования, безусловно, отдает предпочтение «строгому» языку с развитыми средствами контроля совместимости типов, что в общем случае повышает надежность создаваемых программ. Объекты, существующие в программе, делятся на две категории: статические и динамические. Эти категории определяются по-разному: на основе изменения состояния объектов модели и на основе «времени жизни» объектов. Первое определение предполагает, что любой объект, изменяющий свое состояние в процессе работы программы, является динамическим. В этом отношении, строго говоря, статическими объектами являются только константы, все объекты-переменные могут считаться динамическими. Второе определение предполагает возможность временного существования объектов, возможности создания и уничтожения объектов. В этом смысле объекты, время существования которых равно времени выполнения программы, расцениваются как постоянно существующие (статические), объекты же, время существования (жизни) которых меньше времени выполнения программы, — как динамические. Второе определение касается объектов, которые идентифицируются только через указатели. Объекты, идентифицированные именем, в этом отношении всегда должны расцениваться как статические, поскольку их «создание» подготавливается транслятором и ассоциация между именем и элементом хранения объекта существует до окончания времени работы программы. Создание объекта следует интерпретировать как выделение памяти под его элемент хранения. Такая интерпретация подразумевает разделение всего рабочего пространства памяти ЭВМ на две категории, два класса — статическую память и динамическую. Первый класс памяти, 69
Объектно-ориентированное программирование
как следует из этого контекста, полностью находится под управлением транслятора и распределяется под статические объекты, существующие в системе постоянно. Динамическая память предназначается для создания временно существующих объектов. Этот класс памяти имеет две разновидности: собственно динамическую и автоматическую. Собственно динамическая память (в отличие от статической) полностью находится в распоряжении программиста: по его директивам происходит выделение элементов хранения (создание объектов) и возврат ранее выделенных элементов в «зону» свободной памяти, что в этом смысле равносильно «уничтожению» объекта. Автоматическая память — особая разновидность динамической, которая также управляется директивами программиста, связанными с интерпретацией активных объектов (переменных процедурных типов). В этом смысле две разновидности динамической памяти делят этот класс на два подкласса: память для интерпретации пассивных объектов (собственно динамическая) и память для интерпретации активных объектов (автоматическая). Несмотря на общность класса (динамическая память), распределение памяти в этих подклассах основано на разных принципах и реализуется совершенно разными алгоритмами. Система управления динамической памятью составляет специальный список свободных фрагментов — пул памяти. При возвращении какого-либо элемента хранения, используемого в прикладной программе, в пул свободной памяти может быть реализовано «склеивание» соседних свободных фрагментов в один фрагмент большего объема. С помощью списков могут моделироваться разнообразные динамические структуры, поддерживающие различные отношения порядка. В программировании широко используются такие структуры, как: стек, очередь, дек, пул — все они могут быть реализованы на списках. В зависимости от количества связей между соседними эле70
Объектно-ориентированное программирование
ментами различают односвязные и двусвязпые списки с «встречным» направлением стрелок. В общем случае любой элемент списка может содержать произвольное количество связей и являться членом многих списков. Это порождает большое многообразие списковых структур — фактически любая динамическая структура на связанной памяти конструируется из списков. По составу элементов списки разделяются на однородные и разнородные. В однородных используются объекты только одного класса, в разнородных — разных классов. Основными операциями над списками являются операции вставки-удаления элементов. Такие операции всегда (независимо от техники реализации) должна выполняться корректно: + сохранять общую структуру связанной организации списка; + не приводить к образованию «мусора» и «висячих ссылок »; + сохранять отношение порядка элементов в списке. Список относится к особой группе структур — это так называемые рекурсивные структуры. Примером рекурсивной структуры является структура набора, которая определяется следующим образом: набором называется совокупность связанных элементов, каждый из которых может быть либо атомом, либо набором. Атом определяет «неделимый» элемент набора, предназначенный для хранения элементарной порции информации. Реализация наборов основана на использовании разнородных списков. Другим примером рекурсивной структуры, широко использующейся в программировании, является структура дерева. Деревом называется совокупность связанных элементов — вершин дерева, включающая в себя один особый элемент — корень, при этом все остальные элементы образуют поддеревья. Наиболее широко используется структура бинарного дерева, все множество вершин которого делится (по отношению к корню) на два подмножества — два поддерева (левое и правое). Любая вершина бинарного дерева реализуется на связанной памяти элементом с двумя связями: с левым поддеревом и с правым. 71
Объектно-ориентированное программирование
Инкапсуляция — одна из специфических особенностей программирования, ориентированного на объекты. Эта особенность предполагает не только возможности «разложения целого на части», но и умение «скрывать» частности от общего (целого). Такой подход позволяет программисту не знать частных деталей реализации программной системы, осуществлять конструирование из элементов, реализация которых скрыта от него «под оболочкой» модуля. Модуль в этом подходе приобретает роль основного конструктивного элемента, используемого для синтеза и разработки новых систем. Специфические особенности модуля заключаются в следующем: 1) модуль — это автономно компилируемая программная единица; 2) информационные и управляющие связи между модулями требуют использования в его описании деклараций, которые в совокупности определяют оболочку модуля, регламентирующую такие связи; 3) сборка программной системы из модулей связана с отдельным технологическим этапом — компоновкой программы. Правила такой компоновки полностью определяются системой модульных оболочек. Объектно-ориентированный подход к разработке программ и связанный с ним стиль программирования, ориентированный на объекты, основаны на концепции абстрагирования типов. Модуль как программный эквивалент класса объектов, инкапсулирующий в себе определение такого абстрактного типа, является в этом отношении той конструктивной единицей в объектно-ориентированном подходе, которая позволяет совершить естественный переход от традиционного процедурного программирования к конструированию пакетов прикладных программ путем их послойной разработки и отладки.
72
Языки программирования Ассемблер, Фортран, Бейсик и Рефал
Языки программирования Ассемблер, Фортран, Бейсик и Рефал Язык Ассемблера — это символическое представление машинного языка. Он облегчает процесс программирования по сравнению с программированием в машинных кодах. Некоторые задачи, например, обмен с нестандартными устройствами обработки данных сложных структур, невозможно решить с помощью языков программирования высокого уровня. Это под силу Ассемблеру. В принципе, язык Ассемблер является машинным языком. И программист, реализующий какую-либо задачу на языках высокого уровня, с помощью Ассемблера может определить, осмыслено ли решение данной задачи с точки зрения использования ЭВМ. Одним из первых и наиболее удачных компиляторов стал язык Фортран, разработанный фирмой IBM. Дословное название языка FORmulae TRANslation — преобразование формул. Среди причин долголетия Фортрана можно отметить простую структуру как самого Фортрана, так и предназначенных для него трансляторов. Программа на Фортране записывается в последовательности предложений или операторов (описание некоего преобразования информации) и оформляется по определенным стандартам. Эти стандарты накладывают ограничения, в частности, на форму записи и расположения частей оператора в строке бланка для записи операторов. Программа, записанная на Фортране, представляет собой один или несколько сегментов (подпрограмм) из операторов. Сегмент, управляющий работой всей программы в целом, называется основной программой. Фортран был задуман для использования в сфере научных и инженерно-технических вычислений. Однако на этом языке легко описываются задачи с разветвленной логикой (моделирование производственных процессов, решение игровых ситуаций и т.д.), некоторые экономические задачи и особенно задачи редактирования (составление таблиц, сводок, ведомостей и т.д.). 73
Языки программирования Ассемблер, Фортран, Бейсик и Рефал
К 1962 г. относится появление языка, известного под именем Фортран IV и ставшего наиболее употребительным в настоящее время. Язык Фортран до сих пор продолжает развиваться и совершенствоваться, оказывая влияние на создание и развитие других языков. Например, Фортран заложен в основу Basic — диалогового языка, очень популярного для решения небольших задач, превосходного языка для обучения навыкам использования алгоритмических языков в практике программирования. Бейсик был создан в 1964 г. как язык обучения программированию. Бейсик является общепринятым сокращением от «Beginner's All-purpose Symbolic Instruction Code» (BASIC), что значит «многоцелевой символический обучающий код для начинающих». Спустя 25 лет после изобретения Бейсика, он и сегодня самый простой для освоения из десятков языков общецелевого программирования, имеющихся в распоряжении любителей программирования. Исторически Бейсик обычно реализовался как интерпретатор. С появлением транслятора QuickBasic фирмы Microsoft разработчики получили возможность строить на Бейсике приложения из раздельно откомпилированных модулей, некоторые из которых могут быть написаны на других языках. Разработчик имеет выбор из нескольких промышленных библиотек подпрограмм, которые содержат готовые решения для распространенных задач программирования. Несомненный интерес представляют некоторые языки программирования, созданные у нас на родине. Один из таких языков — Рефал, разработанный в России (СССР) в 1966 г. ИПМ АН СССР. Этот язык прост и удобен для описания манипуляций над произвольными текстовыми объектами. Рефал широко применяется при разработке трансляторов с алгоритмических языков как универсальных и проблемно-ориентированных, так и автокодов. Кроме использования в задачах трансляции, Рефал имеет такие важные сферы применения, как машинное выполнение 74
Языки программирования Ассемблер, Фортран, Бейсик и Рефал
громоздких аналитических выкладок в теоретической физике и прикладной математике; проектирование «ум ных» информационных систем, осуществляющих нетривиальную логическую обработку информации; машинное доказательство теорем; моделирование целенаправленного поведения; разработка диалоговых обучающих систем; исследования в области искусственного интеллекта и т.п. Программирование на Рефале имеет специфику, связанную прежде всего с тем, что он является языком функционального типа в отличие от обычных операторных языков типа Алгол, Фортран и т.д. Если программа на операторных языках есть не что иное, как совокупность приказов-операторов, то программа на Рефале представляет собой по существу описание связей и отношений между определенными понятиями. В Рефале программист сам определяет структуру обрабатываемой информации, и эффективность программы существенно зависит от удачного или неудачного выбора этой структуры. Для задания структур в Рефале используются скобки, а специфика всех реализаций языка такова, что использование скобок, резко повышает эффективность выполнения программы. Это достигается с помощью адресного соединения скобок. Определенной спецификой обладают и переменные типа «выражения» — имеется в виду их способность удлиняться при отождествлении. Правильное использование переменных этого типа также позволяет значительно повысить эффективность Рефал-программы.
75
Язык программирования Си
Язык программирования Си Язык Си — это универсальный язык программирования, для которого характерны экономичность выражения, современный поток управления и структуры данных, богатый набор операторов. Язык Си не является ни языком «очень высокого уровня», ни «большим» язы ком, и не предназначается для некоторой специальной области применения, но отсутствие ограничений и общность языка делают его более удобным и эффективным для многих задач. Язык Си, первоначально предназначавшийся для написания операционной системы «UNIX» на ЭВМ DEC PDP-11, был разработан и реализован на этой системе Деннисом Ричи. Операционная система, компилятор с языка Си и по существу все прикладные программы системы «UNIX» написаны на Си. Коммерческие компиляторы с языка Си существуют также на некоторых других ЭВМ. Язык Си, однако, не связан с какими-либо определенными аппаратными средствами или системами, и на нем легко писать программы, которые можно пропускать без изменений на любой ЭВМ, имеющей Си-компилятор. Хотя язык Си и называют языком системного программирования, так как он удобен для написания операционных систем, он с равным успехом использовался при написании больших вычислительных программ, программ для обработки текстов и баз данных. Язык Си — это язык относительно «низкого уровня». В такой характеристике нет ничего оскорбительного, это просто означает, что Си имеет дело с объектами того же вида, что и большинство ЭВМ, а именно, с символами, числами и адресами. Они могут объединяться и пересылаться посредством обычных арифметических и логических операций, осуществляемых реальными ЭВМ. В языке Си отсутствуют операции, имеющие дело непосредственно с составными объектами, такими как строки символов, множества, списки, или с массивами, рас76
Язык программирования Си
сматриваемыми как целое. Язык не предоставляет никаких других возможностей распределения памяти, кроме статического определения и механизма стеков, обеспечиваемого локальными переменных функций. Кроме того, сам по себе Си не обеспечивает никаких возможностей ввода-вывода: здесь нет операторов READ или WRITE и никаких встроенных методов доступа к файлам. Все эти механизмы высокого уровня должны обеспечиваться явно вызываемыми функциями. Аналогично язык Си предлагает только простые, последовательные конструкции потоков управления: проверки, циклы, группирование и подпрограммы, но не мультипрограммирование, параллельные операции, синхронизацию или сопрограммы. Хотя отсутствие некоторых из этих средств может выглядеть как неполноценность, но удержание языка в скромных размерах дает реальные преимущества. Язык Си относительно мал, он не требует много места для своего описания и может быть быстро выучен. Компилятор с Си может быть простым и компактным. Кроме того, компиляторы легко пишутся; при использовании современной технологии можно ожидать написания компилятора для новой ЭВМ за пару месяцев и при этом окажется, что 80% в программы нового компилятора будет общей с программой для уже существующих компиляторов. Это обеспечивает высокую степень мобильности языка. Язык Си соответствует возможностям практически всех современных ЭВМ, он не зависит от какой-либо конкретной архитектуры машины и в силу этого без особых усилий позволяет писать «переносимые» программы, т.е. программы, которые можно пропускать без изменений на различных аппаратных средствах. В языке Си объектами основных типов данных являются символы, целые числа нескольких размеров и числа с плавающей точкой. Кроме того, имеется иерархия производных типов данных, создаваемых указателями, массивами, структурами, объединениями и функциями. Язык Си включает основные конструкции потока управления, требуемые для хорошо структурированных 77
Язык программирования Си
программ: группирование операторов, принятие решении (IF), циклы с проверкой завершения в начале (WHILE, FOR) или в конце (DO) и выбор одного из множества возможных вариантов (SWITCH). В языке Си имеются указатели и возможность адресной арифметики. Аргументы передаются функциям посредством копирования значения аргумента, и вызванная функция не может изменить фактический аргумент в вызывающей программе. Если желательно добиться «вызова по ссылке», можно неявно передать указатель, и функция сможет изменить объект, на который этот указатель указывает. Имена массивов передаются указанием начала массивов, так что аргументы типа массивов эффективно вызываются по ссылке. К любой функции можно обращаться рекурсивно, и ее локальные переменные обычно «автоматические», т.е. создаются заново при каждом обращении. Описание одной функции не может содержаться внутри другой, но переменные могут описываться в соответствии с обычной блочной структурой. Функции в Си-программе могут транслироваться отдельно. Переменные по отношению к функции могут быть внутренними, внешними, но известными только в пределах одного исходного файла, или полностью глобальными. Внутренние переменные могут быть автоматическими или статическими. Автоматические переменные для большей эффективности можно помещать в регистры, но объявление регистра является только указанием для компилятора и никак не связано с конкретными машинными регистрами. У языка Си, подобно любому другому языку, существуют свои недостатки. Некоторые операции имеют неудачное старшинство; некоторые разделы синтаксиса могли бы быть лучше; существует несколько версий языка, отличающихся небольшими деталями. Тем не менее язык Си зарекомендовал себя как эффективный и выразительный язык для широкого разнообразия применений программирования. 78
Язык программирования Си++
Язык программирования Си++ Название Си++ придумал Рик Масситти. Название указывает на эволюционную природу перехода к нему от Си, «++» — это операция приращения в Си. Чуть более короткое имя Си+ является синтаксической ошибкой, кроме того, оно уже было использовано как имя совсем другого языка. Си++ — это универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей Си++ является надмножеством языка программирования Си. Помимо возможностей, которые дает Си, Си++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы. В качестве базового языка для Си++ был выбран Си, потому что он: + многоцелевой, лаконичный и относительно низкого уровня; + отвечает большинству задач системного программирования; + работает везде и на всем; + пригоден в среде программирования UNIX. Базовый язык Си, подмножество Си++, спроектирован так, что имеется очень близкое соответствие между 79
Язык программирования Си++
его типами, операциями и операторами и компьютерны ми объектами, с которыми непосредственно приходится иметь дело: числами, символами и адресами. За исклю чением операций свободной памяти new и delete, отдель ные выражения и операторы Си++ обычно не нуждаются в скрытой поддержке во время выполнения или подпрог раммах. Различие между Си и Си++ состоит в первую очередь в степени внимания, уделяемого типам и структурам. Си выразителен и снисходителен. Си++ еще более выразите лен, но чтобы достичь этой выразительности, програм мист должен уделить больше внимания типам объектов. Существенным критерием при разработке языка C++ была простота. Там, где возникал выбор между упроще нием руководства по языку и другой документации и упрощением компилятора, выбиралось первое. Огромное значение также предавалось совместимости с Си, это по мешало удалить синтаксис Си. В Си++ нет типов данных высокого уровня и первич ных операций высокого уровня. В нем нет, например, матричного типа с операцией обращения или типа строка с операцией конкатенации. Если пользователю понадо бятся подобные типы, их можно определить в самом язы ке. По сути дела, основное, чем занимается программирование на Си++ — это определение универсальных и специально-прикладных типов. Хорошо разработанный тип, определяемый пользователем, отличается от встроенного типа только способом определения, но не способом использования. Си++ проектировался для использования в довольно традиционной среде компиляции и выполнения, среде программирования на Си в системе UNIX. Средства обработки особых ситуаций и параллельного программирования, требующие нетривиальной загрузки и поддержки в процессе выполнения, не были включены в Си++. Вследствие этого реализация Си++ очень легко переносима.
80
VI
БАЗЫ ДАННЫХ Классификация баз данных
По способу установления связей между данными различают реляционные, иерархические и сетевые базы данных (БД). Реляционная модель БД является удобной и наиболее привычной формой представления данных в виде таблицы. В математических дисциплинах таблице соответствует термин «отношение» (relation). Отсюда и произошло название модели — реляционная. Одним из основных преимуществ реляционной модели является ее однородность. Все данные рассматриваются как хранимые в таблицах, в которых каждая строка имеет один и тот же формат. Каждая строка в таблице представляет некоторый объект реального мира или соотношение между объектами. Пользователь модели сам должен для себя решить вопрос, обладают ли соответствующие сущности реального мира однородностью. Этим самым решается проблема пригодности модели для предполагаемого применения. Иерархическая БД состоит из упорядоченного набора деревьев, более точно, из упорядоченного набора нескольких экземпляров одного типа дерева. Дерево — ориентированный граф (граф — пара множеств, одно из которых описывает множество вершин, а другое множество связей между ними), где все вершины, кроме корня, находятся в голове только одной дуги, корень не находится в голове ни одной из дуг и связан с вершиной дерева. Тип дерева состоит из одного «корневого» типа записи и упорядоченного набора из нуля или более типов поддеревьев, каждое из которых является некоторым типом дерева. Тип дерева в целом представляет собой иерархически организованный набор типов записи. 81
Классификация баз данных
Между записями в иерархии могут быть определены связи: «один ко многим», или «один к одному», где запись, соответствующая элементу «один» указанной связи, определяется как исходная, а соответствующая элементу «много» — как порожденная. В иерархических БД автоматически поддерживается целостность ссылок между предками и потомками. Основное правило: никакой потомок не может существовать без своего родителя. Следует отметить, что аналогичное поддержание целостности по ссылкам между записями, не входящими в одну иерархию, не поддерживается. Кроме того, в иерархических системах поддерживается некоторая форма представлений БД на основе ограничения иерархии. Сетевой подход к организации данных является расширением иерархического. В иерархических структурах запись-потомок должна иметь в точности одного предка; в сетевой структуре данных потомок может иметь любое число предков. Сетевая БД состоит из набора записей и набора связей между этими записями, а если говорить более точно, из набора экземпляров каждого типа из заданного в схеме БД набора типов записи и набора экземпляров каждого типа из заданного набора типов связи. Тип связи определяется для двух типов записи: предка и потомка. Экземпляр типа связи состоит из одного экземпляра типа записи предка и упорядоченного набора экземпляров типа записи потомка. Для данного типа связи L с типом записи предка Р и типом записи потомка С должны выполняться следующие два условия: + каждый экземпляр типа Р является предком только в одном экземпляре L; + каждый экземпляр С является потомком не более, чем в одном экземпляре L.
82
Реляционные базы данных
Реляционные базы данных Е.Ф. Кодд в 1970 г. сформулировал концепцию реляционной модели {relational model) баз данных. Ранее, до появления на рынке систем управления реляционных баз данных, доминирующее положение занимали иерархические и сетевые модели. Однако, начиная с 70-х гг., доминирующее положение на рынке занимает класс систем управления реляционными базами данных, типичными представителями которого являются программные продукты фирм Oracle, Sybase, Informix и Ingres. Реляционная модель базы данных (БД) является удобной и наиболее привычной формой представления данных в виде таблицы. В математических дисциплинах таблице соответствует термин «отношение» (relation). Отсюда и произошло название модели — реляционная. Одним из основных преимуществ реляционной модели является ее однородность. Все данные рассматриваются как хранимые в таблицах, в которых каждая строка имеет один и тот же формат. Каждая строка в таблице представляет некоторый объект реального мира или соотношение между объектами. Реляционная модель имеет два главных свойства: 1) базовые порции данных представляют собой отношения (relations); 2) операции над таблицами затрагивают только соотношения (relation closure). Соотношение — это математическая концепция, описывающая, как соотносятся между собой элементы двух множеств. Модель предъявляет к таблицам следующие требования: 1. Данные в ячейках таблицы должны быть структурно неделимыми. Каждая ячейка может содержать только одну порцию данных. Это свойство часто определяется как принцип информационной неделимости. Недопустимо, чтобы в ячейке таблицы реляционной модели содержалось более одной порции данных, что иногда называется информационным кодированием. 83
Реляционные базы данных
2. Данные в одном столбце должны быть одного типа. 3. Каждый столбец должен быть уникальным (недопустимы дублирования столбцов). 4. Столбцы размещаются в произвольном порядке. 5. Строки размещаются в таблице также в произвольном порядке. 6. Столбцы имеют уникальные наименования. Существуют два фундаментальных правила для реляционных БД: правило целостности объектов (entity integrity rule) и правило ссылочной целостности (referential integrity rule). Основными понятиями реляционных БД являются: «первичный ключ», «внешний ключ», «тип данных», «домен», «схема отношения», «схема БД», «кортеж», «отношение». Первичный ключ — это столбец или некоторое подмножество столбцов, которое уникально, т.е. единственным образом определяет строки. Первичный ключ, который включает более одного столбца, называется множественным или комбинированным, или составным. Остальные ключи, которые также можно использовать в качестве первичных, называются потенциальными или альтернативными ключами. Внешний ключ — это столбец или подмножество одной таблицы, который может служит в качестве первичного ключа для другой таблицы. Внешний ключ таблицы является ссылкой на первичный ключ другой таблицы. Правило целостности объектов утверждает, что первичный ключ не может быть полностью или частично пустым, т.е. иметь значение null. Правило ссылочной целостности гласит, что внешний ключ может быть либо пустым, либо соответствовать значению первичного ключа, на который он ссылается. Понятие «тип данных» в реляционной модели данных полностью адекватно понятию «тип данных» в языках программирования. Обычно в современных реляционных БД допускается хранение символьных, числовых данных, битовых строк, специализированных числовых 84
Реляционные базы данных
данных (например, "деньги"), а также специальных «темпоральных» данных (дата, время, временной интервал). Понятие «домена» более специфично для баз данных, хотя и имеет некоторые аналогии с подтипами в некоторых языках программирования. В самом общем виде домен определяется заданием некоторого базового типа данных, к которому относятся элементы домена, и произвольного логического выражения, применяемого к элементу типа данных. Если вычисление этого логического выражения дает результат «истина», то элемент данных является элементом домена. Наиболее правильной интуитивной трактовкой понятия «домена» является понимание домена как допустимого потенциального множества значений данного типа. Схема отношения — это именованное множество пар (имя атрибута, имя домена (или типа, если понятие домена не поддерживается)). Степень или «арность» схемы отношения — мощность этого множества. Схема БД (в структурном смысле) — это набор именованных схем отношений. Кортеж, соответствующий данной схеме отношения, — это множество пар «имя атрибута, значение», которое содержит одно вхождение каждого имени атрибута, принадлежащего схеме отношения. «Значение» является допустимым значением домена данного атрибута (или типа данных, если понятие домена не поддерживается). Тем самым, степень или «арность» кортежа, т.е. число элементов в нем, совпадает с «арностью» соответствующей схемы отношения. Попросту говоря, кортеж — это набор именованных значений заданного типа. Отношение — это множество кортежей, соответствующих одной схеме отношения. Иногда, чтобы не путаться, говорят «отношение-схема» и «отношение-экземпляр». Иногда схему отношения называют заголовком отношения, а отношение как набор кортежей — телом отношения.
85
Современные технологии, используемые в работе с данными
Современные технологии, используемые в работе с данными Технология «Клиент-сервер» — технология, разделяющая приложение СУБД на две части: клиентскую (интерактивный графический интерфейс, расположенный на компьютере пользователя) и сервер, собственно осуществляющий управление данными, разделение информации, администрирование и безопасность, находящийся на выделенном компьютере. Взаимодействие «клиент — сервер» осуществляется следующим образом: клиентская часть приложения формирует запрос к серверу баз данных, на котором выполняются все команды, а результат исполнения запроса отправляется клиенту для просмотра и использования. Данная технология применяется, когда размеры баз данных велики, когда велики размеры вычислительной сети, и производительность при обработке данных, хранящихся не на компьютере пользователя. OLE (Object Linking and Embedding — связывание и внедрение объектов) — стандарт, описывающий правила интеграции прикладных программ. Применяется для использования возможностей других приложений. OLE используется для определения и совместного использования объектов несколькими приложениями, которые поддерживают данную технологию. OLE Automation (автоматизация OLE) — компонент OLE, позволяющий программным путем устанавливать свойства и задавать команды для объектов другого приложения. Позволяет без необходимости выхода или перехода в другое окно использовать возможности нужного приложения. Приложение, позволяющее другим прикладным программам использовать свои объекты, называется OLE-сервером. Приложение, которое может управлять объектами OLE-серверов, называется OLE-контроллер или OLE-клиент. RAD (Rapid Application Development — быстрая разработка приложений) — подход к разработке приложений, предусматривающий широкое использование гото86
Современные технологии, используемые в работе с данными
вых компонентов и/или приложений и пакетов (в том числе от разных производителей). ODBC (Open Database Connectivity — открытый доступ к базам данных) — технология, позволяющая использовать базы данных, созданные другим приложением при помощи SQL. «SQL (Structured Query Language — язык структурированных запросов) — универсальный язык, предназначенный для создания и выполнения запросов, обработки данных как в собственной базе данных приложения, так и с базами данных, созданных другими приложениями, поддерживающими SQL. Также SQL применяется для управления реляционными базами данных. VBA (Visual Basic for Applications — Visual Basic для приложений) — разновидность (диалект) объектно-ориентированного языка программирования Visual Basic, встраиваемая в программные пакеты.
87
Системы управления базами данных
Системы управления базами данных Основные функции системы управления базами данных (СУБД): 1. Непосредственное управление данными во внешней памяти. Эта функция включает обеспечение необходимых структур внешней памяти как для хранения данных, непосредственно входящих в БД, так и для служебных целей, например, для убыстрения доступа к данным в некоторых случаях (обычно для этого используются индексы). 2. Управление буферами оперативной памяти. СУБД обычно работают с БД значительного размера; по крайней мере, этот размер обычно существенно больше доступного объема оперативной памяти. Понятно, что если при обращении к любому элементу данных будет производиться обмен с внешней памятью, то вся система будет работать со скоростью устройства внешней памяти. Практически единственным способом реального увеличения этой скорости является буферизация данных в оперативной памяти. Поэтому в развитых СУБД поддерживается собственный набор буферов оперативной памяти с собственной дисциплиной замены буферов. 3. Управление транзакциями. Транзакция — это последовательность операций над БД, рассматриваемых СУБД как единое целое. Либо транзакция успешно выполняется, и СУБД фиксирует изменения БД, произведенные этой транзакцией, во внешней памяти, либо ни одно из этих изменений никак не отражается на состоянии БД. Понятие «транзакции» необходимо для поддержания логической целостности БД. 4. Журнализация. Одним из основных требований к СУБД является надежность хранения данных во внешней памяти. Под надежностью хранения понимается то, что СУБД должна быть в состоянии восстановить последнее согласованное состояние БД после любого аппаратного или программного сбоя. Обычно рассматриваются два 88
Системы управления базами данных
возможных вида аппаратных сбоев: так называемые мягкие сбои, которые можно трактовать как внезапную остановку работы компьютера (например, аварийное выключение питания), и жесткие сбои, характеризуемые потерей информации на носителях внешней памяти. Поддержание надежности хранения баз данных в БД требует избыточности хранения данных, причем та часть данных, которая используется для восстановления, должна храниться особо надежно. Наиболее распространенным методом поддержания такой избыточной информации является ведение журнала изменений БД. Журнал изменений — это особая часть БД, недоступная пользователям СУБД и поддерживаемая с особой тщательностью (иногда поддерживаются две копии журнала, располагаемые на разных физических дисках), в которую поступают записи обо всех изменениях основной части БД. Во всех случаях придерживаются стратегии «упреждающей» записи в журнал (так называемого протокола Write Ahead Log — WAL). Самая простая ситуация восстановления — индивидуальный откат транзакции. 5. Поддержка языков БД. Для работы с базами данных используются специальные языки, в целом называемые языками баз данных. В современных СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД, начиная от ее создания, и обеспечивающий базовый пользовательский интерфейс с базами данных. Стандартным языком наиболее распространенных в настоящее время реляционных СУБД является язык SQL (Structured Query Language). Логически в современной реляционной СУБД можно выделить внутреннюю часть — ядро СУБД (часто его называют Data Base Engine), компилятор языка БД (обычно SQL), подсистему поддержки времени выполнения, набор утилит. В некоторых системах эти части выделяются ЯЕНО, в других — нет, но логически такое разделение можно провести во всех СУБД. Ядро СУБД отвечает за управление данными во внешней памяти, управление буферами оперативной памяти, 89
Системы управления базами данных
управление транзакциями и журнализацию. Соответственно, можно выделить такие компоненты ядра (по крайней мере, логически, хотя в некоторых системах эти компоненты выделяются явно), как менеджер данных, менеджер буферов, менеджер транзакций и менеджер журнала. Ядро СУБД обладает собственным интерфейсом, не доступным пользователям напрямую и используемым в программах, производимых компилятором SQL (или в подсистеме поддержки выполнения таких программ) и утилитах БД. Ядро СУБД является основной резидентной частью СУБД. При использовании архитектуры «клиент — сервер» ядро является основной составляющей серверной части системы. Основной функцией компилятора языка БД является компиляция операторов языка БД в некоторую выполняемую программу. В отдельные утилиты БД обычно выделяют такие процедуры, которые слишком накладно выполнять с использованием языка БД, например, загрузка и выгрузка БД, сбор статистики, глобальная проверка целостности БД и т.д. Утилиты программируются с использованием интерфейса ядра СУБД, а иногда даже с проникновением внутрь ядра.
90
Правила Кодда
Правила Кодда Двенадцать правил Кодда определяют требования к реляционным СУБД. 1. Явное представление данных. Информация должна быть представлена в виде данных, хранящихся в ячейках. 2. Гарантированный доступ к данным. К каждому элементу данных должен быть обеспечен доступ с помощью комбинации имени таблицы, первичного ключа строки и имени столбца. 3. Полная обработка неопределенных значений. Неопределенные значения Null, отличные от любого определенного значения, должны поддерживаться для всех типов данных при выполнении любых операций. 4. Доступ к описанию базы данных в терминах реляционной модели. Словарь данных активной базы данных должен сохраняться в форме таблицы, и СУБД должна поддерживать доступ к нему при помощи стандартных языковых средств доступа к таблицам. 5. Полнота подмножества языка. Язык управления данными и язык определения данных должны поддерживать все операции доступа к данным и быть единственным средством такого доступа, кроме, возможно, операций низшего уровня (см. правило 12). 6. Возможность обновления представлений. Все представления, подлежащие обновлению, должны быть доступны для этого. 7. Наличие высокоуровневых операций управления данными. Операции вставки, обновления и удаления должны применяться к таблице в целом. 8. Физическая независимость данных. Прикладные программы не должны зависеть от используемых способов хранения данных на носителях и методов обращения к ним. 9. Логическая независимость данных. Прикладные программы не должны зависеть от логических ограничений. 91
Правила Кодда
10. Независимость контроля целостности. Все необходимое для поддержания целостности данных должно храниться в словаре данных. 11. Дистрибутивная независимость. Реляционная база данных должна быть переносимой и способной к распространению. 12. Согласование языковых уровней. Если реляционная СУБД допускает использование низкоуровневого языка доступа (элемент доступа — запись), последний не должен совершать операций, противоречащих требованиям правил безопасности и поддержания целостности данных, которые соблюдаются языком более высокого уровня. Все это Кодд суммировал в правиле 0: для того чтобы систему можно было квалифицировать как реляционную СУБД, она должна использовать для управления базой данных исключительно реляционные функции.
92
Свойства и типы полей
Свойства и типы полей Поля — это основные элементы структуры базы данных. Они обладают свойствами. От свойств полей зависит, какие типы данных можно вносить в поле, а какие нет, а также то, что можно делать с данными, содержащимися в поле. Основным свойством любого поля является его длина. Длина поля выражается в символах или, что то же самое, в знаках. От длины поля зависит, сколько информации в нем может поместиться. Так как символы кодируются одним или двумя байтами, то можно условно считать, что длина поля измеряется в байтах. Очевидным уникальным свойством любого поля является его имя. Одна база данных не может иметь двух полей с одинаковым именем. Кроме имени у поля есть еще свойство подпись. Подпись — это та информация, которая отображается в заголовке столбца. Ее нельзя путать с именем поля, хотя если подпись не задана, то в заголовке отображается имя поля. Разным полям, например, можно задать одинаковые подписи. Разные типы полей имеют разное назначение и разные свойства: 1. Основное свойство текстового поля — размер. 2. Числовое поле служит для ввода числовых данных. Оно тоже имеет размер, но числовые поля бывают разными, например для ввода целых чисел и для ввода действительных чисел. В последнем случае кроме размера поля задается также размер десятичной части числа. 3. Поля для ввода дат или времени имеют тип Дата/ время. 4. Для ввода логических данных, имеющих только два значения (Да или Нет; 0 или 1; Истина или Ложь и т.п.), служит специальный тип — Логическое поле. Длина такого поля всегда равна 1 байту, поскольку этого более чем достаточно, чтобы выразить логическое значение. 93
Свойства и типы полей
5. Особый тип поля — денежный. Денежные суммы можно хранить и в числовом поле, но в денежном формате с ними удобнее работать. В этом случае компьютер изображает числа вместе с денежными единицами, различает рубли и копейки, фунты и пенсы, доллары и центы. 6. В современных базах данных можно хранить не только числа и буквы, но и картинки, музыкальные клипы и видеозаписи. Поле для таких объектов называется полем объекта OLE (Object Linking and Embedding — объектное связывание и внедрение. OLE разработан компанией Microsoft и является протоколом обмена данными, которые представлены в виде объектов). 7. Если нужно вставить в поле длинный текст (более 256 символов), для этого служит поле типа MEMO. В нем можно хранить до 65 535 символов. Особенность поля MEMO состоит в том, что реально эти данные хранятся не в поле, а в другом месте, а в поле хранится только указатель на то, где расположен текст. 8. Поле Счетчик, на первый взгляд, является обычным числовым полем, но оно имеет свойство автоматического наращивания. Если в базе есть такое поле, то при вводе новой записи в него автоматически вводится число, на единицу большее, чем значение того же поля в предыдущей записи. Это поле удобно для нумерации записей.
94
Виды и способы организации запросов
Виды и способы организации запросов Запрос можно представить себе как точку зрения на данные, включенные в таблицу. Запросы служат для селекции и фильтрации набора данных. Они позволяют выбрать из базы только необходимую информацию, которая соответствует определенному критерию (условию) и нужна для решения конкретной задачи. В качестве примера рассмотрим организацию запросов в системе управления базами данных (СУБД) Microsoft Access. Результат обработки запроса представляет собой таблицу, называемую Dynaset. В эту таблицу включены выбранные из основной таблицы (или нескольких таблиц) блоки данных, которые удовлетворяют критериям запроса. Dynaset — динамический, временный набор данных, поэтому при каждом выполнении запроса он строится вновь на основе «свежих» табличных данных. Microsoft Access дает большие возможности в гибкости проектирования запросов, а именно в ней можно: + выбрать поля, т.е. нет необходимости включать все поля таблицы в запрос; + выбрать записи, т.е. можно специфицировать запрос таким образом, что получите данные определенного вида; + отсортировать записи, т.е. можно просматривать записи в определенном порядке; + запрашивать данные из нескольких таблиц, которые могут обрабатываться вместе, и соответственно просмотреть совмещенные данные; + запрашивать данные из других баз данных, таких как Microsoft FoxPro, Paradox, dBASE, Betrieve и Microsoft или Sybase SQL серверы; + выполнять вычисления, создавать новые поля, которые будут содержать результаты вычислений; + использовать запрос в качестве источника данных для формуляров, отчетов и других запросов; 95
Виды и способы организации запросов
+ изменять данные в таблицах, т.е. можно обновлять, удалять, добавлять группы записей все сразу; + создать новую таблицу на базе существующей таблицы или группы таблиц. Выделяют два типа запросов: 1. QBE-запросы (Query By Example — запрос по образцу). Пользователь дает им определения, специфицируя отдельные параметры в окне проектирования с использованием подсказок (образцов). 2. SQL-запросы (Structured Query Language — структурированный язык запросов). Пользователь формулирует их с использованием инструкций и функций, выстраивая описание. QBE-запрос Access легко транслирует в соответствующий SQL-запрос. Обратная операция тоже не составляет труда. Запросы можно создавать с помощью Конструктора запросов. Он ускоряет проектирование нескольких специальных типов запросов: + запросы кросс-таблиц представляют данные в компактном суммированном формате; + запросы нахождения дубликатов находят дубликатные записи в выбранной таблице или запросе; + запросы нахождения несоответствия находят все записи в таблице, которые не связаны с записями в другой таблице; + запросы архивов копируют записи из существующей таблицы в новую и затем удаляют (по желанию) эти записи из таблицы оригинала. Можно воспользоваться запросом для проведения вычислений с блоками данных. Он может задать в каждом поле некоторую функцию, обрабатывающую содержимое этого поля. Результат обработки выдается в Dynaset. Функция обработки задается в строке Total, которая появляется после нажатия в пиктографическом меню кнопки с греческой литерой «сигма». Саму функцию можно выбрать в этой строке, развернув список возможных значений. С помощью структурированного языка запросов SQL в рамках MS Access пользователь может сформулировать 96
Виды и способы организации запросов
сколь угодно сложные по структуре критериев и вычислений запросы. Этот же язык позволяет управлять обработкой запросов. SQL-запрос представляет собой последовательность инструкций, в которую могут включаться выражения и вызовы агрегатных функций. Наряду с запросами выбора, с помощью MS Access можно реализовать также запросы действий, параметрические запросы и запросы кросс-таблиц. С помощью запроса действия можно изменять или переносить данные таблицы, а также актуализировать, добавлять или удалять группы блоков данных, изготавливать новые таблицы из набора Dynaset. Различают четыре типа запросов действий: запрос добавления, запрос удаления, запрос актуализации и запрос создания таблицы. Часто используются запросы, которые представляют собой незначительно видоизмененные варианты однажды подготовленного базового запроса. Речь может идти, например, о запросе, который позволяет выбирать из базы данных телефоны клиентов определенного региона, причем сам регион задается отдельно, в диалоге. Такие запросы называются параметрические, они видоизменяются от случая к случаю, но незначительно. Для их реализации проектируется один параметрический запрос, в котором указывается тот критерий (критерии), который может изменяться по заказу пользователя. Если необходимо объединить данные в формате строкколонок (двумерная таблица), то следует изготовить запрос кросс-таблицы. При проектировании запроса кросстаблицы можно указать в качестве заголовков для колонок значения некоторых полей или выражений. Запросы кросс-таблиц позволяют более компактно, чем обычные запросы, идентифицировать данные, объединяя однотипную информацию.
4 Зак 511
97
Система управления базами данных Microsoft Access
Система управления базами данных Microsoft Access Система управления базами данных (СУБД) MS Access ориентирована на работу с объектами, к которым относятся таблицы базы данных, формы, запросы, отчеты, макросы и модули. Для типовых процессов обработки данных — ввода, просмотра, обновления, поиска по заданным критериям, получения отчетов, Access позволяет конструировать в диалоговом режиме такие объекты, как формы, запросы, отчеты. Эти объекты состоят из графических элементов, называемых элементами управления. Основные элементы управления служат для связи объектов с записями таблиц, являющихся источниками данных. Множество мастеров MS Access помогает пользователю выполнить работы, не прибегая к конструированию. Мастера позволяют создать новые формы, запросы, отчеты, анализировать таблицы базы данных и даже полностью создать одну из многочисленных типовых баз данных. Для создания приложений пользователя могут использоваться макросы и модули на языке программирования Visual Basic. Каждый объект и элемент управления имеет свои свойства, определяя которые можно настраивать объекты и элементы управления. Таблицы создаются пользователем для хранения данных по одному объекту модели данных предметной области. Запросы создаются пользователем для выборки нужных данных из одной или нескольких связанных таблиц. Запрос может формироваться с помощью запросов по образцу QBE или с помощью языка структурированных запросов SQL. С помощью запроса также можно обновить, удалить или добавить данные в таблицы или создать новые таблицы на основе уже существующих. Формы предназначены для ввода, просмотра и корректировки взаимосвязанных данных базы на экране в удобном виде, который может соответствовать привычному для пользователя документу. Формы также могут исполь-
Система управления базами данных Microsoft Access
зоваться для создания панелей управления в приложении пользователя. Отчеты предназначены для формирования выходного документа, предназначенного для вывода на печать. Макросы содержат описание действий, которые должны быть выполнены в ответ на некоторое событие. Каждое действие реализуется макрокомандой. Выбор макрокоманд и задание параметров, используемых ими при выполнении, является простой автоматизированной операцией. Макрос позволяет объединить разрозненные операции обработки данных в приложении. Модули содержат программы на языке Visual Basic, которые могут разрабатываться пользователем для реализации нестандартных процедур при создании приложения.
4*
99
Система управления базами данных Oracle
Система управления базами данных Oracle Президент Oracle Corp. Лэрри Эллисон основал компанию в 1977 г. вместе с Робертом Майнором в Редвуде, штат Калифорния. Первая реляционная система управления базами данных (СУБД) фирмы базировалась на модели IBM System/R и была первой системой, в которой использовался язык SQL, разработанный фирмой IBM. В настоящее время СУБД Oracle поддерживают свыше 80 вариантов операционной среды в широком диапазоне, включая мэйнфреймы IBM, мини-компьютеры DEC VAX, мини-компьютеры с операционной системой UNIX, Windows NT и множество других платформ. Oracle является СУБД, поскольку она поддерживает словарь данных и множество уровней безопасности, предлагает средства, гарантирующие целостность данных, организует параллельный доступ и обеспечивает языковой интерфейс. Oracle обслуживает словарь данных в схемах SYS и SYSTEM, которые сохраняются в табличном пространстве SYSTEM. Oracle предлагает учет пользователей на уровне базы данных, идентификацию пользователей средствами операционной системы, определение и отслеживание их ролей, привилегий и профилей. Также поддерживаются представления SQL. Использование ресурсов регулируется профилями. Целостность обеспечивается с помощью механизма декларативной целостности для первичных и внешних ключей. При этом нужно просто указать ключ (тогда отпадает необходимость в написании специальных программ, которые должны были бы гарантировать целостность). Oracle формирует уникальный индекс для каждого первичного ключа. Дополнительно пользователь может заказать формирование индекса и для внешних ключей. Oracle позволяет также использовать принятые в SQL ограничения (constraints) и триггеры (хранимые процедуры, которые запускаются при выполнении определенных действий с таблицей). По умолчанию блокировка 100
Система управления базами данных Oracle
выполняется на уровне строки, но дополнительно можно организовать блокировку и на уровне блока. Первый вариант обеспечивает лучшие условия для параллельного доступа, особенно в приложениях типа OLTP (On-Line Transaction Processing — оперативная обработка транзакций. Приложения этого типа в основном используются с развитыми средствами манипулирования данными, их работа связана с интенсивным потоком транзакций). Журнал транзакций (элементарных непрерываемых операций в механизме параллельного доступа и в функционировании СУБД в целом) сохраняется отдельно от базы данных и буферизуется в глобальной системной области SGA (System Global Area — глобальная системная область. В SGA содержатся буферы блоков данных и динамически разделяемая область — пул). Журнал регистрации откатов сохраняется в базе данных и также буферизуется в SGA. Система Oracle совместима с SQL на уровне объектов, т.е. на первом уровне последнего стандарта ANSI SQL. В состав программного комплекса входит интерактивный интерпретатор SQL*Plus, который позволяет выполнять и неинтерактивные сценарии. Кроме того, имеется процедурный язык программирования PL/SQL (наподобие ADA и PASCAL).
101
VII
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА Файлы и каталоги
Файл — это поименованная область на диске или другом машинном носителе. В файлах могут храниться тексты программ, документы, готовые к выполнению программы, и т.д. Файлы разделяют на две категории — текстовые и двоичные. Текстовые файлы предназначены для чтения человеком. Они состоят из строк символов, причем каждая строка оканчивается двумя специальными символами — «возврат каретки» (CR) и «новая строка» (LF). При редактировании и просмотре текстовых файлов эти специальные символы, как правило, не видны. В текстовых файлах хранятся тексты программ, командных файлов DOS и т.д. Файлы, не являющиеся текстовыми, называются двоичными. Текстовый файл, содержащий только символы с кодами до 127 (т.е. не содержащий русских букв и псевдографических символов), называется ASCII-файлом. Каждый файл на диске имеет обозначение, которое состоит из двух частей: имени и расширения (часто имя и расширение вместе также называются именем, как правило, это не приводит к путанице). В имени файла может быть от 1 до 8 символов для DOS и от 1 до 255 символов, включая пробелы и спецсимволы, для Windows 95/98, NT, 2000 и Me. Расширение начинается с точки, за которой следуют от 1 до 3 символов. Например, command.com; paper.chi; autoexec.bat. Расширение имени файла является необязательным. Оно, как правило, описывает содержание файла, поэтому использование расширения весьма удобно. Многие программы устанавливают расширение име102
Файлы и каталоги
ни файла и по нему можно узнать, какая программа создала файл. Например: cот, ехе готовые к выполнению программы bat
командные (Batch) файлы
doc
документы для редактора MS Word
xls
документы для редактора MS Excel
сhi
документы для редактора ChiWriter
pas
программы на Паскале
for
программы на Фортране
bak
копия файла, делаемая перед его изменением
Каталог — это специальное место на диске, в котором хранятся имена файлов, сведения о размерах файлов, времени их последнего обновления, атрибуты (свойства) файлов и т.д. Если в каталоге хранится имя файла, то говорят, что этот файл находится в данном каталоге. В операционных системах Windows и MS DOS папки и файлы образуют на дисках иерархическую файловую структуру. Понятия «папка» и «каталог» — это одно и то же. Организация файловой структуры очень проста. Файлы находятся в папках. Папки вложены в другие папки, более высокого уровня. Папка самого высокого уровня называется корневой — она одна на каждом диске. Назначение файловой структуры — обеспечить однозначное отыскание любого файла, если известно его имя и путь поиска. Путь поиска начинается с корневой папки (ее имя совпадает с обозначением диска) и далее ведет через все вложенные папки к той папке, где находится разыскиваемый файл. Создание и обслуживание файловой структуры — это одна из основных функций операционной системы. Иными словами, файловая структура — это расположение файлов на диске в каталогах, каталоговая структура — это способ расположение папок (каталогов) на жестком диске. 103
Создание, структура и методы проектирования программы
Создание, структура и методы проектирования программы Программа — упорядоченная последовательность команд (инструкций) компьютера, составленных для решения задачи. Программы предназначены для реализации решаемой задачи. Задача — это проблема, подлежащая решению. Приложение — программная реализация на компьютере решения поставленной задачи. Процесс создания программы можно представить схематично в виде последовательности действий, показанных ниже: Постановка задачи
Алгоритм решения
—•
Программирование
—•
Отладка программы
—•
Программный продукт
Постановка задачи — обобщенный термин, который определяет исходные и выходные условия решаемой задачи. Постановка задачи связана с конкретизацией основных параметров ее реализации. Алгоритм — система команд (инструкций), определяющая процесс преобразования исходных данных (входная информация) в результат решения поставленной задачи (выходная информация). В алгоритме отражается логика и способ формирования результатов решения с указанием необходимых расчетных формул, логических условий и соотношений для контроля достоверности выходной информации. Алгоритм решения задачи должен иметь ряд обязательных свойств: + дискретность — возможность разбиения процесса обработки информации на более простые этапы; + определенность — однозначность выполнения отдельного шага преобразования информации; + выполнимость — возможность получения желаемого результата при заданной входной информации за конкретное число шагов; 104
Создание, структура и методы проектирования программы
+ универсальность — пригодность алгоритма для решения определенного класса задач. Форма представления и содержания алгоритма обработки информации зависит от применяемых методов проектирования алгоритмов и инструментальных средств разработки программ. Программирование — это теоретическая и практическая деятельность решения задачи средствами конкретного языка программирования и оформления полученных результатов в виде программы. Программирование — творческий, интеллектуальный процесс и в любой программе присутствует и отражается определенная степень искусства программиста. Именно поэтому на стадии программирования возникает этап отладки программы — процесс обнаружения и устранения ошибок в программе, производимой по результатам ее тестирования на компьютере. После окончательной отладки программа документируется, т.е. к ней прилагается описание назначения программы и инструкция по эксплуатации. Только после этого программа становится законченным программным продуктом, подготовленным к реализации как любой иной вид промышленной продукции. Программный продукт — комплекс взаимосвязанных программ для решения определенной проблемы (задачи), подготовленной к реализации. Программы состоят из описательной и операторной (выполнимой) частей. Этап проектирования программ оказывает влияние на стиль программирования, надежность, эффективность, отладку, тестирование и эксплуатационные свойства программ. Таким образом, это важнейшая часть любой программной разработки. Одним из методов, улучшающих программы, является структурное программирование. Он служит для организации проектирования программ и процесса кодирования таким образом, чтобы предотвратить большинство логических ошибок и обнаружить те, которые допуще105
Создание, структура и методы проектирования программы
ны. Структурное программирование сосредоточивается на одном из наиболее подверженных ошибкам факторов программирования — логике программы — и включает три главные составляющие: + проектирование сверху вниз; + модульное программирование; + структурное кодирование. Метод проектирования сверху вниз предусматривает вначале определение задачи в общих чертах, а затем постепенное уточнение структуры путем внесения более мелких деталей. Модульное программирование — это процесс разделения программы на логические части, называемые модулями, и последовательное программирование каждой части. Структурное кодирование — это метод написания хорошо структурированных программ, который позволяет получать программы, более удобные для тестирования, модификации и использования. Структурное кодирование состоит в получении правильной программы из некоторых простых логических структур.
Юо
Системы кодировки русских букв
Системы кодировки русских букв Кодировка K0I8-R Кодировка KOI8-R используется в большинстве компьютеров, работающих под OS UNIX на территории бывшего Советского Союза, и имеет название «Русская сетевая кодировка» (Russian Network Code). Кодировка зарегистрирована в Internet Architecture Board (IAB) в июле 1993 г. Русские буквы в кодовой таблице K0I8-R:
Преимущество данной кодировки в том, что она не имеет разрывов. Недостатки — лексиграфически не упорядочена.
Колировка MS DOS Кодировка MS DOS CP866 предложена фирмой Microsoft для MS DOS 6.22. Следует отметить, что эта кодировка немного отличается от кодировки, используемой ранее фирмой Microsoft для MS DOC (CP855) и от альтернативной кодировки, разработанной для персональных компьютеров. Русские буквы в кодовой таблице MS DOS:
107
Системы кодировки русских букв
Кодировка MS Windows Кодировка русского языка MS Windows CP1251 предложена фирмой Microsoft для своих продуктов. Эта кодировка является в настоящее время самой популярной (распространенной в сети Internet) кодировкой русских букв в России. Русские буквы в кодовой таблице MS Windows:
Преимущество данной кодировки в том, что она не имеет разрывов и лексиграфически упорядочена, однако до сих пор не «узаконена».
Колировка ISO 8859-5 Кодировка ISO 8859-5 является единственной «узаконенной» международной организацией стандартизации (ISO) кодировкой русского языка. Русские буквы в кодовой таблице ISO 8859-5:
Стандарт ISO 8859-5 является международным и поэтому в нем представлены не только символы алфавита русского языка, но и других языков, использующих кириллицу: украинский, болгарский, сербский, македонский. 108
Структура программного обеспечения
Структура программного обеспечения Программное обеспечение (ПО) — совокупность программных средств и сопроводительной документации для создания и эксплуатации информационных систем обработки данных средствами вычислительной техники. В зависимости от функций, выполняемых программным обеспечением, его можно разделить на три группы: базовое (системное) ПО, прикладное ПО и инструментальные системы:
Прикладное ПО включает в себя прикладные программы, которые обеспечивают выполнение необходимых пользователю работ: редактирование текста, рисование картинок, обработку информационных массивов и т.д. Системное ПО включает в себя системные программы, которые выполняют различные вспомогательные функции: создание копий информации, выдача справочной информации о компьютере, проверку устройств ПК и т.д. Инструментальные системы (системы программирования) обеспечивают создание новых программ для компьютера.
09
Системное и прикладное программное обеспечение
Системное и прикладное программное обеспечение Под системным понимается программное обеспечение (ПО), включающее в себя операционные системы, сетевое ПО, сервисные программы, а также средства разработки программ (трансляторы, редакторы связей, отладчики и др.). Операционные системы (ОС) являются наиболее важной составляющей класса системных программ. ОС управляет компьютером, запускает программы, обеспечивает доступ к данным и их защиту, выполняет целый комплекс сервисных функций по запросам пользователя и программ. Каждая программа работает под конкретной ОС, оказывающей по запросам этой программы определенные услуги. К числу прочих системных программ можно отнести программы-оболочки, которые не заменяют операционную систему, но предоставляют пользователю более удобное «общение» с ней, и вспомогательные программы (утилиты). Чаще всего используются утилиты следующих типов: + программы резервирования — позволяют быстро скопировать на съемные носители интересующую информацию; + антивирусные программы — предназначены для предотвращения заражения компьютера вирусом и ликвидации последствий их деятельности; + архиваторы — программы, позволяющие «сжимать» файлы при создании копий, в несколько раз уменьшают размер архивируемого файла за счет оптимальной его организации; + программы-русификаторы — приспосабливают другие программы для работы с русскими буквами; + программы для динамического сжатия дисков — создают квазидиски, информация которых в сжатом виде хранится на обычных (настоящих) дискетах в виде файлов, что позволяет хранить на дисках больше данных; 110
Системное и прикладное программное обеспечение
+ программы для оптимизации дисков — позволяют обеспечить более быстрый и удобный доступ к информации на дисках за счет оптимальной организации файловой структуры. Прикладным называется ПО, предназначенное для решения определенной целевой задачи из проблемной области. Часто такие программы называются приложениями. К типовому прикладному ПО относятся следующие программы: + текстовые процессоры (редакторы); + табличные процессоры; + системы иллюстративной и деловой графики (графические процессоры); + системы управления базами данных; + экспертные системы; + программы математических расчетов, моделирования и анализа экспериментальных данных. Интегрированными системами обычно являются экспертные системы, программы математических расчетов, моделирования и анализа экспериментальных данных, а также офисные системы. Примером мощной и широко распространенной интегрированной системы является офисная система Microsoft Office. Рассмотрим наиболее часто встречающееся прикладное ПО. Редакторы документов (WinWord, Лексикон, WordPerfect) — это наиболее широко используемый вид прикладных программ. Они позволяют подготавливать документы гораздо быстрее и удобнее. Редакторы документов позволяют использовать различные шрифты символов, абзацы произвольной формы, автоматически переносят слова на новую строку, позволяют делать сноски, включать рисунки, автоматически нумеруют страницы и сноски и т.д. Наиболее мощные редакторы документов позволяют проверять правописание, набирать тексты в несколько столбцов, создавать таблицы и диаграммы, строить оглавления, предметные указатели и т.д. 111
Системное и прикладное программное обеспечение
Табличные процессоры (Excel, Quattro Pro, Lotus 1-2-3). При работе с табличным процессором на экран выводится прямоугольная таблица, в клетках которой могут находится числа, пояснительные тексты и формулы для расчета значения в клетке по именующимся данным. Все распространенные табличные процессоры позволяют перевычислять значения элементов таблиц по заданным формулам, строить по данным в таблицах различные графики и т.д. С помощью графических редакторов (Paint, Adobe Photoshop, Corel) создаются и редактируются рисунки. В простейших редакторах предоставляются возможности рисования линий, кривых, раскраски областей экрана, создание надписей различными шрифтами и т.д. Правовые базы данных (Гарант, Консультант плюс) содержат тексты нормативных документов и предоставляют возможности поиска, распечатки и т.д. Системы автоматизированного проектирования (САПР) позволяют осуществлять черчение и конструирование различных предметов и механизмов с помощью компьютера. Среди систем малого и среднего класса в мире наиболее популярна система AutoCad фирмы AutoDesk.
112
Операционная система: назначение и основные функции
Операционная система: назначение и основные функции Операционная система (ОС) — это комплекс программ, который загружается при включении компьютера. ОС производит диалог с пользователем, осуществляет управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускает другие (прикладные) программы на выполнение. Операционная система обеспечивает пользователю и прикладным программам удобный способ общения (интерфейс) с устройствами компьютера. Элементарные операции для работы с устройствами компьютера и управления ресурсами компьютера — это операции очень низкого уровня. Действия, необходимые пользователю и прикладным программам, состоят из нескольких сотен или тысяч таких элементарных операций. Именно их и выполняет ОС. Операционная система скрывает от пользователя эти сложные и ненужные ему подробности и предоставляет ему удобный интерфейс для работы. Она выполняет также различные вспомогательные действия, например, копирование или печать файлов. Кроме того, операционная система осуществляет загрузку в оперативную память всех программ, передает им управление в начале их работы, выполняет различные вспомогательные действия по запросу выполняемых программ и освобождает занимаемую программами оперативную память при их завершении. Операционная система — это комплекс программ, организующих управление работой компьютера и его взаимодействие с пользователем. Операционные системы для персонального компьютера можно различать по нескольким параметрам: 1) однозадачные и многозадачные; 2) однопользовательские и многопользовательские. Однозадачные операционные системы позволяют запустить одну программу в основном режиме. Многозадачные позволяют запустить одновременно несколько программ, которые будут работать параллельно, не мешая друг другу. 113
Операционная система: назначение и основные функции
Однопользовательские операционные системы позволяют работать на компьютере только одному человеку. В многопользовательской системе работу можно организовать так, что каждый пользователь будет иметь доступ к информации общего доступа, введя пароль, к личной информации, доступной только ему. Например, UNIX позволяет нескольким пользователям одновременно работать на одном компьютере с помощью так называемых терминалов, в роли которых могут выступать либо специализированные устройства (видеомонитор с клавиатурой), либо запущенная на ПК специальная программа. Терминал может находиться в нескольких метрах или в нескольких тысячах километров от компьютера. Терминал может быть связан с основным компьютером и через локальную сеть или Internet.
114
Операционная система MS DOS
Операционная система MS DOS Операционная система MS DOS загружается в память ЭВМ при включении. Она выполняет следующие задачи: + дополняет аппаратную базовую систему ввода-вывода (BIOS); + предоставляет прикладным программам среду для их выполнения (ядро MS DOS); + предоставляет пользователю среду, обеспечивающую диалог с компьютером посредством команд (командный процессор). MS DOS загружается с системной дискеты в дисководе или с винчестера. Базовая система ввода-вывода (BIOS) находится в постоянной памяти (постоянном запоминающем устройстве) (ПЗУ) компьютера. Эта часть операционной системы является «встроенной» в компьютер. Ее назначение состоит в выполнении наиболее простых и универсальных услуг операционной системы, связанных с осуществлением ввода-вывода. Базовая система ввода-вывода содержит также тест функционирования компьютера, проверяющий работу памяти и устройств компьютера при включении его электропитания. Базовая система ввода-вывода содержит программу вызова загрузчика операционной системы. Загрузчик операционной системы — это очень короткая программа, находящаяся в первом секторе каждой дискеты с операционной системой DOS. Функция этой программы заключается в считывании в память еще двух модулей операционной системы, которые и завершают процесс загрузки DOS. На жестком диске (винчестере) загрузчик операционной системы состоит из двух частей. Это связано с тем, что жесткий диск может быть разбит на несколько разделов (логических дисков). Первая часть загрузчика находится в первом секторе жесткого диска, она выбирает, с какого из разделов жесткого диска следует продолжить загрузку. Вторая часть находится в первом секторе этого 115
Операционная система MS DOS
раздела, она считывает в память модули DOS и передает им управление. Дисковые файлы IO.SYS и MS DOS.SYS (они могут называться и по-другому, названия меняются в зависимости от версии операционной системы) загружаются в память загрузчиком операционной системы и остаются в памяти компьютера постоянно. Файл IO.SYS представляет собой дополнение к базовой системе ввода-вывода в ПЗУ. Файл MS DOS.SYS реализует основные высокоуровневые услуги DOS. Командный процессор DOS обрабатывает команды, вводимые пользователем. Этот процессор находится в дисковом файле C0MMAND.COM на диске, с которого загружается операционная система. Некоторые команды пользователя, например, type, dir или cору, командный процессор выполняет сам. Такие команды называются внутренними. Для выполнения остальных (внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем, и, если находит ее, то загружает в память и передает ей управление. По окончании работы программы командный процессор удаляет программу из памяти и выводит сообщение о готовности к выполнению команд (приглашение DOS). Внешние команды DOS — это программы, поставляемые вместе с операционной системой в виде отдельных файлов. Эти программы выполняют действия обслуживающего характера, например, форматирование дискет, проверку дисков и т.д. Драйверы устройств — это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых устройств или нестандартное использование имеющихся устройств. Драйверы загружаются в память компьютера при загрузке операционной системы, их имена указываются в специальном файле CONFIG.SYS.
116
Операционная система Windows З.хх
Операционная система Windows З.хх Ядро операционной системы (ОС) Windows З.хх слагается из трех модулей: Kernel (низкоуровневая часть — управление распределением памяти, процессами, файловым вводом-выводом и др.), User (контрольные элементы пользователя — работа с клавиатурой, мышью, таймером и портами, отображение окон и меню) и GDI (Graphics Device Interface, работа с дисплеем и принтером, прорисовка линий, закрашивание, отображение шрифтов, операции с масштабируемыми шрифтами TrueType). При помощи динамически загружаемых модулей (Dynamic Link Library) (DLL) поддерживаются отображение стандартных диалоговых окон Windows, протоколы обмена данными DDE (динамическое связывание данных, Dynamic Data Exchange) и OLE (связывание и встраивание объектов, Object Linking and Embedding), взаимодействие с драйверами устройств ввода-вывода и другие черты Windows. Для поддержки принтеров в Windows 3.1 применена архитектура мини-драйверов: универсальный драйвер принтера выполняет аппаратно-независимые функции печати, а для поддержки конкретных устройств используются мини-драйверы производителей. Для запуска Windows служит команда «WIN». После запуска системы на экране появится оболочка Windows. Стандартной оболочкой для запуска приложений в среде Windows 3.1 является Диспетчер Программ. Значки вызова программ размещаются во вложенных окнах Диспетчера Программ — группах. Каждой выполняемой программе в Windows отводится окно, которое может занимать часть экрана или весь экран. Верхняя часть окна содержит заголовок с именем приложения и именем документа, который в данный момент редактируется в окне. Потянув мышью заголовок, можно перемещать окно по экрану. Правее заголовка имеются две кнопки. Левая кнопка служит для свертывания окна до состояния значка. Что117
Операционная система Windows З.хх
бы развернуть окно приложения, надо дважды щелкнуть мышью по его значку. Значки можно перемещать по экрану мышью. Правая кнопка служит для разворачивания окна до полного размера экрана и для восстановления первоначального размера. В зависимости от состояния окна ее внешний вид меняется. Рамка окна приложения Windows позволяет изменять размеры окна. Полосы прокрутки служат для перемещения по рабочему полю приложений, списков и т.д. Нажатием [Alt+пробел] или щелчком мыши по левому верхнему углу окна Windows-приложения активизируется оконное меню. Двойной щелчок мыши по значку системного меню закрывает окно. Системное меню содержит команды для действий с окном и переключения между работающими приложениями. Многие приложения Windows, такие как Диспетчер Программ или текстовый процессор Microsoft Word, являются многооконными, то есть могут содержать одно или более вложенных окон. Под заголовком окна расположено меню. В каждом приложении, работающем с документами, есть меню «File» (Файл). Многие приложения, работающие с данными, имеют меню «Edit» (Редактирование). Меню доступа к справочной системе (Help) всегда последнее. Многие команды меню Windows можно вызвать комбинациями клавиш. Любую программу Windows можно завершить по команде [Alt+F4], что эквивалентно меню «File» -> «Exit». Перемещать значки из группы в группу проще всего при помощи мыши. Перетаскивание мышью с нажатой клавишей [Ctrl] не переместит программный элемент, а скопирует его. Программы, значки которых находятся в группе StartUp (Группа Запуска), автоматически загружаются при запуске Windows. Интерфейс Диспетчера Файлов. В левой части окна Диспетчера Файлов обычно изображено дерево каталогов, справа — содержимое текущего каталога. Если включить меню-переключатель Tree|lndicate Expandable Branches 118
Операционная система Windows З.хх
(Дерево|Отмечать Расширяемые Ветви), на значках каталогов появятся символы "+" и «—». Щелчок мышью на каталоге, помеченном « + », «распахнет» следующий уровень подкаталогов, щелчок на значке «—» «захлопнет» открытую ветвь. Перемещение с диска на диск осуществляется щелчком мышью по значку дисковода. В Windows 3.1 пиктограммы дисководов находятся под заголовком каждого окна, а в Windows for Workgroups 3.11 (для рабочих групп) — только в главном окне Диспетчера Файлов. Двойной щелчок мышью по значку дисковода создает новое окно Диспетчера Файлов. Для копирования и перемещения файлов удобно пользоваться перетаскиванием мышью. Любую программу можно вызвать на выполнение, выбрав в списке ее исполняемый файл и нажав [Enter]. Совместное использование Диспетчера Файлов с другими приложениями Windows. Диспетчер Файлов позволяет создавать новые программные элементы в группах Диспетчера Программ перетаскиванием значков файлов из Диспетчера Файлов в Диспетчер Программ. Загрузку файлов данных в активные приложения можно осуществлять путем перетаскивания значков файла данных из Диспетчера Файлов в окно приложения, предварительно свернутое до значка. В ОС для одноранговых сетей Windows for Workgroups 3.11 сетевые компоненты встроены внутрь усовершенствованной операционной оболочки Windows 3.1. Windows for Workgroups 3.11 дает возможность полностью использовать ресурсы сети и оперировать данными, функционирующими в сети. Пользователи Windows for Workgroups 3.11 могут совместно использовать файлы на дисковых накопителях и принтеры с помощью стандартных средств оболочки Windows — File Manager и Print Manager. Windows for Workgroups 3.11 ориентирована на модели процессоров не ниже 80386-го и требует минимум 4 Мбайт оперативной памяти. Реализация полноценного графического интерфейса возможна только на видеоадаптерах VGA и SVGA. 119
Операционная система Windows 95
Операционная система Windows 95 Операционная система (ОС) Windows 95 (W95) была не просто новой версией Windows. Она является полноценной ОС, которая не требует присутствия на компьютере какой-либо другой ОС. Более того, W95 — это целый программный продукт, включающий в себя много новых интересных программ, простой и понятный документоориентированный интерфейс, контекстные меню, упрощенные настройки, полную совместимость с DOS и предыдущими версиями Windows. W95 — это, во-первых, программа, рассчитанная на все категории пользователей; во-вторых, быстрая многооконная ОС, которая одновременно может решать несколько задач и использовать несколько конвейеров движения информации; в-третьих, W95 предоставляет возможность быстрой и легкой работы с электронной почтой, сетевыми файлами; и, в-четвертых, W95 обеспечивает поддержку переносных компьютеров (версии для ноутбуков включают в себя специальные энерго- и ресурсосберегающие программы), внешних устройств, звуковой и видеоаппаратуры, мультимедиа и многое другое. В распоряжение пользователя предоставлена возможность быстрого и легкого доступа к ресурсам сети, простые процедуры настройки и смены аппаратных средств, визуальный контроль за работой персонального компьютера (ПК). Следует отметить также и такую программу, входящую в состав W95, как Plug & Play (Вставь & Работай). В Р&Р включены драйверы большинства наиболее известных аппаратных средств. Вот некоторые новые возможности этой ОС по сравнению с предыдущими: + упрощенный интуитивный пользовательский интерфейс, благодаря которому сокращаются затраты на обучение новичков, а опытные пользователи могут разобраться с W95 самостоятельно. Кнопка запуска, панель задач, проводник по Windows (Windows 120
Операционная система Windows 95
Explorer), программы-мастера, новая система справки и другие возможности делают W95 простой для изучения; + технология Р&Р существенно облегчает жизнь пользователю. Р&Р автоматически устанавливает и настраивает аппаратные средства, при условии, конечно же, что они заложены в ее память. W95 предлагает также и возможности управления и конфигурирования системы с одного сервера, что особенно важно для локальных сетей. Существующая иерархическая база данных, называемая Системным Реестром (Register), содержит в себе всю информацию о конфигурации системы, о периферийных устройствах, о программном обеспечении, о предпочтениях и привилегиях пользователей. Доступ к Системному Реестру осуществляется по сети в стандартных интерфейсах. Это значительно упрощает такие административные задачи, как дистанционная настройка настольной системы, контроль за использованием ПК, распределение программного обеспечения (ПО) и т.п.; + системные правила распределения ресурсов позволяют администратору контролировать конфигурацию настольной системы. W95 поддерживает так называемые правила, или установки, задаваемые системным администратором. Открыв W95, пользователь увидит практически пустой экран, внизу которого будет одна-единственная кнопка — START (или ПУСК — в русифицированной версии). Нажать эту кнопку можно либо мышью, либо при помощи соответствующей клавиши на клавиатуре, если она поддерживает W95. С помощью START'a открывается иерархическое меню, с которого пользователь получает возможность доступа к практически всему функционалу ОС. Особо понравившиеся программы можно просто перетащить на рабочий стол, где они появятся в виде соответствующих ярлыков. Панель серого цвета, на которой расположена кнопка START, называется Task Bar (панель задач). Она позво121
Операционная система Windows 95
лила существенно упростить контроль за тем, какие программы в настоящий момент можно быстро вызвать, какие окна активизировать, поскольку панель задач видна всегда. Уже при запуске W95 пользователь может увидеть два ярлыка: «Мой компьютер» и «Сетевые ресурсы». Эти элементы обеспечивают доступ ко всем ресурсам локального компьютера и сети соответственно. W95 существенно упростила поиск документов. Если до этого, чтобы найти затерявшийся файл, требовалось знать его местонахождение и имя, то теперь достаточно помнить лишь несколько слов, содержащихся в этом документе, и ОС сама найдет файл (файлы), содержащий эти слова. Характерной особенностью W95 является поддержка длинных имен файлов. Теперь пользователь может называть свои творения именами длиной до 250 символов, включая пробелы и спецсимволы. Механизм поддержки длинных имен файлов полностью совместим с DOS, которая рассматривает длинные имена как аналог, полученный в результате сокращения имени файла до 8 символов. Требования к аппаратным средствам. Минимальные требования таковы: процессор 386DX или выше, ОЗУ — не менее 4 Мб (рекомендуется 8 Мб), VGA-совместимый видеоадаптер. Необходимый объем жесткого диска зависит от количества вспомогательных программ и колеблется от 30 до 70 Мб. Также следует учитывать, что W95; + работает исключительно на процессорах Intel (или совместимых); + не поддерживает системы симметричной многопроцессорной обработки информации; + не соответствует уровням защиты сетевых работ С2. В этом случае лучше использовать Windows NT.
122
Операционная система Windows 98
Операционная система Windows 98 Главное отличие операционной системы Windows 98 от Windows 95 состоит в интеграции с Web (сеть, паутина — Интернет). Так, Проводник Windows и браузер WWW (World Wide Web — всемирная паутина, Интернет) слились в единое целое. Новый Проводник объединяет ресурсы жесткого диска, локальную сеть и ресурсы Интернет. Active Desktop — один из компонентов новой операционной системы — позволяет просматривать Web-страницы прямо на Рабочем столе Windows. При этом в качестве «обоев» можно использовать Web-страницу, которая автоматически будет обновляться по расписанию. Для удобства получения доступа в Интернет значительно расширены возможности настройки стандартного подключения с помощью модема. В число стандартных компонент Windows 98 входит новое приложение TV Viewer, позволяющее при наличии соответствующего аппаратного обеспечения просматривать телевизионные каналы. Компьютер под управлением TV Viewer может принимать кабельные и спутниковые телепередачи, работать с данными, распространяемыми по WWW. Новые функции Windows 98: 1. Изменен пользовательский интерфейс. Унифицирован доступ ко всем видам ресурсов: от жестких дисков до WWW-сайтов по модели Web-браузера (программа для просмотра сайтов в Интернете). 2. Поддержка нескольких дисплеев. Эта функция работает только с PCI-адаптерами. Пользовательский интерфейс усовершенствован и отвечает требованиям, предъявляемым к настольным ПК с несколькими экранами. Система включает новый API-интерфейс, который использует возможности нескольких дисплеев. Например, можно выводить данные электронных таблиц на одном экране в виде рабочих карт, на другом — в виде диаграмм. 123
Операционная система Windows 98
3. Новая модель драйвера Windows (WDM, Win32 Driver Model), которая позволяет поставщикам аппаратных средств создавать драйверы устройств, работающих как в Windows 9x, так и в Windows NT. 4. Оптимизация настройки параметров дисплея — возможность изменять разрешение экрана и глубину цветов, не перезагружаясь. 5. Поддержка плат PCCard16 и PCCard32 (CardBus) PCMCIA. 6. Включены следующие подсистемы: DCOM, ActiveMovie v2.0 и DirectX v5.0. 7. Некоторые утилиты Windows 98 улучшены по сравнению с Windows 95.
124
Операционная система Windows NT
Операционная система Windows NT Операционная система (ОС) Windows NT имеет Windows-подобный графический интерфейс пользователя и предоставляет Win32 API — 32-разрядный интерфейс прикладного программирования для разработки новых приложений, способных использовать все возможности операционных систем высокого уровня, к которым, в частности, относятся многопоточные (или многозадачные) процессы, синхронизация, защита от несанкционированного доступа, ввод-вывод и управление объектами. Windows NT может взаимодействовать с другими операционными системами корпорации Microsoft, с Apple Macintosh и с UNIX-подобными системами по сетям различных типов. При этом взаимодействие может происходить как с однопроцессорными, так и с многопроцессорными компьютерами, построенными с использованием CISC- или RISC-технологий. Сама операционная система Windows NT работает в привилегированном режиме (режиме ядра), а защищенные подсистемы и прикладные программы — в непривилегированном (пользовательском). Термин «привилегированный» указывает на режим работы процессора. В этом режиме разрешено выполнение всех машинных команд и доступны все системные области. В непривилегированном режиме некоторые команды запрещены, а системные области памяти недоступны. В терминологии Windows NT привилегированный режим называется «режимом ядра», а непривилегированный — «пользовательским режимом». Блок Windows NT Executive предоставляет необходимые сервисы ОС и контролирует все внутренние привилегированные процессы, такие как планирование потоков, управление памятью, операции ввода-вывода и контроль файловой системы. Ядро системы обрабатывает прерывания и исключения, планирует потоки, синхронизирует процессы. 125
Операционная система Windows NT
Windows NT реализована в архитектуре клиент—сервер, в которой каждая из прикладных программ обращается к сервисным функциям системы (в блоке Windows NT Executive) через вызовы локальных процедур, реализованные в модуле LPC Manager (Диспетчер локальных процедур). Подсистема Win32 обслуживает обращения к функциям API Win32, поступающие от процессов-клиентов. Программы Win32 исполняются как отдельные многозадачные процессы. Программы Win 16 могут выполняться в совместно используемом пространстве памяти на отдельной VM (Virtual Machine — виртуальная машина) или с вытеснением в отдельных пространствах памяти. DOS-программы исполняются как отдельные процессы на отдельных виртуальных машинах (VDM). Работа прикладных программ консоли OS/2 и POSIX обеспечивается соответствующими подсистемами.
126
Операционная система Windows 2000
Операционная система Windows 2000 Операционную систему Windows 2000 можно использовать как основную операционную систему для современных настольных компьютеров и компьютеров Notebook, используемых на предприятиях любого типа. При создании этой системы корпорация Майкрософт сохранила все полезные возможности Windows 98 — технологию Plug and Play, простой и понятный пользовательский интерфейс, широкие возможности управления — и улучшила их. Кроме того, их дополнили система безопасности, средства управления и обеспечения надежности, характерные для системы Windows NT. Windows 2000 защищает основные файлы системы от перезаписи при установке приложений. В случае перезаписи файла система защиты Windows File Protection заменит перезаписанный файл правильной версией. Защита системных файлов обеспечивает надежную работу системы Windows 2000 и отсутствие системных сбоев, характерных для более ранних версий системы Windows. Windows 2000 является полноценной 32-разрядной операционной системой, что уменьшает вероятность сбоев приложений и незапланированных перезагрузок системы. Программа Microsoft Installer, работая со службой Windows Installer Service, помогает пользователям правильно устанавливать, настраивать, сопровождать, обновлять и удалять программы, снижая до минимума риск ошибок пользователя и возможность снижения производительности. В Windows 2000 исключено большинство случаев, вызывающих принудительную перезагрузку системы для Windows NT 4.0 и Windows 9x. Во многих случаях даже при установке новых приложений перезагрузка системы не понадобится. Инструментальное средство System Preparation Tool помогает администраторам клонировать конфигурации 127
Операционная система Windows 2000
компьютеров, системы и приложения, позволяя упростить» ускорить и удешевить процесс развертывания программ. Windows 2000 обеспечивает 25% увеличение быстродействия по сравнению с Windows 9x в системах с оперативной памятью 64 Мб и более, использует полную 32-разрядную архитектуру, позволяющую выполнять одновременно больше задач, чем Windows 95 или Windows 98, поддерживает до 4 Гб оперативной памяти (RAM) и до двух симметричных мультипроцессоров. Равноправная поддержка Windows 9x и Windows NT обеспечивает системе Windows 2000 возможность взаимодействия с более ранними версиями Windows на равноправной основе, включая разрешение совместного доступа к таким ресурсам, как папки, принтеры и периферийные устройства. В Windows 2000 существует возможность приспособить меню «Пуск» к особенностям работы пользователя, отображая наиболее часто используемые приложения. Наличие окон предварительного просмотра для мультимедиа в Windows 2000 позволяет просматривать образ файла мультимедиа в Windows Explorer перед открытием файла. Windows 2000 разрешает доступ к системным ресурсам только после проверки подлинности пользователя. Модель безопасности включает компоненты для проверки пользователя, получающего доступ к объектам (например, файлам и принтерам общего доступа), действий, которые он может выполнять над данным объектом, и проверяемых событий. Windows 2000 производит пофайловое шифрование с помощью созданного случайным образом ключа. Процессы шифрования и дешифрования производятся явным для пользователя образом. Поддержка IP-безопасности (IPSec) помогает защитить данные, передаваемые по сети. Средство IPSec является важной частью системы обеспечения безопасности для виртуальных частных сетей (VPN), позволяющей организациям безопасно передавать данные через Интернет. 128
Операционная система Windows 2000
Поддержка смарт-карт интегрирует поддержку смарткарт в операционную систему. Смарт-карты позволяют улучшить программные решения, такие как проверка подлинности клиента, интерактивный вход в систему, подписание кода и безопасная электронная почта. Средство Microsoft Management Console (MMC) обеспечивает согласованную централизованную среду для средств управления. Средство управления Windows Management Instrumentation (WMI) служит для отслеживания и управления ресурсами системы, что позволяет системным администраторам осуществлять слежение и управление системой с помощью сценариев и приложений, созданных независимыми разработчиками. Режим «Засыпание» Windows 2000 выключает компьютер и монитор через заданное время, сохраняя на диске настройки Рабочего стола. Это позволяет полностью выключить компьютер. При включении компьютера режим засыпания в точности восстанавливает все программы и настройки. Windows 2000 позволяет продолжать работу с сетевыми файлами, отключившись от сети. Функция «Автономные файлы» операционной системы Windows 2000 позволяет создавать на вашем компьютере зеркальную копию документов, хранимых в сети. Диспетчер синхронизации Windows 2000 позволяет сравнить автономно доступные файлы и папки на вашем компьютере с их аналогами в сети и обновить их версии. Программа NetMeeting позволяет проводить международные видеоконференции. С помощью программы NetMeeting можно проводить совещания в режиме реального времени с использованием видеоконференций, приложений общего доступа и обмена файлами. Universal Serial Bus (USB) позволяет подключать и отключать разнообразные периферийные устройства, такие как джойстики, сканеры и видеокамеры без необходимости дополнительной настройки или перезагрузки настольного или переносного компьютера. 5. Зак 511
129
Операционная система Windows 2000
Поддержка IrDA обеспечивает защищенное беспроводное соединение между двумя компьютерами с системой Windows 2000 с использованием популярного протокола передачи данных через инфракрасный порт. Windows 2000 поддерживает съемные устройства хранения таких данных, как DVD и Device Bay. Возможности работы с высококачественной графикой обеспечиваются с помощью поддержки Accelerated Graphics Port (AGP), разнообразных видеоплат и мониторов, стандарта OpenGL 1.2, интерфейса DirectX 7.0 API и расширений Video Port Extensions. Технология Plug and Play позволяет автоматически устанавливать новое оборудование с минимальной необходимостью настройки. Этот стандарт поддерживают более 6500 устройств. Windows 2000 является мощной платформой для разработчиков. Поддержка динамического HTML и языка XML дает разработчикам широкие возможности — с одновременным сокращением времени разработки. Панель журнала Windows 2000 позволяет вернуться к ранее просмотренным узлам. На панели журнала отображаются не только посещенные Web-узлы, но и узлы внутренней сети, сетевые серверы и локальные папки. Пакет администрирования Internet Explorer (IEAK) позволяет системным администраторам быстро и эффективно производить межплатформенное развертывание обозревателя Internet Explorer 5.01, устанавливая только выбранные компоненты и специальные приложения — все из одного центрального места. Средство Автозаполнение (AutoComplete) при вводе нескольких знаков в адресной строке автоматически предлагает варианты адреса URL из числа недавно введенных адресов. Средство IntelliForms избавляет от однообразной работы по заполнению Web-форм, автоматически вводя имя, адрес и другие сведения из защищенного хранилища на вашем компьютере. 130
Операционная система Windows 2000
Средство AutoCorrect автоматически исправляет ошибки в наиболее распространенных типах адресов URL, таких как http, .com, и .org. Windows 2000 обеспечивает подключение домашней сети или сети малого офиса к Интернету, используя удаленное подключение или широкополосную сеть. С одного компьютера можно настроить передачу сетевого адреса, адресацию и службу разрешения имен для всех компьютеров домашней сети. Минимальные требования к оборудованию для операционной системы Windows 2000 следующие: + Pentium-совместимый процессор с частотой 133 МГц или выше; + 64 мегабайта (Мб) оперативной памяти (RAM) — рекомендованный минимум; с увеличением размера оперативной памяти увеличивается быстродействие; + жесткий диск объемом 2Гб, на котором имеется не менее 650 Мб свободного места; + дисковод для компакт- или DVD-дисков; + монитор VGA или более высокого разрешения; + мышь Microsoft Mouse или другое совместимое указывающее устройство.
Операционная система Windows Millennium Edition
Операционная система Windows Millennium Edition Операционная система Windows Millennium Edition имеет ряд новых возможностей по сравнению с предыдущими версиями Windows. Ниже приводятся некоторые из них.
Средство загрузки изображений WLA (Windows Image Acquisition) дает новые возможности работы с цифровыми фотографиями, позволяет загружать снимки со сканеров и из цифровых фотоаппаратов и редактировать их с применением поворота и обрезки без использования программ независимых производителей. В Windows Millennium Edition из своих фотографий можно создавать слайд-фильмы и заставки и предоставлять к ним доступ своим друзьям и членам семьи. Панель Windows Media позволяет записывать, редактировать и упорядочивать видеозаписи на компьютере с системой Windows, а также осуществлять общий доступ к этим записям. В комплект Windows Millennium Edition входят интерактивные игры, для которых одним щелчком можно найти партнеров в сети. Новый диспетчер игр позволяет начать играть сразу после того, как вы вставили игровой диск в компьютер, и не тратить время на настройку и установку. Программа переназначения DirectInput является улучшенным средством поддержки игрового оборудования и автоматически выбирает наилучшее устройство для данной игры и оптимизирует настройку элементов управления, что позволяет меньше времени тратить на настройку и больше времени играть. Технология Разговор DirectPlay позволяет запустить сеанс разговора (Voice Chat) в Интернете. Запускается из любых приложений, поддерживающих разговор DirectPlay, таких как игры или клиент службы немедленных сообщений. Новый стек протокола TCP/IP обладает повышенной стабильностью и безопасностью работы с Интернетом. 132
Операционная система Windows Millennium Edition
В Windows Millennium Edition улучшено средство настройки клиента общего доступа к подключению Интернета. Несколько компьютеров получают общий доступ к одному подключению Интернета, даже если они работают под управлением различных версий Windows. В Windows Millennium Edition обеспечивается поддержка нескольких типов домашних сетей, включая Ethernet и HomePNA; со всеми этими сетями можно работать при помощи единого интерфейса. Кроме того, автоматически производится обнаружение имеющихся ресурсов домашней сети, например, принтеров и папок, и устанавливается общий доступ к ним. В Windows Millennium Edition естественно существует поддержка легко подключаемых сетевых устройств по стандарту «Универсальный Plug and Play». Также Windows Millennium Edition предлагает расширенные сетевые возможности, включающие электронную почту, разговор — письменно и устно (chat и voice-chat), «списки приятелей» и группы новостей. Средство восстановления автоматически возвращает компьютер в последнее из тех состояний, когда не обнаруживались неполадки, например, в состояние перед загрузкой нового программного обеспечения. Windows Millennium Edition обеспечивает поддержку новейших видов оборудования, таких как пятикнопочная мышь, клавиатура «speedracer», широкополосные модемы с интерфейсом USB (класс широкополосных устройств связи с интерфейсом USB) и дисководы DVD. Для удобства поиска нужной информации справочные материалы в Windows Millennium Edition размещены централизованно. Настраиваемые меню не загромождают рабочий стол и упрощают поиск средств и программ, используемых чаще всего. Также расширено и улучшено средство устранения неисправностей, что позволяет быстрее ликвидировать неполадки. В Windows Millennium Edition предотвращается перезапись или удаление основных системных файлов, тем самым поддерживается работоспособность системы. 133
Операционная система Windows Millennium Edition
Минимальные требования к оборудованию для операционной системы Windows Millennium Edition следующие: + Pentium-совместимый процессор с тактовой частотой 150 МГц или выше; + оперативная память 32 Мб ОЗУ (дополнительная память повышает производительность); + при типовой установке требуется от 320 до 420 Мб свободного места на жестком диске; в зависимости от конфигурации системы и выбранных параметров потребность в дисковом пространстве может меняться от 200 до 500 Мб; + дисковод для компакт- или DVD-дисков; + монитор VGA или более высокого разрешения; + мышь Microsoft Mouse или другое совместимое указывающее устройство.
134
Прочие операционные системы
Прочие операционные системы Операционная система Linux
Операционная система Linux была написана как альтернатива Windows, и является действительно "непробиваемой" — ее просто невозможно заставить «повиснуть». В странах Запада эта ОС уже давно используется вместо Windows — причем, как в домашних компьютерах, так и в серверах. В России она распространена в основном среди завсегдатаев «всемирной паутины» (Интернета). Linux — единственная ОС в мире, которая распространяется бесплатно, На любом из множества сайтов, распространяющих Linux и сопутствующие продукты, можно совершенно бесплатно установить себе на компьютер не только саму ОС, но и необходимые программы, вполне заменяющие аналогичные разработки для Windows. Кроме того, Linux позволяет продвинутым пользователям вмешиваться в саму систему, улучшать ее, исправлять мелкие ошибки и т.д. Еще одно преимущество Linux: она компактна. И самое главное: Linux — одна из самых надежных ОС в мире. Компьютеры, на которых она установлена, работают без перезагрузки месяцами и годами. Ей не страшны громоздкие базы данных и мощные вычислительные программы. Однако в Linux отсутствуют некоторые возможности, привычные для пользователей Windows: непосредственное создание ярлыков, автозапуск программ настройки сразу же после того, как компакт-диск был загружен в привод, и т.д. Операционная система BeOS
Операционная система BeOS — одна из самых молодых альтернативных систем, представленных на рынке. По своей структуре и организации очень напоминает Linux, но изначально делалась дружественной к пользователю. Имеет привлекательный внешний вид, кроме того, очень надежна. 135
Прочие операционные системы
К достоинствам BeOS можно отнести и то, что она специально предназначена для сетей и для мультимедийных приложений, требующих не только больших ресурсов, но и защиты от сбоев и зависаний. Она полностью удовлетворяет всем требованиям разработчиков видео- и аудиоприложений на профессиональном уровне. Ее недостатком можно считать ограниченную поддержку аппаратуры и программного обеспечения. Кроме того, программы под BeOS стоят во много раз дороже аналогичных под Windows. Операционная система JavaOS Язык программирования Java, предложенный компанией Sun, довольно быстро завоевал себе множество поклонников, особенно среди тех, кто подключен к Интернету. На этом языке очень удобно писать мультимедийные файлы, компьютерные игры и проч. Однако работа с Java под ОС Windows была несколько замедлена, и тогда Sun в срочном порядке разработала свою ОС, оптимально настроенную для работы с Java-приложениями. Характерной особенностью операционной системы JavaOS является то, что она способна работать на любом устройстве, в котором есть микропроцессор. Она занимает очень мало места, надежна, обладает широчайшими возможностями. Однако сетевые компьютеры на базе JavaOS так и не нашли свою нишу на рынке. Это связано, возможно, с недостатком программного обеспечения для этой ОС, а также с дороговизной уже разработанных программ. Операционная система MacOS Операционная система MacOS — специфическая ОС, работает только на компьютерах Macintosh, причем по надежности и удобствам намного превосходит Windows. Графический интерфейс, изначальная дружественность к пользователю и ориентация на профессиональные системы верстки и полиграфии сделали ее незаменимой для мощных издательских систем. Один внешний вид чего стоит, а 136
Прочие операционные системы
поскольку все эти компьютеры делаются только в США, они имеют высокое качество и сборки, и компонентов. Вообще, Macintosh должен был занять место IBM PC, но неудачная маркетинговая политика Apple привела к тому, что компьютеры Mac составляют всего 5—7% мирового парка. Таким образом, MacOS можно рекомендовать для работы в издательских системах, для художников, новичков, просто поклонников Mac. Операционная система OS/2
Операционная система OS/2 разработана фирмой IBM. С момента появления на свет завоевала множество поклонников среди продвинутых пользователей. Работает стабильно, хотя и не имеет некоторых удобств, которые характерны для Windows 95&98. В принципе, эта система очень надежна, имеет значительное число бизнес-приложений, способна работать в самых ответственных серверах и обслуживать, например, банковские сети. По своей идеологии чем-то схожа с Windows. При запуске на экране появляется волнистая надпись OS/ 2WARP — это рабочий стол системы. На нем расположены иконки, которые открываются так же, как и в Windows — двойным щелчком левой кнопкой мыши. В верхнем углу окна программы находятся три квадратика; один большой, другой поменьше, а третий перечеркнутый (перечислены справа налево). Их назначение аналогично Windows. OS/2 имеет мощную поддержку DOS, и поэтому все DOS-программы будут прекрасно работать в этой ОС. Выключить компьютер здесь также нельзя при помощи кнопки Power на системном блоке. Систему надо сначала закрыть. Для этого щелкните мышью по кнопке Закрыть систему на пусковой панели или по пиктограмме, на который изображен перечеркнутый компьютер на верхней панели.
137
Общие сведения о Norton Commander
Общие сведения о Norton Commander Оболочка Norton Commander (NC) разработана фирмой Symantec. Имеются англоязычная и русифицированная (локализованная) версии этого программного продукта, ориентированные для работы в среде DOS и Windows. Запуск программы Norton Commander производится набором в командной строке имени файла NC.EXE. После выполнения указанной команды на дисплее появляется главный экран оболочки Norton Commander. В верхней части экрана расположены шесть пунктов главного меню оболочки Norton Commander: Left, Files, Disk, Commands, Tools, Right, каждый из которых выполняет определенные функции. Основную часть экрана занимают две панели (окна). Каждая панель предназначена для отображения информации о файловой структуре на диске. При первом обращении к оболочке обе панели (левая — Left и правая — Right) могут содержать оглавление одного и того же или разных дисков. В оглавлении диска имена файлов указываются строчными буквами, а подкаталоги — прописными. Одна из двух панелей оболочки Norton Commander всегда является активной, в ней находится подвижный маркер (курсор). Маркер может быть установлен на любой файл или подкаталог, такой файл или подкаталог считается текущим, или рабочим. Панель, на которой отсутствует курсор, называют пассивной. Смена активной производится клавишей или щелчком мыши по пассивной панели. В оболочке Norton Commander 5.0 различают восемь типов панелей: + файловую панель — на ней отображается содержимое заданного диска; + панель обнаруженных файлов служит для хранения файлов, выявленных утилитой Norton Commander File Finder (NCFF), или файлов, предназначенных пользователем к удалению при очистке диска; 138
Общие сведения о Norton Commander
+ структурную панель — на ней в псевдографическом виде изображается дерево каталогов на заданном диске; + информационную панель, на которой содержится справочная информация об оперативной памяти компьютера и о диске и текущем каталоге на нем; + альтернативную информационную панель, на которую выдаются дополнительные сведения о файлах и заданном подкаталоге выбранного диска; + панель быстрого просмотра — на ней отображается содержимое текстового файла или сведения о подкаталоге; + архивную панель, на которой указывается содержимое архивного файла; + связующую панель, которая содержит список файлов и подкаталогов диска, установленного на другом персональном компьютере. Пользователь в любой момент может сменить тип панели. Чаще всего используются файловые панели. В заголовке файловой панели указывается полное имя текущего каталога, содержимое которого отображено на экране. Программа Norton Commander позволяет выполнять большое количество различных функций, в частности: + наглядно изображать содержание каталогов на дисках; + изображать дерево каталогов на диске с возможностью перехода в нужный каталог с помощью указания его на этом дереве, а также создания, переименования и удаления каталогов; + удобно копировать, переименовывать, пересылать и удалять файлы; + просматривать текстовые файлы, документы, сделанные с помощью различных редакторов текстов, базы данных и таблицы табличных процессоров; + редактировать текстовые файлы; + выполнять любые команды DOS; + изменять атрибуты файлов; + с помощью одного нажатия клавиши выполнять стандартные действия для каждого типа файлов. 139
Общие сведения о Norton Commander
Вместе с Norton Commander поставляются, программы для поддержки связи между компьютерами по модему, копирования и формирования дискет, получения информации о компьютере, очистки диска от ненужных файлов и т.д. Следует отметить, что Norton Commander является DOS-программой, поэтому она «не понимает» длинные имена Windows. Так, в панелях Norton Commander отображаются лишь короткие (8 символов + 3 в расширении) имена файлов, поиск файлов также осуществляется по коротким именам и т.д. При копировании файлов с длинными именами копиям будут присвоены только короткие имена.
140
Прочие программы офисного назначения
Прочие программы офисного назначения Среди прочих программ офисного назначения отметим: + программы распознавания символов (FineReader фирмы Бит, Cunieform фирмы Cognitive Technologies и т.д.). Эти программы применяются при использовании сканера и позволяют вводить сканированные тексты не в виде точек, что занимает очень большой объем памяти, а в виде символов ASCII-кода. Программы «понимают» тексты на разных языках, причем качество распознавания сильно зависит от качества отсканированного текста; + программы-переводчики позволяют автоматически переводить тексты на разных языках с более-менее приемлемым качеством. Как правило, они не понимают фразовые глаголы, идиомы и фразеологизмы, переводя их дословно. Естественно, получается тарабарщина. Однако тексты деловой переписки, в том числе и из Интернета, переводятся ими неплохо. Наиболее известные переводчики: Сократ фирмы Арсеналъ, Stylus фирмы ПроМТ и др.; + программы-словари (Мультилекс фирмы МедиаЛингва, Контекст фирмы Информатик, Лингво фирмы Бит и т.д.); + программы-планировщики используются при необходимости составления плана работ для многих людей, координируют использование ресурсов и т.д. Используют мощные математические и статистические пакеты, позволяют автоматически планировать рабочий день с учетом вводимых изменений. Примеры планировщиков — MS Project, TimeLire фирмы Symantec и проч.
141
Основные программы для работы со звуком и музыкой
Основные программы для работы со звуком и музыкой Audio и MIDI
В современных компьютерах можно выделить две наиболее популярные технологии, имеющие отношение к звуку и музыке: + Audio (аудио) — наиболее универсальная технология, представляющая произвольный звук как он есть — в виде цифрового представления исходного звукового колебания или звуковой волны (wave), отчего в ряде случаев она именуется wave-технологией. Позволяет работать со звуками любого вида, любой формы и длительности. Звуковая информация обычно хранится в файлах с расширением WAV. + MIDI — нотно-музыкальная технология, основанная на регистрации событий, происходящих при игре на электронном инструменте, — нажатий клавиш, педалей, воздействий на регуляторы, тумбле ры, кнопки и т.п. Последовательность подобных событий образует «электронную партитуру» музыкального произведения — как бы полную программу управления «автоматическим оркестром». Позволяет весьма точно записать достаточно сложное музыкальное произведение, а затем любое число раз исполнить его в соответствии с программой. Информация обычно хранится в файлах с расширением MID.
Аудио-технология обычно применяется там, где имеется исходный звуковой сигнал, подлежащий обработке, — с ее помощью записывают, обрабатывают и сводят «живые» акустические и голосовые партии, речь, шумы, специальные сигналы и т.п. MIDI-технология снискала себе успех в создании музыкальных произведений «с нуля», посредством только электронных инструментов. При помощи MIDI-системы может быть создан как некий музыкальный каркас, к 142
Основные программы для работы со звуком и музыкой
которому впоследствии будут добавлены голосовые или акустические партии, так и полноценное, законченное музыкальное произведение. Для применения аудио-технологии достаточно простейшего звукового адаптера, содержащего аналого-цифровые (АЦП) и цифро-аналоговые преобразователи (ЦАП). Для использования MIDI-технологии прежде всего нужен электронный музыкальный инструмент, преобразующий последовательность нот и команд управления в звук, — обычный или сразу цифровой. Это может быть клавишный синтезатор, звуковой модуль (тонгенератор, или синтезатор без клавиатуры), музыкальная карта с аппаратным синтезатором или же программный синтезатор — программа, имитирующая работу реального синтезатора. В Windows каждая технология представлена своим типом звукового устройства. Устройства могут быть реальными (аппаратные адаптеры) и виртуальными (программы-имитаторы, генераторы, фильтры и т.п.). Общение программ с устройствами происходит посредством аудио- и MIDI-портов, которые появляются в системе после установки соответствующих устройств. Отдельным случаем аудио-портов являются порты DirectSound. Классический (Wave, MME) аудио-порт не гарантирует предельно быстрого вывода звука — при обмене небольшими фрагментами, за счет буферизации и невысокой частоты обращений к адаптеру, возникают значительные (относительно времени звучания самих фрагментов) задержки. Интерфейс DirectSound, входящий в комплект интерфейсов DirectX, дает возможность работать с адаптером с минимальной буферизацией и накладными расходами, заметно сокращая задержки. Кроме того, в DirectSound несколько программ могут использовать один порт одновременно, что далеко не всегда возможно при работе с Wave-портами. Классификация программ
Любая программа для работы со звуком на персональном компьютере использует в той или иной форме одну 143
Основные программы для работы со звуком и музыкой
из этих технологий либо обе сразу. Выделим следующие основные классы программ: + звуковые процессоры (audio processors); + системы многоканальной записи и сведения (multitrack recorders); + звуковые редакторы (audio editors); + генераторы и анализаторы сигналов (audio generators/analysers) ; + виртуальные (программные) синтезаторы (virtual/ software synthesizers); + музыкальные редакторы (music/MIDI editors): • секвенсоры (sequencers); • трекеры (trackers); • нотные редакторы (score editors); + музыкальные процессоры (music/MIDI processors); + автокомпозиторы (auto composers); • автоаккомпаниаторы (auto accompaniment generators, jammers); + распознаватели нот (score recognition software); + преобразователи форматов (format converters); + считыватели звуковых дорожек с компакт-дисков (CD rippers/grabbers); + психоакустические компрессоры (psychoacoustic compressors); + проигрыватели (players); + системы для радиовещания и дискотек (delivery systems); + утилиты и управляющие программы (utility/control software). Многие программы сочетают в себе функции из разных классов: например, звуковые редакторы и секвенсоры нередко предоставляют также возможности процессоров (обработка в реальном времени), а музыкальные процессоры и автокомпозиторы часто имеют функции секвенсора.
144
Компьютерные вирусы
Компьютерные вирусы Компьютерный вирус — это специально написанная небольшая по размерам программа, которая может «приписывать» себя к другим программам (т.е. «заражать» их), а также выполнять различные нежелательные действия на компьютере. Программа, внутри которой находится вирус, называется зараженной. Когда такая программа начинает работу, то сначала управление получает вирус. Вирус находит и «заражает» другие программы, а также выполняет какие-нибудь вредные действия (например, портит файлы или таблицу размещения файлов (FAT) на диске, «засоряет» оперативную память и т.д.). Для маскировки вируса действия по заражению других программ и нанесению вреда могут выполняться не всегда, а скажем, при выполнении определенных условий. После того как вирус выполнит нужные ему действия, он передает управление той программе, в которой он находится, и она работает как обычно. Тем самым внешне работа зараженной программы выглядит так же, как и незараженной. Многие разновидности вирусов устроены так, что при запуске зараженной программы вирус остается в памяти компьютера и время от времени заражает программы и выполняет нежелательные действия на компьютере. Существует несколько типов вирусов:
145
Компьютерные вирусы
Все действия вируса могут выполняться очень быстро и без выдачи каких-либо сообщений, поэтому пользователю очень трудно, практически невозможно, определить, что в компьютере происходит что-то необычное. Пока на компьютере заражено относительно мало программ, наличие вируса может быть практически незаметным. Однако по прошествии некоторого времени на компьютере начинает твориться что-то странное, например: + некоторые программы перестают работать или начинают работать неправильно; + на экран выводятся посторонние сообщения, символы и т.д.; + работа на компьютере существенно замедляется; + некоторые файлы оказываются испорченными и т.д. Некоторые вирусы ведут себя очень коварно. Они вначале незаметно заражают большое число программ и дисков, а затем наносят очень серьезные повреждения, например, форматируют весь жесткий диск на компьютере, естественно после этого восстановить данные бывает просто невозможно. А бывают вирусы, которые ведут себя очень скрытно, и портят понемногу данные на жестком диске или сдвигают таблицу размещения файлов (FAT). К последним относится вирус OneHalf, имеющий множество модификаций. Для того, чтобы программа-вирус была незаметной, она должна иметь небольшие размеры. Поэтому вирусы пишут обычно на низкоуровневых языках Ассемблер или низкоуровневыми командами языка СИ. Распространение вирусов
Компьютерный вирус может испортить, т.е. изменить ненадлежащим образом, любой файл на имеющихся в компьютере дисках. Но некоторые виды файлов вирус может «заразить». Это означает, что вирус может «внедриться» в эти файлы, т.е. изменить их так, что они будут содержать вирус, который при некоторых обстоятельствах может начать свою работу. Тексты программ и документов, информационные файлы баз данных, таблицы табличных процессоров и дру146
Компьютерные вирусы
гие аналогичные файлы не могут быть заражены обычным вирусом, он может их только испортить. Заражение подобных файлов делается только макро-виру сами. Обычным вирусом могут быть заражены следующие виды файлов: 1. Исполняемые файлы, т.е. файлы с расширениями имен .сот и .ехе, а также оверлейные файлы, загружаемые при выполнении других программ. Вирусы, заражающие файлы, называются файловыми. Вирус в зараженных исполняемых файлах начинает свою работу при запуске той программы, в которой он находится. Наиболее опасны те вирусы, которые после своего запуска остаются в памяти резидентно, — они могут заражать файлы и вредить до следующей перезагрузки компьютера. А если они заразят любую программу, запускаемую из файла AUTOEXEC.BAT или CONFIG.SYS, то и при перезагрузке с жесткого диска вирус снова начнет свою работу. 2. Загрузчик операционной системы и главная загрузочная запись жесткого диска. Вирусы, поражающие эти области, называются загрузочными, или БOOT-вирусами. Такой вирус начинает свою работу при начальной загрузке компьютера и становится резидентным, т.е. постоянно находится в памяти компьютера. Механизм распространения — заражение загрузочных записей вставляемых в компьютер дискет. 3. Драйверы устройств, т.е. файлы, указываемые в предложении DEVICE файла CONFIG.SYS. Вирус, находящийся в них, начинает свою работу при каждом обращении к соответствующему устройству. Вирусы, заражающие драйверы устройств, очень мало распространены, поскольку драйверы редко переписывают с одного компьютера на другой.
147
Антивирусные программы
Антивирусные программы Антивирусные программы предотвращают проникновение вирусов на компьютеры организации, выявляют инфицированные файлы и осуществляют лечение зараженного компьютера. Особенно опасны вирусы в условиях локальной сети, когда, проникнув на один компьютер, вирус может поразить все компьютеры, объединенные в сеть. Основные источники вирусов: нелегальное программное обеспечение (чаще всего игры); дискеты, зараженные вирусом, находящимся в загрузочном секторе; документы MS Word и Excel, зараженные макро-вирусами. Существуют следующие виды антивирусных программ: 1. Программы-детекторы позволяют обнаруживать файлы, зараженные одним из нескольких известных вирусов. 2. Программы-доктора, или фаги, «лечат» зараженные программы или диски, «выкусывая» из зараженных программ тело вируса, т.е. восстанавливая программу в том состоянии, в котором она находилась до заражения вирусом. 3. Программы-ревизоры сначала запоминают сведения о состоянии программ и системных областей дисков, а затем сравнивают их состояние с исходным. При выявлении несоответствий об этом сообщается пользователю. 4. Доктора-ревизоры — это гибриды ревизоров и докторов, т.е. программы, которые не только обнаруживают изменения в файлах и системных областях дисков, но и могут автоматически вернуть их в исходное состояние. 5. Программы-фильтры располагаются резидентно в оперативной памяти компьютера, они перехватывают те обращения к операционной системе, которые используются вирусами для размножения и нанесения вреда, и сообщают о них пользователю. Пользователь может разрешить или запретить выполнение соответствующей операции. 6. Программы-вакцины, или иммунизаторы, модифицируют программы и диски таким образом, что это не 148
Антивирусные программы
отражается на работе программ, но вирус, от которого производится вакцинация, считает эти программы и диски уже зараженными. Эти программы крайне неэффективны и далее не рассматриваются. Максимальную защиту от вирусов, переносимых на загрузочных секторах дискет, обеспечивают антивирусные программы, включающие в себя резидентный монитор — программу, автоматически запускаемую в момент включения компьютера и отслеживающую все обращения к дискам и файлам (AntiViral Toolkit Pro 3.0; Norton Anti Virus 4.0). Эти программы обнаруживают вирусы в момент обращения к дискете и позволяют сразу же их удалять или лечить зараженные файлы. Даже если сотрудник вставил зараженную вирусом дискету в компьютер и не запустил антивирусную программу, все равно вирус будет сразу же обнаружен и обезврежен. Для максимальной безопасности компьютера рекомендуется периодически запускать антивирусную программу для проверки всех дисков компьютера либо только тех, в которые помещаются вновь поступающие документы. Такая проверка может запускаться как вручную, так и автоматически. Команда запуска AntiViral Toolkit Pro для этого помещается в папку Автозагрузка. Параметры проверки при этом задаются заранее заданной конфигурацией и параметрами командной строки. Компьютер в этом случае проверяется каждый раз при включении. Аналогичная программа — Norton AntiVirus включает в себя модуль Schedule, позволяющий запускать программу с заданной периодичностью в удобное пользователю время. Стратегия защиты от вирусов. Ни один тип антивирусных программ по отдельности не дает, к сожалению, полной защиты от вирусов. По этому наилучшей стратегией защиты от вирусов является многоуровневая, «эшелонная» оборона. Средствам разведки в «обороне» от вирусов соответствуют программы-детекторы, позволяющие проверять вновь полученное программное обеспечение на наличие вирусов. 149
Антивирусные программы
На переднем крае обороны находятся программы-фильтры (резидентные программы для защиты от вируса). Эти программы могут первыми сообщить о вирусной атаке и предотвратить заражение программ и диска. Второй эшелон обороны составляют программы-ревизоры, программы-доктора и доктора-ревизоры. Ревизоры обнаруживают нападение даже тогда, когда вирус сумел «просочиться» через передний край обороны. Программы-доктора применяются для восстановления зараженных программ, если ее копий нет в архиве. Но они не всегда лечат правильно. Доктора-ревизоры обнаруживают нападение вируса и лечат зараженные файлы, причем контролируют правильность лечения. Самый глубокий эшелон обороны — это средства разграничения доступа. Они не позволяют вирусам и неверно работающим программам, даже если они проникли в компьютер, испортить важные данные. И наконец, в «стратегическом резерве» находятся архивные копии информации и «эталонные» дискеты с программными продуктами. Они позволяют восстановить информацию при ее повреждении на жестком диске.
150
VIII
ТЕХНОЛОГИЯ ОБРАБОТКИ ТЕКСТОВОЙ ИНФОРМАЦИИ
Создание текстового документа Текстовые редакторы предоставляют значительно больше возможностей для оформления текста, чем пишущая машинка. Использование подзаголовков, абзацных отступов, увеличенных пробелов между строками текста, выделение жирным шрифтом, курсивом, жирным курсивом, обычным и двойным подчеркиванием, изменением размера и типа шрифта позволяет улучшить восприятие содержания текста. Однако использование в одном документе большого количества шрифтов различных гарнитур не рекомендуется, так как это затрудняет восприятие содержания. Не следует использовать более 2—3 шрифтов одновременно. При установке дополнительных шрифтов следует обращать внимание на поддержку шрифтами так называемой кодировки «Unicode», так как старые шрифты, не поддерживающие этой кодировки, невозможно использовать в MSOffice 97, MSOffice 2000. Для выделения важных моментов в тексте можно использовать цветовое оформление. Однако, если текст будет распечатываться на черно-белом принтере, следует иметь в виду, что некоторые цвета при распечатке дают слишком темный фон и делают выделенный текст трудночитаемым. Другой способ выделения текста — использование рамок. Чтобы рамка не смещалась относительно остального текста, следует установить ее расположение относительно абзаца и установить привязку (в MS Word -> команда «Графический объект» в меню «Формат», вкладка «Размер и положение»). В MS Word для обрамления используется специальная панель инструментов «Таблицы и границы». 151
Создание текстового документа
Рамки удобно применять для пояснений в организационных документах, таких как инструкции и правила. Ими могут быть помечены, наряду со шрифтовым оформлением, те пункты, выполнение которых строго обязательно в первую очередь. Программа MS Word осуществляет проверку орфографии в фоновом режиме, одновременно с созданием документа и подчеркивает красной волнистой линией незнакомые слова, возможно, содержащие ошибку, а в контекстном меню предлагаются варианты замены неправильно набранного слова. Грамматическая проверка выявит неправильно расставленные знаки препинания, несогласованность слов и другие ошибки. При подготовке текста дополнительную помощь оказывают словари синонимов, антонимов, толковые, а при подготовке текстов на иностранных языках — англо-русские, русско-английские или соответственно немецкие, французские и другие словари, позволяющие моментально просмотреть соответствующую статью словаря к выбранному слову.
152
Набор текста
Набор текста При современном уровне развития компьютерных информационных технологий клавиатура персонального компьютера (ПК) остается основным инструментом ввода текста будущих документов. Вводимый текст располагается в специально отведенной области экрана дисплея — текстовом окне или рабочей области. Остальная часть экрана отводится под служебную область. Обычно в служебной области присутствует строка статуса, которая содержит полезную для пользователя информацию о режиме работы программы подготовки текста и используется для краткой подсказки о действии программы при выборе того или иного пункта меню. Место экрана, на котором появляется следующий вводимый символ, т.е. позиция ввода, отмечается специальным знаком — курсором. В служебной области всегда помещена информация о текущем положении курсора. Любая система подготовки текстов поддерживает два режима ввода — вставки или замены. Переключение между режимами осуществляется клавишными командами программы либо командой меню. Возможность легко исправить ошибку набора снижает внимание пользователя и стимулирует высокую скорость набора текста, а следовательно, увеличивает вероятность набора ошибочных символов. Клавиша [Backspace] удаляет ошибочный символ слева от курсора, клавиша [Delete] удаляет из текста символ, находящийся в позиции курсора, а все символы справа смещаются влево в режиме вставки. Вводимый символ автоматически раздвигает строку при режиме вставки либо заменяет существующий символ в режиме замены. Если используется текстовый процессор, то существенным является понятие «мягкого» и «жесткого» разделителя. При нажатии на клавишу клавиатуры ПК в текст вносится символ «жесткого» пробела. Кроме этого символа, в тексте могут существовать так называемые «мягкие» пробелы, вносимые в текст программой 153
Набор текста
текстового процессора для выравнивания длины строк. Термин «мягкий» указывает на то, что при необходимости текстовый процессор удаляет лишние либо вставляет дополнительные «мягкие» пробелы. Аналогично можно трактовать понятие «мягкий» и «жесткий» конец строки. «Жесткий» признак конца строки создается при нажатии пользователем клавиши [Enter] для указания конца вводимого абзаца текста, он не может удаляться программой текстового процессора или автоматически менять свое расположение. Признак конца строки не всегда индицируется на экране монитора, но тем не менее всегда существует в тексте. Перевод курсора на новую строку программой текстового процессора осуществляется автоматически по достижении конца текущей строки, т.е. ввод текста происходит под контролем функции автоматического форматирования. Когда все отведенные для текста строки экрана дисплея будут заполнены, система подготовки текстов автоматически сдвигает текст. При этом верхняя строка текста исчезает из поля зрения пользователя, а внизу появляется пустая строка для дальнейшего ввода символов. Этот процесс называют прокруткой или скроллингом строк.
154
Базовые функции редактирования текстового документа
Базовые функции редактирования текстового документа Созданный на этапе набора текст документа в дальнейшем может подвергаться изменениям. К основным операциям редактирования принято относить следующие: + добавление фрагмента текста; + удаление фрагмента текста; + перемещение фрагмента текста; + копирование фрагмента текста. К числу операций редактирования также можно отнести операцию поиска и контекстной замены. Под фрагментом понимается область текста, указанная (выделенная, маркированная) пользователем. Минимальный размер фрагмента — один символ, максимальный — весь текст документа. Выделение текста является одним из основополагающих принципов работы системы подготовки текстов. Различают строчные, прямоугольные выделенные фрагменты либо цепочки символов. Выделение фрагмента документа может производиться с помощью мыши или клавиатуры. Выделенный фрагмент в окне редактирования отмечается либо цветом, либо негативным изображением. Для добавления одного или нескольких символов система подготовки текстов должна находиться в режиме вставки, а текстовый курсор — в том месте документа, где производится дополнительный набор текста. При наборе очередного добавляемого символа часть строки справа (включая курсор) сдвигается на одну позицию вправо, а введенный символ появляется в позиции курсора. Если включен режим замены, то вновь набираемые символы замещают присутствующие в тексте редактируемого документа символы. Для удаления одного или нескольких символов используются клавиши [Delete] или [Backspace]. При нажатии клавиши [Delete] удаляется символ в позиции курсора, правая часть строки сдвигается влево, а сам курсор остается на месте. 155
Базовые функции редактирования текстового документа
При нажатии клавиши [Backspace] удаляется символ в позиции слева от курсора, курсор и правая часть строки сдвигаются влево. Технология удаления больших фрагментов текста предполагает предварительное выделение фрагмента для редактирования. Удаление может быть произведено двумя способами: + выделенный фрагмент изымается из текста, оставшийся текст смыкается; + выделенный фрагмент удаляется в специальный буфер временного хранения, откуда может быть извлечен для вставки в другое место редактируемого документа либо использован в текстах других документов. Содержимое временного буфера сохраняется в течение сеанса работы или до помещения в него новой порции информации. Для копирования информации используется технология, во многом похожая на предыдущую: + предварительно копируемый текст должен быть выделен, а затем специальной командой «Копировать» системы подготовки текстов помещен во временный буфер хранения, при этом в буфер попадает копия фрагмента, сам он по-прежнему располагается в тексте документа; + текстовый курсор помещается в новую позицию для вставки; + копия фрагмента извлекается из буфера и располагается начиная с указанной курсором позиции, существующий справа от курсора текст сдвигается вправо. Для выполнения перемещения фрагмента текста с использованием временного буфера хранения необходимо выполнить такие технологические операции: + выделение нужного фрагмента; + удаление в буфер временного хранения; + перемещение курсора в нужное место документа; + вставка содержимого буфера в документ. Операция поиска в среде программы обработки текста может выполняться следующим образом. Это может быть 156
Базовые функции редактирования текстового документа
поиск по образцу, например, для последующей замены найденного словосочетания на другое. Действия пользователя системы подготовки текстового документа сводятся к такой цепочке операций: + задается некоторый образец (символ, слово или цепочка символов); + указывается направление поиска (вперед от текущей позиции курсора либо назад); + система подготовки текстов начинает поиск заданного фрагмента, при обнаружении последнего просмотр приостанавливается, курсор позиционируется перед искомым фрагментом и пользователь имеет возможность произвести нужную коррекцию. Другой вариант поиска предполагает, что текст предварительно размечается специальными служебными метками (закладками или bookmarks), а затем система подготовки текста осуществляет перевод курсора к метке, заданной пользователем по ее имени.
157
Основные методы форматирования текстовых документов
Основные методы форматирования текстовых документов Различают три типа форматирования прозаических документов: + символьное (или шрифтовое оформление); + форматирование абзаца документа; + оформление (верстка) страниц (или разделов) документа. Оформление символов текста. Минимальной единицей информации, которой оперирует система подготовки текста, является символ. К символам применимы все операции по редактированию и оформлению текста документа. Системы подготовки текстовых документов используют следующие основные понятия, связанные с наборами символов. Шрифт — комплект литер с буквами того или иного алфавита и всеми относящимися к нему знаками и цифрами. Начертание шрифта или гарнитура — графические особенности шрифта, определяемые наклоном и характером очка (шрифт прямого, курсивного и наклонного начертания), шириной очка (шрифт нормального, узкого и широкого начертания), его насыщенностью (шрифт светлого, полужирного, жирного начертания). Размер шрифта {кегль), его высота задается в пунктах. Пункт — единица измерения, принятая в полиграфии. Кроме пункта используется питч (pitch) — количество символов, которое может быть напечатано на отрезке в один дюйм. Обозначается буквой р. Все используемые шрифты могут быть разбиты на две категории: шрифты моноширинные, или фиксированные, у которых все символы одинаковой ширины, и шрифты пропорциональные, у которых ширина символа определяется особенностью его изображения (например, буква «ш» шире, чем «а»). При выборе шрифта для печати документа основным критерием является его удобочитаемость. Выбранный 158
Основные методы форматирования текстовых документов
шрифт не должен отвлекать внимание читателя от содержания документа. Разнообразие может внести лишь текст заглавных надписей различных составных частей документа (рубрик). Можно дать несколько общих рекомендаций по созданию страницы документа: + не используйте на одной странице много видов гарнитур, максимально рекомендуется 3 типа гарнитуры; + страницы документа набирайте выбранным набором гарнитур; + придерживайтесь сетки-схемы размещения текста и иллюстраций на странице; + не стремитесь максимально заполнить все пространство страницы текстом. При работе на персональном компьютере приходится иметь дело с выдачей символов на два устройства: на дисплей и на принтер. В связи с этим, говоря о некотором шрифте, всегда следует уточнять, о чем именно идет речь — о принтерном или об экранном шрифте. Все шрифты по технологии изготовления могут быть разделены на две большие категории. Матричные шрифты. Еще недавно эта категория являлась единственной. Шрифты в этом случае создаются по так называемой bitmap-технологии, или методом битовой карты. В файле с таким шрифтом хранятся «точечные» изображения каждого символа внутри сетки точек фиксированного размера. Чем выше разрешающая способность устройства, тем выше и качество прорисовки контуров символов. Однако разрешение обычного монитора намного хуже, чем разрешение самого «слабого» принтера. По этой причине нельзя добиться полного соответствия изображения на бумаге и на принтере. К недостаткам растровых шрифтов можно отнести существенное ухудшение качества изображения при изменении размера шрифта, его масштабировании. Контуры букв приобретают ступенчатую форму, возникает так называемый лестничный эффект. Свободно масштабируемые шрифты. Второй способ создания шрифтов заключается в кодировке контура сим159
Основные методы форматирования текстовых документов
вола в виде прямых и кривых линий. Масштабируемые шрифты обладают рядом значительных преимуществ по сравнению с растровыми. Прежде всего, масштабируемые шрифты допускают большее разнообразие размеров. Масштабируемые шрифты могут использоваться как для вывода текста на экран, так и на принтер. Программа, выводящая изображение символа на принтер, может полностью использовать максимальное разрешение, обеспечив наивысшее качество печати. Технология оформления фрагментов текста позволяет разработчику документа производить форматирование двумя способами: + либо после набора текста; + либо задавать нужные атрибуты оформления до процесса набора. Количество параметров оформления символов отличается в разных программах текстовых процессоров. Стандартными параметрами символьного оформления являются: тип (гарнитура) шрифта; кегль (высота) символов шрифта; начертание литер (полужирный, курсив, полужирный курсив, обычный); подчеркивание; цвет символов; расположение символов относительно опорной линии строки (верхний и нижний индекс). Представители более мощных программ в классе подготовки текстовых документов обеспечивают возможность выделения цветом, различные эффекты (зачеркивание, скрытый текст). Может быть обеспечена операция автоматического кернинга и разрядки для пар символов. Под кернингом понимается настройка интервала между определенными парами символов. Разрядка — операция увеличения межбуквенного пространства для улучшения вида строки текста и выравнивания правых границ строк.
160
Оформление абзацев текстового документа
Оформление абзацев текстового документа Абзац является одним из основных структурных элементов прозаического документа. Обычно новый абзац в тексте образуется при нажатии клавиши [Enter] на клавиатуре при наборе текста. Набор параметров абзацного форматирования, аналогично набору атрибутов символьного форматирования, зависит от конкретной системы подготовки текстовых документов, в среде которой изготавливается текстовый документ. К наиболее общим атрибутам можно отнести задание: + типа выравнивания границ строк, отступов для строк, межстрочных интервалов; + обрамления и цвета фона текста; + расположение текста абзаца на смежных страницах документа. Под выравниванием понимается способ расположения текста абзаца между заданными левой и правой границами текста. Системы подготовки текстовых документов используют четыре способа выравнивания текста абзаца при автоматической верстке строк в процессе набора: влево, вправо, по центру и выключка. Следует отличать абзацы с отступом от левых и правых полей страниц. Полем называется расстояние между текстом и краем страницы. Отступ абзаца определяет расстояние текста от поля. Отступы абзацев позволяют отделить текст одного абзаца от другого или визуально выделить отдельные абзацы в документе. Выделяют отступ первой строки абзаца — для абзацев с «красной» строкой или с «выступом», отступ для последующих строк абзаца слева и справа. Абзац с «выступом» — это абзац, в котором отступ образуется для каждой строки, кроме первой. Межстрочный интервал или интерлиньяж — это расстояние между строками в абзаце. Величина межстрочного интервала задается либо в строках, либо в пунктах для более точной установки. Абзацы можно снабдить линиями обрамления с любой из сторон либо использовать заливку для затенения задне6. Зак. 511
161
Оформление абзацев текстового документа
го плана текста. Существует два способа применения параметров абзацного оформления: + установка атрибутов форматирования до набора текста; + предварительное маркирование абзаца или группы абзацев и установка нужных параметров форматирования для них. Стилевое оформление текста получило свое развитие во всех современных текстовых процессорах, предназначенных для подготовки сложных смешанных текстов. Стиль — описание оформления текста, которое именуется и запоминается в шаблоне, на котором базируется документ. Главное преимущество стилей перед «непосредственным» форматированием заключается в том, что вы можете изменять стандартные атрибуты форматирования встроенных стилей, а также создавать свои собственные стили. Еще одно преимущество стилей — особенно в офисной среде — заключается в том, что используется стандартное оформление документов на основе ранее созданных стилей. Верстка страниц многостраничного документа. Если система подготовки текста используется для создания и оформления многостраничного документа, то в тексте могут появиться новые структурные элементы: колонтитулы, сноски, закладки, перекрестные ссылки. Под закладкой (bookmark), или меткой, понимается определенное место в тексте документа, которому пользователь присваивает имя. В дальнейшем закладка в многостраничном документе может использоваться для: + быстрого перехода к месту документа, обозначенному закладкой; + создания перекрестных ссылок в документе. Иногда по ходу чтения документа необходимы дополнения к основному тексту, подстрочные примечания. Подстрочные примечания оформляют сносками. В состав подстрочного примечания входят два неразрывно связанных элемента: знак сноски и текст собственно примечания. Знак сноски располагают в основном тексте у того 162
Оформление абзацев текстового документа
места, к которому относится примечание и в начале самого примечания. Перекрестная ссылка — это текст, предлагающий читателю документа обратиться к другому фрагменту текста или рисунку, содержащемуся в тексте. Колонтитулом (Running head) называется одинаковый для группы страниц текст (графическое изображение), расположенный вне основного текста документа на полях печатной страницы. Различают верхний (Header) колонтитул, который обычно находится над текстом документа, и нижний (Footer), располагаемый ниже основного текста. Порядковые номера страниц входят в колонтитул. Их называют колонцифрами. Стандартными параметрами оформления страниц документа являются: поля страниц; размер печатного листа и ориентация текста на бумаге; расположение колонтитулов; количество колонок текста (газетный стиль).
Работа с таблицами текстового документа
Работа с таблицами текстового документа Таблица является лучшей формой для наглядности и удобства сопоставления информации. Таблица — перечень сведений, числовых данных, приведенных в определенную систему и разнесенных по графам; сводка, ведомость. Таблицы с информацией текстового характера составляются непосредственно в текстовом редакторе MS Word. Если же таблицы содержат переменные и требуется пересчет цифровых данных, то для их создания используется программа MS Excel или база данных MS Access. Данные из этих приложений импортируются в MS Word с сохранением связей с соответствующей исходной программой, что дает возможность обновлять и редактировать вставленные в документ данные. Существуют следующие обязательные элементы таблицы и порядок их графического расположения: Таблица Тематический заголовок (может и не быть)
Таблицы в тексте (за исключением таблиц приложений) нумеруются арабскими цифрами сквозной нумерацией. Таблица каждого приложения обозначается отдельной нумерацией арабскими цифрами с добавлением перед цифрой обозначения приложения. Таблица может иметь заголовок (название), который кратко, но точно отражает ее содержание. Заголовок пишется над таблицей посредине с прописной буквы. После 164
Работа с таблицами текстового документа
заголовка точка не ставится, Головка таблицы отделяется линией от остальной части таблицы, Помещается таблица сразу под текстом, где она впервые упоминается или на следующей странице, Можно дать таблицу и в приложениях к основному документу. Если строки или графы таблицы не помещаются на формате страницы или она переносится на другую страницу, то ее можно разделить на части, которые помещаются одна под другой. Над каждой последующей частью пишут «Продолжение таблицы ...» или «Окончание таблицы ...», повторяют ее головку и боковик. Заголовки граф и строк таблицы следует писать с прописной буквы, а подзаголовки граф — со строчной буквы, если они составляют одно предложение с заголовком, или с прописной буквы, если они имеют самостоятельное значение. В конце заголовков и подзаголовков таблиц точки не ставят. Заголовки и подзаголовки граф указывают в единственном числе. Не допускается включать в таблицу самостоятельную графу «Номер по порядку». Если есть необходимость пронумеровать показатели, то их порядковый номер ставится в боковике таблицы непосредственно перед наименованием. Перед числовыми значениями величин и обозначениями типов, марок и др. продукции порядковые номера не проставляют. Числовые значения показателя должны проставляться на уровне последней строки наименования показателя. Для этого при работе в Word для числовых данных в таблице устанавливается выравнивание по нижнему краю с помощью кнопок линейки инструментов «Таблицы и границы». При отсутствии данных в таблице ставится прочерк (знак тире). Если в пределах одной графы текст, состоящий из одного слова, повторяется, а в таблице нет горизонтальных линий, это слово заменяется кавычками. Повторяющиеся цифры, математические записи, обозначения марок материалов заменять кавычками не разрешается. 1Ь5
Работа с таблицами текстового документа
Если повторяющийся текст состоит из двух и более слов, при первом повторении пишут слова «То же» и далее ставят кавычки. Так же поступают при повторении части фразы, добавляя дополнительные индивидуальные сведения. Если в таблице строки разделены горизонтальными линиями, текст повторяется полностью. Для создания таблицы в MS Word 2000 в меню «Таблица» выбирается «Добавить» -> «Таблица» и затем задаются необходимые параметры таблицы. Для размещения таблицы может быть задана альбомная ориентация страницы, на которой эта таблица находится. Для этого надо выделить таблицу и задать ориентацию «Альбомная» в меню «Параметры страницы», закладка «Размер бумаги». При этом выделенная часть документа будет считаться отдельным разделом и вначале и конце выделения помещен маркер разрыва раздела. Чтобы избежать накладок в расположении всего документа, рекомендуется оформление таблицы производить после создания всего документа и обратить внимание на корректную нумерацию страниц и расположение колонтитулов. При размещении таблицы на нескольких страницах вверху таблицы повторяются заголовки граф или, если графы пронумерованы — номера граф. В этом случае головка таблицы копируется в колонтитул и автоматически повторяется на всех страницах раздела. Чтобы головка таблицы не выводилась на первой странице документа, в «Параметрах страницы» должна быть установлена опция «Различать колонтитулы первой страницы». Если таблица занимает несколько страниц в середине многостраничного документа, то для того, чтобы колонтитул с головкой таблицы располагался только на страницах с данной таблицей, таблица должна располагаться в отдельном разделе документа. Для этого перед таблицей и после нее вставляется разрыв раздела на текущей странице (команда «Разрыв» находится в меню «Вставка»). Таким образом, головка таблицы будет располагаться только на тех страницах, где это необходимо. 166
Работа с таблицами текстового документа
Кроме того, в меню «Таблица» имеется специальная команда «Заголовки». Если выделить заголовок таблицы и выбрать в меню эту команду, то заголовок автоматически будет повторен на второй и последующих страницах. Нумерация в таблице осуществляется автоматически установкой функции «Нумерованный список» (команда «Список» меню «Формат») для выделенного столбца (ячеек) таблицы. Чтобы каждая строка таблицы была пронумерована только один раз, необходимо отметить опцию «Только один номер в ячейке». В противном случае в ячейках, содержащих несколько абзацев, все абзацы будут пронумерованы» Для лучшего сопоставления текстовой информации она может располагаться в несколько колонок. Фиксированное расположение частей текста на странице относительно друг друга достигается путем его расположения в таблице с невидимыми ячейками. При необходимости такую таблицу можно преобразовать в обычный текст (меню «Таблица», подменю «Преобразовать...», команда «Преобразовать в текст»).
167
Текстовые редакторы
Текстовые редакторы Редакторы документов (текстовые редакторы) — наиболее широко используемый вид офисных программ. Редакторы документов позволяют использовать различные шрифты, их начертания, абзацы произвольной формы, автоматически переносят слова на новую строку, включают рисунки, нумеруют страницы и сноски. Самые мощные редакторы, такие как MS Word, позволяют проверять правописание, набирать тексты в несколько столбцов, вставлять таблицы, диаграммы, строить оглавления и предметные указатели и многое другое. В настоящее время самым распространенным текстовым редактором является MS Word, хотя на старых машинах используется сравнительно простой, но компактный редактор Лексикон. Все эти редакторы работают в режиме WYSIWYG, т.е. «What You See Is What You Get» (это означает примерно следующее: «Что Вы видите, то и получите»). Иными словами, на экране показывается вид реального документа, который будет выглядеть так же и будучи распечатанным на бумаге. Текстовый редактор Лексикон предназначен для обработки несложных документов с текстом на русском и английском языках. Лексикон обеспечивает следующие функции редактирования текстов: + просмотр и корректировку текста; + автоматическое форматирование текста; + автоматическое разбиение текста на страницы; + перенос фрагментов текста из одного места в другое; + создание оглавления разделов документа; + одновременное редактирование нескольких документов. Последующие версии имеют некоторые отличия, в частности: + возможность печати на 24-точечных матричных и на лазерном принтере; 168
Текстовые редакторы
+ поддержка работы с мониторами EGA, VGA и Hercules в графическом режиме; + возможность работы с файлами неограниченной длины; + шрифты для печати верхних и нижних индексов, греческих букв и математических символов; + просмотр результатов печати на экране; + набор текста в несколько колонок. Особенностями Лексикона, отличающими его от других текстовых редакторов, являются: + многооконность (Лексикон имеет 10 окон, в каждом из которых может находиться независимый текст, что позволяет выполнять комплексную обработку сложной системы документации или совокупности программных модулей); + макропоследовательность (макроклавиши) — программирование макрокоманд позволяет определить часто используемые текстовые конструкции или последовательности команд путем одного нажатия клавиши; + калькулятор (встроенный экранный калькулятор позволяет производить вычисления с числами по разным основаниям, вычислять арифметические выражения, использовать элементарные функции). Редактор Word Pad — текстовый редактор, позволяющий создавать и редактировать достаточно длинные тексты. В нем предусмотрена как возможность работы с уже существующими файлами, так и возможность создания новых текстов. Word Pad в состоянии открывать текстовые файлы различных форматов, а также сохранять документы в этих форматах. Для каждого из доступных форматов файлов можно задать свой собственный режим переноса текста и указать управляющие элементы, которые должны присутствовать на экране. Редактор Word Pad не допускает параллельную работу с несколькими файлами: одновременно можно открыть только один файл. Содержимое открытого файла выводится в окне редактора. При этом в заголовке окна ре169
Текстовые редакторы
дактора будет показано имя открытого файла. Имена четырех открытых последними файлов выводятся в конце меню Файл. Любой из этих файлов можно быстро открыть, выполнив щелчок в меню Файл на его имени. После запуска редактора можно сразу приступать к вводу текста нового документа. Microsoft Word — мощный текстовой процессор, предназначенный для выполнения всех процессов обработки текста: от набора и верстки, до проверки орфографии, вставки в текст графики в стандарте *.рсх, *.bmp и т.д., распечатки текста. В одно из многих полезных свойств Word входит автоматическая коррекция текста по границам, автоматический перенос слов и правка правописания слов, сохранение текста в определенный устанавливаемый промежуток времени, наличие шаблонов, позволяющих в считанные минуты создать деловое письмо, факс, автобиографию, расписание, календарь и многое другое. Word обеспечивает поиск заданного слова или фрагмента текста, замену его на указанный фрагмент, удаление, копирование во внутренний буфер или замену по шрифту, гарнитуре или размеру шрифта, а так же по надстрочным или по подстрочным символам. Наличие закладки в тексте позволяет быстро перейти к заложенному месту в тексте. Можно так же автоматически включать в текст дату, время создания, обратный адрес и имя написавшего текст. При помощи макрокоманд Word позволяет включать в текст базы данных или объекты графики, музыкальные модули в формате *.wav. Для ограничения доступа к документу можно установить пароль на текст, который Word будет спрашивать при загрузке текста для выполнения с ним каких-либо действий. Word позволяет открывать много окон для одновременной работы с несколькими текстами, а также разбить одно активное окно по горизонтали на два и выровнять их.
170
ТЕХНОЛОГИЯ ОБРАБОТКИ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ Компьютерная графика Одним из популярных направлений использования персонального компьютера является компьютерная графика. В каждой организации возникает потребность в рекламных объявлениях, листовках, буклетах и т.д. В связи с появлением и развитием Интернета появилась широкая возможность использования графических программных средств. Росту популярности графических программных средств способствовало развитие World Wide Web («всемирной паутины»), которая связала воедино миллионы «домашних страниц». Различают три вида компьютерной графики: растровая графика, векторная графика и фрактальная графика. Они отличаются принципами формирования изображения при отображении на экране монитора или при печати на бумаге. Растровую графику применяют при разработке электронных (мультимедийных) и полиграфических изданий. Иллюстрации, выполненные средствами растровой графики, редко создают вручную с помощью компьютерных программ. Для этой цели сканируют иллюстрации, подготовленные художником на бумаге, или фотографии. В последнее время для ввода растровых изображений в компьютер нашли широкое применение цифровые фото- и видеокамеры. В Интернете пока применяются только растровые иллюстрации. Программные средства для работы с векторной графикой, наоборот, предназначены для создания иллюстраций и в меньшей степени для их обработки. Такие средства широко используют в рекламных агентствах, дизайнерских бюро, редакциях и издательствах. Оформительские работы, основанные на применении шрифтов и простей171
Компьютерная графика
ших геометрических элементов, решаются средствами векторной графики проще. Имеются примеры высокохудожественных произведений, созданных средствами векторной графики, но они скорее исключение, чем правило. Программные средства для работы с фрактальной графикой предназначены для автоматической генерации изображений путем математических расчетов. Создание фрактальной художественной композиции состоит не в рисовании или оформлении, а в программировании. Фрактальную графику чаще используют в развлекательных программах.
172
Растровая графика
Растровая графика В растровой графике основным элементом является точка. При экранном изображение эта точка называется пикселем. Основная проблема и недостаток при использовании растровых изображений — это большие объемы данных. Для работ с большеразмерными иллюстрациями типа журнальной полосы требуются компьютеры с большими размерами оперативной памяти (128 Мбайт и более). Такие компьютеры, естественно, должны при этом иметь и высокопроизводительные процессоры. Вторым недостатком растровых изображений является невозможность их увеличения для рассмотрения деталей. Так как изображение состоит из точек, то увеличение изображения приводит только к тому, что эти точки становятся крупнее. Никаких дополнительных деталей при увеличении растрового изображения рассмотреть не удается. Само увеличение точек растра визуально искажает иллюстрацию и делает ее грубой. Этот эффект называется пикселизацией. Любое изображение, в том числе и трехмерное, состоит из графических примитивов, поэтому необходимо знать специальные методы генерации изображения, вычерчивание прямых и кривых линий, закраски многоугольников, создающей впечатление сплошных объектов. Рассмотрим некоторые из этих методов. Алгоритмы вычерчивания отрезков. Экран дисплея можно рассматривать как матрицу дискретных элементов (пикселей), каждый из которых может быть подсвечен. В связи с этим нельзя непосредственно провести отрезок из одной точки в другую. Процесс определения пикселей, наилучшим образом аппроксимирующих заданный отрезок, называется разложением в растр. Для горизонтальных, вертикальных и наклоненных под углом 45° отрезков выбор растровых элементов очевиден. При любой другой ориентации выбрать нужные пиксели труд173
Растровая графика
нее. Существует несколько алгоритмов выполняющих эту задачу, например, цифровой дифференциальный анализатор и алгоритм Брезенхема. Алгоритм Брезенхема для генерации окружностей. В растр нужно разлагать не только линейные, но и другие, более сложные функции. Разложению конических сечений, т.е. окружностей, эллипсов, парабол, гипербол, посвящено значительное число работ. Наибольшее внимание уделено окружности. Один из наиболее эффективных и простых для понимания алгоритмов генерации окружности принадлежит Брезенхему. Вначале необходимо сгенерировать только одну восьмую часть окружности. Остальные ее части могут быть получены последовательными отражениями. Если сгенерирован первый октант (от 0° до 45° против часовой стрелки), то второй октант можно получить зеркальным отражением относительно прямой у = х, что дает в совокупности первый квадрант. Первый квадрант отражается относительно прямой х = 0 для получения соответствующей части окружности во втором квадранте. Верхняя полуокружность отражается относительно прямой у = 0 для завершения построения. Растровая развертка сплошных областей. Возможность представления сплошных областей в растровом графическом устройстве является его уникальной характеристикой. Генерация сплошных областей из простых описаний ребер или вершин называется растровой разверткой сплошных областей, заполнением многоугольников или заполнением контуров. Для этого можно использовать несколько методов, которые обычно делятся на две широкие категории: растровая развертка и затравочное заполнение. В методах растровой развертки пытаются определить в порядке сканирования строк, лежит ли точка внутри многоугольника или контура. Эти алгоритмы обычно идут от «верха» многоугольника или контура к «низу». В методах затравочного заполнения предполагается, что известна некоторая точка (затравка) внутри замкнутого контура. В алгоритмах ищут точки, соседние с затравочной и расположенные внутри контура. Если соседняя точ174
Растровая графика
ка расположена не внутри, значит, обнаружена граница контура. Если же точка оказалась внутри контура, то она становится новой затравочной точкой и поиск продолжается рекурсивно. Растровая развертка многоугольников. Можно разработать эффективный метод растровой развертки многоугольников, если воспользоваться тем фактом, что соседние пиксели, вероятно, имеют одинаковые характеристики (кроме пикселов граничных ребер). Это свойство называется пространственной когерентностью. Алгоритм с упорядоченным списком ребер. Используя эти методы, можно разработать эффективные алгоритмы растровой развертки сплошных областей, называемые алгоритмами с упорядоченным списком ребер. Эффективность этих алгоритмов зависит от эффективности сортировки. Алгоритм заполнения по ребрам. Алгоритм, использующий список ребер и флаг, является двухшаговым. Первый шаг состоит в обрисовке контура, в результате чего на каждой сканирующей строке образуются пары ограничивающих пикселов. Второй шаг состоит в заполнении пикселов, расположенных между ограничивающими. Алгоритмы заполнения с затравкой. В рассмотренных алгоритмах заполнение происходит в порядке сканирования. Иной подход используется в алгоритмах заполнения с затравкой. В них предполагается, что известен хотя бы один пиксель из внутренней области многоугольника. Алгоритм пытается найти и закрасить все другие пиксели, принадлежащие внутренней области. Области могут быть либо внутренние, либо гранично-определенные. Если область относится к внутренне-определенным, то все пиксели, принадлежащие внутренней части, имеют один и тот же цвет или интенсивность, а все пиксели, внешние по отношению к области, имеют другой цвет. Если область относится к гранично-определенным, то все пиксели на границе области имеют выделенное значение или цвет. Алгоритмы, заполняющие внутренне-определенные области, называются внутренне-заполняющими, а алгоритмы для гранично-определенных областей — гранично-заполняющими. 175
Векторная графика
Векторная графика Как в растровой графике основным элементом изображения является точка, так в векторной графике основным элементом изображения является линия, при этом не важно, прямая это линия или кривая. В растровой графике тоже существуют линии, но там они рассматриваются как комбинации точек. Для каждой точки линии в растровой графике отводится одна или несколько ячеек памяти (чем больше цветов могут иметь точки, тем больше ячеек им выделяется). Соответственно, чем длиннее растровая линия, тем больше памяти она занимает. В векторной графике объем памяти, занимаемый линией, не зависит от размеров линии, поскольку линия представляется в виде формулы, а точнее говоря, в виде нескольких параметров. Чтобы ни делали с этой линией, меняются только ее параметры, хранящиеся в ячейках памяти. Количество же ячеек остается неизменным для любой линии. Линия — это элементарный объект векторной графики. Все, что есть в векторной иллюстрации, состоит из линий. Простейшие объекты объединяются в более сложные, например, объект четырехугольник можно рассматривать как четыре связанные линии, а объект куб еще более сложен: его можно рассматривать либо как двенадцать связанных линий, либо как шесть связанных четырехугольников. Из-за такого подхода векторную графику часто называют объектно-ориентированной графикой. Объекты векторной графики хранятся в памяти в виде набора параметров, но надо помнить о том, что на экран все изображения все равно выводятся в виде точек. Перед выводом на экран каждого объекта программа производит вычисления координат экранных точек в изобра жении объекта, поэтому векторную графику иногда называют вычисляемой графикой. Аналогичные вычисления производятся и при выводе объектов на принтер. 176
Векторная графика
Как и все объекты, линии имеют свойства. К этим свойствам относятся: форма линии, ее толщина, цвет, характер линии (сплошная, пунктирная и т.п.). Замкнутые линии имеют свойство заполнения. Внутренняя область замкнутого контура может быть заполнена цветом, текстурой, картой. Простейшая линия, если она не замкнута, имеет две вершины, которые называются узлами. Узлы тоже имеют свойства, от которых зависит, как выглядит вершина линии и как две линии сопрягаются между собой.
Основные цветовые модели
Основные цветовые модели Модель RGB построена на основе строения глаза. Она идеально удобна для светящихся поверхностей (мониторы, телевизоры, цветные лампы и т.п.). В основе ее лежат три цвета: Red — красный, Green — зеленый и Blue — синий. С помощью этих трех основных цветов можно получить почти весь видимый спектр. Например, желтый цвет — это сложение красного и зеленого. Поэтому RGB называют аддитивной системой смешения цветов. Модель CMY применяется для отражающих поверхностей (типографских и принтерных красок, пленок и т.п.). Ее основные цвета: Cyan — голубой, Magenta — пурпурный и Yellow — желтый, являются дополнительными к основным цветам RGB. Дополнительный цвет — разность между белым и данным, например, желтый = = белый — синий. Поэтому CMY называют субтрактивной системой смешения цветов. Например, при пропускании света через пурпурный объект поглощается зеленая часть спектра, если далее пропустить через желтый объект, то поглотится синяя часть спектра и останется лишь красный цвет. Данный принцип используют светофильтры. Наряду с системой CMY также часто применяют и ее расширение CMYK. Дополнительный канал К (от англ. BlасК) — черный. Он применяется для получения более «чистых» оттенков черного. В цветных принтерах чаще всего используется четыре красителя. Данная система широко применяется в полиграфии. В 1931 г. была принята модель СIE (Commission International de l'Eclairage — Международная комиссия по освещению), в качестве основы которой был выбран двумерный цветовой график и набор из трех функций реакции глаза, исключающий отрицательные области и удобный для обработки. Гипотетические цвета CIE — X, Y и Z. Треугольник XYZ задан так, что в него входит видимый спектр. Комиссия решила ориентировать треуголь178
Основные цветовые модели
ник XYZ таким образом, что равные количества гипотетических основных цветов XYZ давали в сумме белый. В 1953 г. была разработана модель YIQ:
В канале Y яркость подобрана так, что она соответствует цветовой чувствительности глаза. Канал I соответствует цветам от голубого до оранжевого (теплым тонам). Канал Q — от зеленого до пурпурного. В качестве опорного белого был взят источник с температурой 6500 К. Модель HSV. В цвете можно выделить его тон — преобладающий основной цвет (длину волны, преобладающей в излучении), насыщенность цвета — чем она больше, тем «чище» цвет (то есть ближе к тоновой волне), например, у белого цвета — насыщенность = 0, так как невозможно выделить его цветовой тон, яркость (у черного цвета = 0, у белого = 1). Таким образом, можно построить трехмерное цветовое пространство HSV — Hue, Saturation, Volume (Тон, Насыщенность и Яркость). Обычно его представляют в виде конуса. Начало координат — вершина конуса — черный цвет. Высота, направленная к основанию, — яркость. Точка пересечения высоты с основанием — белый цвет. На высоте находятся оттенки серого цвета — от черного (вершина конуса) к белому. На окружности, ограничивающей основание конуса, находятся чистые цветовые тона: от красного (0 рад), через зеленый (2л/3 рад), к синему (4л/3 рад). Радиус конуса — насыщенность цвета. HSV часто представляют и в виде шестигранного конуса, у которого в основании лежит правильный шестиугольник с вершинами, соответствующими следующим цветам: красный, желтый, зеленый, голубой, синий, пурпурный.
179
Цветовая палитра
Цветовая палитра Цветовая палитра — это таблица данных с информацией о коде закодированного цвета. Эта таблица создается и хранится вместе с графическим файлом. Самый удобный для компьютера и самый распространенный способ кодирования цвета — 24-разрядный, True Color. В этом режиме на кодирование каждой цветовой составляющей R (красной), G (зеленой) и В (синей) отводится по одному байту (8 битов). Яркость каждой составляющей выражается числом от 0 до 255, и любой цвет из 16,5 миллионов компьютер может воспроизвести по трем кодам. В этом случае цветовая палитра не нужна, поскольку в трех байтах и так достаточно информации о цвете конкретного пикселя. Сложнее обстоит дело, когда изображение имеет только 256 цветов, кодируемых одним байтом. В этом случае каждый цветовой оттенок представлен одним числом, причем это число выражает не цвет пикселя, а индекс цвета (его номер). Сам же цвет разыскивается по этому номеру в сопроводительной цветовой палитре, приложенной к файлу. Такие цветовые палитры называют индексными палитрами. Разные изображения могут иметь разные цветовые палитры. В тех случаях, когда цвет изображения закодирован двумя байтами (режим High Color), на экране возможно изображение 65 тысяч цветов. В таком изображении каждый двухбайтный код тоже выражает какой-то цвет из общего спектра. Но в данном случае нельзя приложить к файлу индексную палитру, в которой было бы записано, какой код какому цвету соответствует, поскольку в этой таблице было бы 65 тысяч записей, и ее размер составил бы сотни тысяч байтов. Нет смысла прикладывать к файлу таблицу, которая может быть по размеру больше самого файла. В этом случае используют понятие фиксированной палитры. Ее не надо прикладывать к файлу, поскольку в любом графическом файле, имеющем шестнад180
Цветовая палитра
цатиразрядное кодирование цвета, один и тот же код всегда выражает один и тот же цвет. Термин «безопасная палитра» используют в Web-графике. Скорость передачи данных в Интернете пока оставляет желать лучшего, для оформления Web-страниц не применяют графику, имеющую кодирование цвета выше 8-разрядного. При этом возникает проблема, связанная с тем, что создатель Web-страницы не имеет ни малейшего понятия о том, на какой модели компьютера и под управлением каких программ будет просматриваться его произведение. Он не уверен, не превратится ли его «зеленая елка» в красную или оранжевую на экранах пользователей. Поэтому все наиболее популярные программы для просмотра Web-страниц (браузеры) заранее настроены на некоторую одну фиксированную палитру. В этой палитре не 256 цветов, как можно было бы предположить, а лишь 216. Это связано с тем, что в Интернете работают люди с разными компьютерами, а не только с IBM PC, и не все компьютеры могут воспроизводить 256 цветов. Такая фиксированная палитра, жестко определяющая индексы для кодирования 216 цветов, называется безопасной палитрой.
181
Форматы файлов растровой графики
Форматы файлов растровой графики Файлы растровых изображений отличаются многообразием форматов (несколько десятков). У каждого формата есть свои положительные качества, определяющие целесообразность его использования при работе с теми или иными приложениями. Для операционной системы Windows наиболее характерным является формат Windows Bitmap. Файлы этого формата имеют расширение .Bтр. Данный формат отличается универсальностью, и де-факто является стандартным для приложений Windows. Если графическая программа предназначена для работы в системе Windows, она не может не иметь возможности экспортировать или импортировать файлы этого формата. Характерным недостатком формата Windows Bitmap является большой размер файлов из-за отсутствия сжатия изображения. В последнее время появились разновидности формата .Bтр, обладающие свойством сжатия информации, но эти форматы поддерживаются не всеми приложениями Windows. Для Web-документов, циркулирующих в сети Интернет, важен размер файлов, поскольку от него зависит скорость доступа к информации. Поэтому при подготовке Web-страниц используют два вида графических форматов, обеспечивающих наиболее плотное сжатие. Для хранения многоцветных нерегулярных изображений (фотографий) используют формат JPEG, файлы которого имеют расширение Jpg. Этот формат отличается тем, что обеспечивает хранение данных с огромной степенью сжатия, но за счет потери части информации. Если файл был записан в формате Jpg, то после распаковки полученный файл может не соответствовать исходному, хотя на таких иллюстрациях, как цветные фотографии, это малозаметно. Величиной потери информации можно управлять при сохранении файла. 182
Форматы файлов растровой графики
Кроме формата JPEG, в Интернете используют формат GIF. Это самый «плотный» из графических форматов, не имеющих потери информации, файлы этого формата имеют расширение .gif. В этом формате хранятся и передаются малоцветные изображения, например рисованные иллюстрации. У формата GIF есть интересные особенности, позволяющие создавать необычные эффекты: прозрачность фона и анимацию изображения. Особые требования к качеству изображений предъявляются в полиграфии. В этой области применяется специальный формат TIFF. Файлы этого формата имеют расширение tif, Они обеспечивают неплохую степень сжатия и возможность сохранять в одном файле дополнительную информацию в невидимых вспомогательных слоях — каналах. Так, в стандартной программе Imaging, входящей в состав Windows 98, наиболее интересные возможности по наложению аннотаций и примечаний на рисунок реализуются только при работе с изображениями, имеющими формат TIFF. В других перечисленных форматах нельзя создать слой для хранения информации, не относящейся непосредственно к изображению.
183
Программы для работы с растровой графикой
Программы для работы с растровой графикой Средства создания изображений
Ряд графических редакторов, например, Painter и Fauve Matisse, ориентирован непосредственно на процесс рисования. В них акцент сделан на использование удобных инструментов рисования и на создание новых художественных инструментов и материалов. К простейшим программам этого класса относится также графический редактор Paint. Средства обработки изображений
Другой класс растровых графических редакторов предназначен не для создания изображений "с нуля", а для обработки готовых рисунков с целью улучшения их качества и реализации творческих идей. К таким программам, в частности, относятся Adobe Photoshop, Photostyler, Picture Publisher и др. Исходная информация для обработки на компьютере может быть получена разными путями: сканированием цветной иллюстрации, загрузкой изображения, созданного в другом редакторе, или вводом изображения от цифровой фото- или видеокамеры. При создании художественных композиций отдельные фрагменты часто заимствуют из библиотек изображений-клипартов, распространяемых на компакт-дисках. Основа будущего рисунка или его отдельные элементы могут быть созданы и в векторном графическом редакторе, после чего их экспортируют в растровом формате. Для работы с изображениями, записанными на CD или принятыми от цифровой фотокамеры, в операционной системе Windows 98 есть удобное приложение Picture It! Оно предназначено для обработки изображений (регулировка яркости и контрастности, художественная ретушь, устранение эффекта «красного глаза») и их каталогизации. 184
Программы для работы с растровой графикой Средства каталогизации изображений
Особый класс программ для работы с растровыми изображениями представляют программы-каталогизаторы. Они позволяют просматривать графические файлы множества различных форматов, создавать на жестком диске удобные альбомы, перемещать и переименовывать файлы, документировать и комментировать иллюстрации. Удобной программой этого класса считается программа ACDSee 32. В Windows 95 для этих целей служит стандартная программа Просмотр рисунков. В Windows 98 в качестве стандартной введена ее более мощная версия — Imaging.
185
Программы для работы с векторной графикой
Программы для работы с векторной графикой Если основным требованием к изображению является высокая точность формы, то применяют специальные графические редакторы, предназначенные для работы с векторной графикой. Такая задача возникает при разработке логотипов компаний, при художественном оформлении текста (например, журнальных заголовков или рекламных объявлений), а также во всех случаях, когда иллюстрация является чертежом, схемой или диаграммой, а не рисунком. Adobe Illustrator 7.0 является общепризнанным мировым лидером среди средств векторной графики. Ее особое достоинство состоит в том, что вместе с программами Adobe Photoshop и PageMaker она образует законченное трио приложений, достаточных для выполнения компьютерной верстки полиграфических изданий и разработки сложных документов. Эти приложения выполнены в едином стиле, используют похожие интерфейсы и инструменты, позволяют применять одинаковые приемы и навыки и безошибочно экспортируют и импортируют созданные объекты между собой. Дополнительным преимуществом Adobe Illustrator 7.0 является тот факт, что этот векторный редактор имеет версию на русском языке. Macromedia Freehand 8.0 — очень удобный векторный редактор. Программа отличается простотой системы управления и высоким быстродействием. С ее помощью можно работать на таких компьютерах, на которых использование других средств векторной графики превращается в мучительный процесс. Несмотря на простоту системы управления, инструментальные средства Macromedia Freehand достаточны для разработки весьма сложных документов и лишь на высоком уровне сложности уступают средствам Adobe Illustrator и CorelDraw. Программу Macromedia Freehand удобно использовать при работе с любыми системами компьютерной верстки, но специально она адаптирована для системы QuarkXPress. 186
Программы для работы с векторной графикой
CorelDraw (версии от 5.0 до 8.0). Редакторы векторной графики Adobe Illustrator и Macromedia Freehand довольно долго (до 1995 г.) оставались единственными средствами для работы на компьютерах Macintosh. Их развитие на платформе IBM PC отставало от необходимых требований, поэтому на этой платформе исторически сложилось преимущество редактора CorelDraw, особенно в России, где в отличие от прочих стран развитие платформы IBM PC значительно опережает платформу Macintosh. В настоящее время положение выравнивается. И Adobe Illustrator, и Macromedia Freehand имеют мощные и надежные версии для IBM PC, и популярность CorelDraw постепенно снижается. К преимуществам этого редактора относят развитую систему управления и богатство средств настройки инструментов. Наиболее сложные композиции, близкие к художественным произведениям, получают средствами именно этого редактора. В CorelDraw система управления сложнее, чем в других векторных редакторах, и интерфейс не столь интуитивен. Изучение CorelDraw представляет более сложную задачу, чем изучение Adobe Illustrator или Macromedia Freehand.
187
X
ТЕХНОЛОГИЯ ОБРАБОТКИ ЧИСЛОВОЙ ИНФОРМАЦИИ Табличные процессоры (электронные таблицы): назначение и основные возможности
Табличный процессор (электронная таблица) — прикладная программа, позволяющая автоматизировать труд экономистов, бухгалтеров и др., которым приходится работать с информацией, представленной в виде разнообразных таблиц. Табличные редакторы появились практически одновременно с появлением персональных компьютеров, когда появилось много простых пользователей не знакомых с основами программирования. Первым табличным редактором, получившим широкое распространение, стал Lotus 1-2-3, который является стандартом для табличных редакторов, а именно: 1) структура таблицы (пересечения строк и столбцов создают ячейки, куда заносятся данные); 2) стандартный набор математических и бухгалтерских функций; 3) возможности сортировки данных; 4) наличие средств визуального отображения данных (диаграмм). Табличный процессор обеспечивает работу с большими таблицами чисел. При работе с табличным процессором на экран выводится прямоугольная таблица, в клетках которой могут находиться числа, пояснительные тексты и формулы для расчета значений в клетке по имеющимся данным. Табличные процессоры имеют обычно следующие возможности: + создание и редактирование электронных таблиц; + создание многотабличных документов; + оформление и печать электронных таблиц; + построение диаграмм, их модификация и решение экономических задач графическими методами; 188
Табличные процессоры: (электронные таблицы) назначение и...
+ создание многотабличных документов, объединенных формулами; + работа с электронными таблицами как с базами данных: сортировка таблиц, выборка данных по запросам; + создание итоговых и сводных таблиц; + использование при построении таблиц информации из внешних баз данных; + создание слайд-шоу; + решение оптимизационных задач; + решение экономических задач типа «что — если» путем подбора параметров; + разработка макрокоманд, настройка среды под потребности пользователя; и т.д. Наиболее известные электронные таблицы: Microsoft Excel, Lotus 1-2-3, SuperCalc и Quattro Pro.
189
Основные объекты в табличных процессорах
в
Основные объекты табличных процессорах
Любая таблица состоит из строк и столбцов. Как правило, строки нумеруются цифрами 1, 2, 3 и т.д., а столбцам присваивается соответствие латинскому алфавиту А, В, С и т.д. Причем, когда алфавит заканчивается, за Z следует АА, АВ, АС и т.д. Пересечение строк и столбцов образует ячейки, каждая ячейка имеет адрес, который обозначается именем столбца и номером строки. Например Е7. Ячейка — это основной элемент электронной таблицы, только в ней может содержаться какая-либо информация (текст, значения, формулы). Например, Microsoft Excel имеет следующую структуру ячейки: + 1-й уровень содержит видимое на экране изображение (т.е. отформатированный текст) или результат вычисления формулы; + 2-й уровень содержит форматы ячейки (формат чисел, шрифты, выключатель (включатель), вид рамки, защита ячейки); + 3-й уровень содержит формулу, которая может состоять из текста, числа или встроенных функций; + 4-й уровень содержит имя ячейки, это имя может использоваться в формулах других ячеек, при этом обеспечивается абсолютная адресация данной ячейки; + 5-й уровень содержит примечания данной ячейки (произвольный текст). Если ячейка содержит примечание, то в правом верхнем углу появляется красный квадратик (точка). В ячейки заносятся данные. В дальнейшем при обращении к этим данным всегда идет ссылка на адрес ячейки, где они расположены. Данные, которые нельзя определить по другим ячейкам таблицы, называются основными. Данные, определяемые по значениям других ячеек таблицы при помощи вычислений, называются производными. Ссылка однозначно определяет ячейку или группу ячеек рабочего листа. Ссылки указывают, в каких ячейках 190
Основные объекты в табличных процессорах
находятся значения, которые нужно использовать в качестве аргументов формулы. С помощью ссылок можно использовать в формуле данные, находящиеся в различных местах рабочего листа, а также использовать значение одной и той же ячейки в нескольких формулах. Можно также ссылаться на ячейки, находящиеся на других листах рабочей книги, в другой рабочей книге, или даже на данные другого приложения. Ссылки на ячейки других рабочих книг называются внешними. Ссылки на данные в других приложениях называются удаленными. Имя — это легко запоминающийся идентификатор, который можно использовать для ссылки на ячейку, группу ячеек, значение или формулу.
191
Абсолютная и относительная адресация ячеек
Абсолютная и относительная адресация ячеек У каждой ячейки есть свой адрес. Он однозначно определяется номерами столбца и строки, то есть именем ячейки. Если в ячейку была введена формула, то после этого можно ее перенести, скопировать или распространить на блок ячеек. При перемещении формулы в новое место таблицы ссылки в формуле не изменяются, а ячейка, где раньше была формула, становится свободной. При копировании формула перемещается в другое место таблицы, ссылки изменяются, но ячейка, где раньше находилась формула, остается без изменения. При копировании формул возникает необходимость управлять изменением адресов ячеек или ссылок. Для этого перед символами адреса ячейки или ссылки устанавливаются символы «$». Изменяются только те атрибуты адреса ячейки, перед которыми не стоит символ «$». Если перед всеми атрибутами адреса ячейки поставить символ «$», то при копировании формулы ссылка не изменится. Например, если в записи формулы ссылку на ячейку D7 записать в виде $D7, то при перемещении формулы будет изменяться только номер строки «7». Запись D$7 означает, что при перемещении будет изменяться только символ столбца «D». Если же записать адрес в виде $D$7, то ссылка при перемещении формулы на этот адрес не изменится и в расчетах будут участвовать данные из ячейки D7. Если в формуле указан интервал ячеек G3:L9, то управлять можно каждым из четырех символов: «G», «3», «L» и «9», помещая перед ними символ «$». Если в ссылке используются символы $, то она называется абсолютной, если символов $ нет — относительной. Адреса таких ссылок называются абсолютными и относительными, соответственно. Абсолютные адреса при перемещении формул не изменяются, а в относительных адресах происходит смещение на величину переноса. 192
Формулы и функции
Формулы и функции Формулы и функции в табличных процессорах рассмотрим на примере табличного процессора Microsoft Excel. Формулой в Microsoft Excel называется последовательность символов, начинающаяся со знака равенства " = ". В эту последовательность символов могут входить постоянные значения, ссылки на ячейки, имена, функции или операторы. В MS Excel можно складывать, умножать, делить числа, извлекать квадратные корни, вычислять синусы и косинусы, логарифмы и экспоненты. Помимо вычислительных действий с отдельными числами, можно обрабатывать отдельные строки или столбцы таблицы, а также целые блоки ячеек. В частности, находить среднее арифметическое, максимальное и минимальное значение, средне-квадратичное отклонение, наиболее вероятное значение, доверительный интервал и многое другое. Результатом работы формулы является новое значение, которое выводится как результат вычисления формулы по уже имеющимся данным. Если значения в ячейках, на которые есть ссылки в формулах, меняются, то результат изменится автоматически. Функции в MS Excel используются для выполнения стандартных вычислений в рабочих книгах. Значения, которые используются для вычисления функций, называются аргументами. Значения, возвращаемые функциями в качестве ответа, называются результатами. Чтобы использовать функцию, нужно ввести ее как часть формулы в ячейку рабочего листа. Последовательность, в которой должны располагаться используемые в формуле символы, называется синтаксисом функции. Все функции используют одинаковые основные правила синтаксиса. Если функция появляется в самом начале формулы, ей должен предшествовать знак равенства, как и во всякой другой формуле. Аргументы функции записываются в круглых скобках сразу за названием функции и отделяются друг от
Формулы и функции
друга символом точка с запятой «;». Скобки позволяют MS Excel определить, где начинается и где заканчивается список аргументов. Внутри скобок должны располагаться аргументы. В качестве аргументов можно использовать числа, текст, логические значения, массивы, значения ошибок или ссылки. Аргументы могут быть как константами, так и формулами. В свою очередь, эти формулы могут содержать другие функции. Функции, являющиеся аргументом другой функции, называются вложенными. В формулах MS Excel можно использовать до семи уровней вложенности функций. Задаваемые входные параметры должны иметь допустимые для данного аргумента значения. Некоторые функции могут иметь необязательные аргументы, которые могут отсутствовать при вычислении значения функции. Для удобства работы функции в MS Excel разбиты по категориям: 1) функции управления базами данных и списками; 2) функции даты и времени; 3) DDE/Внешние функции; 4) инженерные функции; 5) финансовые; 6) информационные; 7) логические; 8) функции просмотра и ссылок; 9) статистические; 10) текстовые; 11) математические.
19
Построение диаграмм
77. Построение диаграмм Диаграмма (от греч. diagramma — изображение, рисунок, чертеж) — графическое изображение, наглядно показывающее соотношение каких-либо величин. Распространенным вариантом диаграммы является гистограмма (от греч. histos, здесь — столб и ...грамма), то есть столбчатая диаграмма, один из видов графического изображения статистических распределений какой-либо величины по количественному признаку. Гистограмма представляет собой совокупность смежных прямоугольников, построенных на одной прямой: площадь каждого из них пропорциональна частоте нахождения данной величины в интервале, на котором построен весь данный прямоугольник. Рассмотрим построение диаграмм в самом распространенном на сегодняшний день табличном процессоре Microsoft Excel. MS Excel предоставляет большой набор возможностей по графическому представлению данных. Имеется возможность выбора из различных типов диаграмм, причем каждый тип диаграмм имеет несколько разновидностей (подтипов). Диаграммы можно строить либо на рабочем листе таблицы, либо на новом рабочем листе. Создать диаграмму в MS Excel можно по шагам с помощью мастера диаграмм, вызов которого осуществляется с панели инструментов диаграмм. Мастер диаграмм предоставляет широкий выбор различных типов диаграмм. При использовании мастера диаграмм можно просмотреть любой тип диаграммы и выбрать наиболее удачный для данной таблицы. Внедренная на рабочий лист диаграмма может находиться в трех режимах: + просмотра, когда диаграмма выделена по периметру прямоугольником; + перемещения, изменения размера и удаления, когда диаграмма по периметру выделена прямоугольником с маленькими квадратиками;
Построение диаграмм
+ редактирования, когда диаграмма выделена по периметру синим цветом или синим цветом выделен заголовок. Переход между режимами осуществляется щелчком мыши. Для выхода из любого режима достаточно щелкнуть мышью вне диаграммы. В построенную диаграмму можно вносить различные изменения: менять ее тип, изменять текст и шрифты, добавлять и удалять данные, метки и т.д. В зависимости от типа диаграммы можно выделять и форматировать различные ее части. С помощью панели диаграмм можно очень просто выполнять ряд операций с графиками: убирать (размещать) сетку, убирать (размещать) легенды, изменять тип графика. Кроме изменения внешнего вида диаграммы, можно добавлять и удалять исходные данные, по которым построена диаграмма. Применение данных в виде диаграмм позволяет не только наглядно представить числовые данные, но и осуществить анализ этих данных по нескольким направлениям. Для наглядного показа тенденции изменения некоторой переменной целесообразно на график вывести линию тренда. Однако это возможно не для всех типов диаграмм. Введенная линия тренда сохраняет связь с исходным рядом, то есть при изменении данных соответственно изменяется линия тренда. Кроме того, линию тренда можно использовать для прогноза данных. Для одного и того же ряда данных можно построить несколько трендов и вывести их уравнения на график. Данные измерений всегда содержат ошибку. При графическом построении таких данных иногда есть необходимость отразить величину этой ошибки на диаграмме в виде планок погрешностей. Пользователю предоставляется несколько различных вариантов для вывода планок погрешностей. Изменение данных в таблице естественно приводит к изменению диаграмм и наоборот. Если на диаграмме изменять значение, вычисляемое по формуле, то следует определить, какую зависимую ячейку надо изменять для достижения требуемого значения.
Табличный процессор Microsoft Excel
Табличный процессор Microsoft Excel Microsoft Excel — средство для работы с электронными таблицами, намного превышающее по своим возможностям существующие редакторы таблиц. Первая версия данного продукта была разработана фирмой Microsoft в 1985 г. Microsoft Excel — это простое и удобное средство, позволяющее проанализировать данные и, при необходимости, проинформировать о результате заинтересованную аудиторию, используя Internet. Достоинства табличного процессора Microsoft Excel: + эффективный анализ и обработка данных: • мастер сводных таблиц позволяет быстро обрабатывать большие массивы данных и получать итоговые результаты в удобном виде; • механизм автокоррекции формул автоматически распознает и исправляет ошибки при введении формул; • использование естественного языка при написании формул; • проведение различных вычислений с использованием мощного аппарата функций и формул; • исследование влияния различных факторов на данные; • решение задач оптимизации; • получение выборки данных, удовлетворяющих определенным критериям; • построение графиков и диаграмм; • статистический анализ данных; + богатые средства форматирования и отображения данных: • возможность слияния ячеек в электронной таблице, поворот текста в ячейке на любой угол, начертание текста в ячейке с отступом; • более удобный и мощный мастер создания диаграмм; + наглядная печать. Microsoft Excel обеспечивает предварительный просмотр границ печатаемой об197
Табличный процессор Microsoft Excel
ласти. После включения режима отображения границ печатаемых областей поверх таблицы появляется сетка, которая показывает, какая часть таблицы будет напечатана на какой странице; + совместное использование данных и работа над документами. Несколько разных пользователей могут одновременно работать с одной и той же таблицей и документировать внесенные изменения; + обмен данными и информацией через Internet и внутренние сети: • Microsoft Excel содержит встроенные функции, позволяющие легко помещать на Web-сервер и забирать с него документы, созданные в среде Microsoft Excel; • Microsoft Excel позволяет импортировать данные из HTML-документов, найденных на Web-сервере, восстанавливая при этом формат и оформление таблицы; • в Microsoft Excel имеется операция создания запроса к данным, хранящимся на Web-сервере. Можно создать постоянную ссылку на страницу в Internet и данные в таблице будут обновляться автоматически. Возможности Microsoft Excel: + справка и помощник по работе с электронными таблицами помогает пользователям научиться эффективной работе с электронными таблицами; + удобный ввод формул позволяет писать уравнения, пользуясь простой терминологией. В формулах вместо ссылок на ячейки можно использовать названия колонок и рядов, что облегчает создание и понимание вычислений; + просмотр макета страницы предоставляет возможность задать точное расположение информации на каждой печатной странице; + заказные ячейки позволяют «проникнуть за сетку» обычной электронной таблицы, чтобы данные выглядели согласно требованиям пользователя; 198
Табличный процессор Microsoft Excel
+ упрощенный контроль изменений — выделяются изменения, внесенные другими пользователями; + возможность вставки гиперссылки во все документы Microsoft Excel для доступа к нужным документам независимо от их местонахождения; + открытие из URL — можно открывать файлы Excel или HTML из HTTP- и FTР-серверов; + публикация в режиме «online» (запись в URL) облегчает размещение тетрадей Excel на HTTP- и FTP-cepверах; + возможность работы с HTML-документами; + наличие среды разработки Visual Basic (VBE), совместимой со средой Visual Basic 5=0; + удобный мастер диаграмм — расположение всех параметров графиков в одном месте ускоряет их создание и редактирование; + тетради коллективного пользования — возможность одновременного открытия одного документа, не получая сообщения «файл уже открыт»; + сохранение в гипертекстовом формате (HTML) — возможность автоматически преобразовывать свои таблицы, созданные при помощи программы Excel, в HTML-формат; + просмотр документов Excel — возможность публиковать документы Excel так, чтобы их могли просматривать и те, у кого нет программы Excel.
199
Табличные процессоры Quattro и SuperCalc
Табличные процессоры Quattro Pro и SuperCalc Среди имеющихся электронных таблиц для DOS программа Quattro Pro — лучшая. Табличный процессор Quattro Pro обладает рядом достоинств: + удобный пользовательский интерфейс, дающий возможность предоставления данных в самой нестандартной форме; + многооконный режим работы; + доступ к любым неограниченным по размерам внешним базам данных, созданных на основе наиболее популярных систем управления базами данных (СУБД); + хорошее качество печати входных документов; + легкость создания программы обработки информации в таблицах, удобные средства отладки и редактирования созданных программ и т.д. Одной из отличительных особенностей процессора Quattro Pro являются аналитические графики, которые позволяют применять к исходным данным агрегирование, вычислять скользящее среднее и проводить регрессионный анализ; результаты перечисленных действий отражаются на графиках. Набор встроенных функций в пакете Quattro Pro включает в себя все стандартные функции. Quattro Pro включает программы линейного и нелинейного программирования. Оптимизационную модель можно записать на рабочий лист и работать с нею. Кроме обычных команд работы с базами данных, Quattro Pro умеет читать внешние базы в форматах Paradox, dBase и Reflex, и искать в них нужную информацию. SuperCalc — это один из пакетов прикладных программ. Основное применение SuperCalc — выполнение расчетов. Однако в силу своей гибкости он позволяет решать большинство финансовых и административных задач: 1) прогнозирование продаж, роста доходов; 2) анализ процентных ставок и налогов; 3) учет денежных че-
Табличные процессоры Quattro и SuperCalc
ков; 4) подготовка финансовых деклараций и балансовых таблиц; 5) бюджетные и статистические расчеты; 6) объединение таблиц; 7) сметные калькуляции. SuperCalc выполняет арифметические, статистические, логические, специальные функции. Он имеет дополнительные возможности: поиск и сортировка в таблицах. SuperCalc имеет довольно большие графические возможности, позволяя строить на экране семь видов диаграмм и графиков, облегчая тем самым труд пользователя. При работе в SuperCalc выделяют три основных режима работы: + режим электронной таблицы. Здесь активен только табличный курсор. Редактирующий курсор неподвижен и находится в исходной позиции строки ввода; + режим ввода. Он устанавливается автоматически, с началом работы на клавиатуре; + командный режим устанавливается несколькими способами. Наиболее распространенный способ — перед набором команды нажимается команда с символом «\».
201
XI
ЛОКАЛЬНЫЕ И ГЛОБАЛЬНЫЕ СЕТИ ЭВМ
Базовая модель OSI (Open System Interconnection) Международная организация по стандартизации (ISO — International Standards Organization) разработала единое представление данных в линиях связи, по которым передается информация. ISO разработала базовую модель взаимодействия открытых систем (Open Systems Interconnection) (OSI). Эта модель является международным стандартом для передачи данных и содержит семь отдельных уровней. Уровень 1: физический — битовые протоколы передачи информации. На физическом уровне определяются электрические, механические, функциональные и процедурные параметры для физической связи в системах. Физическая связь и неразрывная с ней эксплуатационная готовность являются основной функцией 1-го уровня. Уровень 2: канальный — формирование кадров, управление доступом к среде. Канальный уровень формирует из данных, передаваемых 1-м уровнем, так называемых «кадров», последовательности кадров. На этом уровне осуществляется управление доступом к передающей среде, используемой несколькими ЭВМ, синхронизация, обнаружение и исправление ошибок. Уровень 3: сетевой — маршрутизация, управление потоками данных. Сетевой уровень устанавливает связь в вычислительной сети между двумя абонентами. Соединение происходит благодаря функциям маршрутизации, которые требуют наличия сетевого адреса в пакете. Сетевой уровень должен также обеспечивать обработку ошибок, мультиплексирование, управление потоками данных. Самый известный стандарт, относящийся к этому уровню, — рекомендация Х.25 МККТТ (для сетей общего пользования с коммутацией пакетов). 202
Базовая модель OSI (Open System Interconnection)
Уровень 4: транспортный — обеспечение взаимодействия удаленных процессов. Транспортный уровень поддерживает непрерывную передачу данных между двумя взаимодействующими друг с другом пользовательскими процессами. Качество транспортировки, безошибочность передачи, независимость вычислительных сетей, сервис транспортировки из конца в конец, минимизация затрат и адресация связи гарантируют непрерывную и безошибочную передачу данных. Уровень 5: сеансовый — поддержка диалога между удаленными процессами. Сеансовый уровень координирует прием, передачу и выдачу одного сеанса связи. Для координации необходимы контроль рабочих параметров, управление потоками данных промежуточных накопителей и диалоговый контроль, гарантирующий передачу имеющихся в распоряжении данных. Кроме того, сеансовый уровень содержит дополнительно функции управления паролями, управления диалогом, синхронизации и отмены связи в сеансе передачи после сбоя вследствие ошибок в нижерасположенных уровнях. Уровень 6: представительский — интерпретация передаваемых данных. Уровень представления данных предназначен для интерпретации данных, а также подготовки данных для пользовательского прикладного уровня. На этом уровне происходит преобразование данных из кадров, используемых для передачи данных в экранный формат или формат для печатающих устройств конечной системы. Уровень 7: прикладной — пользовательское управление данными. В прикладном уровне необходимо предоставить в распоряжение пользователей уже переработанную информацию. С этим может справиться системное и пользовательское прикладное программное обеспечение. Основная идея модели OSI заключается в том, что каждому уровню отводится конкретная роль, в том числе и транспортной среде. Благодаря этому, общая задача передачи данных расчленяется на отдельные легко обозримые задачи. Необходимые соглашения для связи одного уровня с выше- и нижерасположенным называют протоколом. 203
Базовая модель OSI (Open System Interconnection)
Отдельные уровни базовой модели проходят в направлении вниз от источника данных (от уровня 7 к уровню 1) и в направлении вверх от приемника данных (от уровня 1 к уровню 7). Пользовательские данные передаются в нижерасположенный уровень вместе со специфическим для уровня заголовком до тех пор, пока не будет достигнут последний уровень. Для передачи информации по коммуникационным линиям данные преобразуются в цепочку следующих друг за другом битов (двоичное кодирование с помощью двух состояний: «О» и «1»). Передаваемые алфавитно-цифровые знаки представляются с помощью битовых комбинаций. Битовые комбинации содержат 4-, 5-, 6-, 7- или 8-битовые коды. Количество представленных знаков в коде зависит от количества битов: код из четырех битов может представить максимум 16 значений, 5-битовый код — 32 значения, 6-битовый код — 64 значения, 7-битовый — 128 значений и 8-битовый код — 256 алфавитно-цифровых знаков. При передаче информации между одинаковыми вычислительными системами и различающимися типами компьютеров применяют следующие коды: + на международном уровне передача символьной информации осуществляется с помощью 7-битового кодирования, позволяющего закодировать заглавные и строчные буквы английского алфавита, а также некоторые спецсимволы; + национальные и специальные знаки с помощью 7-битового кода представить нельзя. Для представления национальных знаков применяют наиболее употребляемый 8-битовый код. Для правильной и, следовательно, полной и безошибочной передачи данных необходимо придерживаться согласованных и установленных правил. Все они оговорены в протоколе передачи данных, который требует следующей информации: 1) синхронизация; 2) инициализация; 3) блокирование; 4) адресация; 5) обнаружение ошибок; 6) нумерация блоков; 7) управление потоком данных; 8) методы восстановления; 9) разрешение доступа. 204
Топологии вычислительной сети
Топологии вычислительной сети Топология типа звезда Концепция топологии сети в виде звезды пришла из области больших ЭВМ, в которой головная машина получает и обрабатывает все данные с периферийных устройств как активный узел обработки данных. Вся информация между двумя периферийными рабочими местами проходит через центральный узел вычислительной сети.
Л
Файловый сервер
ТОПОЛОГИЯ сети в виде звезды
Пропускная способность сети определяется вычислительной мощностью узла и гарантируется для каждой рабочей станции. При расширении вычислительных сетей не могут быть использованы ранее выполненные кабельные связи: к новому рабочему месту необходимо прокладывать отдельный кабель из центра сети. Топология в виде звезды является наиболее быстродействующей из всех топологий вычислительных сетей. Передача данных между рабочими станциями проходит через центральный узел по отдельным линиям, используемым только этими рабочими станциями. Частота запросов пе205
Топологии вычислительной сети
редачи информации от одной станции к другой невысокая по сравнению с достигаемой в других топологиях. Производительность вычислительной сети в первую очередь зависит от мощности центрального файлового сервера. Он может быть узким местом вычислительной сети. В случае выхода из строя центрального узла нарушается работа всей сети. Центральный узел управления — файловый сервер может реализовать оптимальный механизм защиты против несанкционированного доступа к информации. Вся вычислительная сеть может управляться из ее центра. Кольцевая ТОПОЛОГИЯ
При кольцевой топологии сети рабочие станции связаны одна с другой по кругу, т.е. рабочая станция 1 с рабочей станцией 2, рабочая станция 3 с рабочей станцией 4 и т.д. Последняя рабочая станция связана с первой. Коммуникационная связь замыкается в кольцо.
Файловый сервер
Кольцевая ТОПОЛОГИЯ сети
Сообщения циркулируют регулярно по кругу. Рабочая станция посылает по определенному конечному адресу информацию, предварительно получив из кольца запрос. Пересылка сообщений является очень эффективной, так как большинство сообщений можно отправлять «в доро206
Топологии вычислительной сети
гу» по кабельной системе одно за другим. Очень просто можно сделать кольцевой запрос на все станции. Продолжительность передачи информации увеличивается пропорционально количеству рабочих станций, входящих в вычислительную сеть. Основная проблема при кольцевой топологии заключается в том, что каждая рабочая станция должна активно участвовать в пересылке информации, и в случае выхода из строя хотя бы одной из них вся сеть парализуется. Неисправности в кабельных соединениях локализуются легко. Подключение новой рабочей станции требует кратко срочного выключения сети, так как во время установки кольцо должно быть разомкнуто. Ограничения на протяженность вычислительной сети не существует, так как оно, в конечном счете, определяется исключительно расстоянием между двумя рабочими станциями. Специальной формой кольцевой топологии является логическая кольцевая сеть. Физически она монтируется как соединение звездных топологий. Отдельные звезды включаются с помощью специальных коммутаторов (Hub — концентратор), которые иногда называют «хаб». В зависимости от числа рабочих станций и длины кабеля между рабочими станциями применяют активные или пассивные концентраторы. Активные концентраторы дополнительно содержат усилитель для подключения от 4 до 16 рабочих станций. Пассивный концентратор является исключительно разветвительным устройством (максимум на три рабочие станции). Управление отдельной рабочей станцией в логической кольцевой сети происходит так же, как и в обычной кольцевой сети. Каждой рабочей станции присваивается соответствующий адрес, по которому передается управление (от старшего к младшему и от самого младшего к самому старшему). Разрыв соединения происходит только для нижерасположенного (ближайшего) узла вычислительной сети, так что лишь в редких случаях может нарушаться работа всей сети. 207
Топологии вычислительной сети
Шинная топология При шинной топологии среда передачи информации представляется в форме коммуникационного пути, доступного дня всех рабочих станций, к которому они все должны быть подключены. Все рабочие станции могут непосредственно вступать в контакт с любой рабочей станцией, имеющейся в сети.
Шинная ТОПОЛОГИЯ сети
Это наиболее дешевая схема организации сети, предполагающая непосредственное подключение всех сетевых адаптеров к сетевому кабелю. Все компьютеры в сети подключаются к одному кабелю. Первый и последний компьютер должны быть развязаны. В роли развязки (терминатора) выступает простой резистор, используемый для гашения сигнала, достигающего конца сети, чтобы предотвратить возникновение помех. Кроме того, один и только один конец сетевого кабеля должен быть заземлен. Рабочие станции в любое время, без прерывания работы всей вычислительной сети, могут быть подключены к ней или отключены. Функционирование вычислительной сети не зависит от состояния отдельной рабочей станции. Благодаря тому, что рабочие станции можно включать без прерывания сетевых процессов и коммуникационной среды, очень легко прослушивать информацию, т.е. ответвлять информацию из коммуникационной среды. 208
Протоколы вычислительной сети
Протоколы вычислительной сети Протокол — набор правил, определяющий взаимодействие двух одноименных уровней модели взаимодействия открытых систем в различных абонентских ЭВМ. Протокол — это не программа, а правила и последовательность выполнения действий при обмене информацией, определенные протоколом и реализованные в программе. Функции протоколов различных уровней реализуются в драйверах для различных вычислительных сетей. В соответствии с семиуровневой структурой модели можно говорить о необходимости существования протоколов для каждого уровня. Концепция открытых систем предусматривает разработку стандартов для протоколов различных уровней. Легче всего поддаются стандартизации протоколы трех нижних уровней модели архитектуры открытых систем, так как они определяют действия и процедуры, свойственные для вычислительных сетей любого класса. Труднее всего стандартизовать протоколы верхних уровней, особенно прикладного, из-за множественности прикладных задач и в ряде случаев их уникальности. Если по типам структур, методам доступа к физической передающей среде, используемым сетевым технологиям и некоторым другим особенностям можно насчитать примерно десяток различных моделей вычислительных сетей, то по их функциональному назначению пределов не существует. Основные типы протоколов
Проще всего представить особенности сетевых протоколов на примере протоколов канального уровня, которые делятся на две основные группы: байт-ориентированные и бит-ориентированные. Байт-ориентированный протокол обеспечивает передачу сообщения по информационному каналу в виде последовательности байтов. Кроме информационных байтов 209
Протоколы вычислительной сети
в канал передаются также управляющие и служебные байты. Такой тип протокола удобен для ЭВМ, так как она ориентирована на обработку данных, представленных в виде двоичных байтов. Для коммуникационной среды байт-ориентированный протокол менее удобен, так как разделение информационного потока в канале на байты требует использования дополнительных сигналов, что в конечном счете снижает пропускную способность канала связи. Наиболее известным и распространенным байт-ориентированным протоколом является протокол двоичной синхронной связи BSC (Binary Synchronous Communication), разработанный фирмой IBM. Протокол обеспечивает передачу двух типов кадров: управляющих и информационных. В управляющих кадрах передаются управляющие и служебные символы, в информационных — сообщения (отдельные пакеты, последовательность пакетов). Работа протокола BSC осуществляется в три фазы: установление соединения, поддержание сеанса передачи сообщений, разрыв соединения. Протокол требует на каждый переданный кадр посылки квитанции о результате его приема. Кадры, переданные с ошибкой, передаются повторно. Протокол определяет максимальное число повторных передач. Передача последующего кадра возможна только тогда, когда получена положительная квитанция на прием предыдущего. Это существенно ограничивает быстродействие протокола и предъявляет высокие требования к качеству канала связи. Бит-ориентированный протокол предусматривает передачу информации в виде потока битов, не разделяемых на байты. Поэтому для разделения кадров используются специальные последовательности — флаги. В начале кадра ставится флаг открывающий, в конце — флаг закрывающий. Бит-ориентированный протокол удобен относительно коммуникационной среды, так как канал связи как раз и ориентирован на передачу последовательности битов. Для 210
Протоколы вычислительной сети
ЭВМ он не очень удобен, потому что из поступающей последовательности битов приходится выделять байты для последующей обработки сообщения. Впрочем, учитывая быстродействие ЭВМ, можно считать, что эта операция не окажет существенного влияния на ее производительность. Потенциально бит-ориентированные протоколы являются более скоростными по сравнению с байт-ориентированными, что обусловливает их широкое распространение в современных вычислительных сетях. Типичным представителем группы бит-ориентированных протоколов являются протокол HDLC (High-level Data Link Control — высший уровень управления каналом связи) и его подмножества. Протокол HDLC управляет информационным каналом с помощью специальных управляющих кадров, в которых передаются команды. Информационные кадры нумеруются. Кроме того, протокол HDLC позволяет без получения положительной квитанции передавать в канал до трех-пяти кадров. Положительная квитанция, полученная, например, на третий кадр, показывает, что два предыдущих приняты без ошибок и необходимо повторить передачу только четвертого и пятого кадров. Такой алгоритм работы и обеспечивает высокое быстродействие протокола. Протокол NetBEUI
NetBEUI (NetBIOS Extended User Interface) — расширенный пользовательский интерфейс NetBIOS. Протокол NetBEUI является наиболее быстрым, однако имеет ряд ограничений. В частности, он не поддерживает маршрутизацию, однако позволяет использовать мосты. Кроме того, он переполняет сеть широковещательными сообщениями, которые могут задействовать значительную часть ее пропускной способности. И наконец, его отличает слабая производительность в глобальных сетях. Все же его можно включать в состав системы по следующим причинам: + он является наиболее эффективным протоколом для использования в локальной подсети; 211
Протоколы вычислительной сети
+ он обладает хорошими возможностями коррекции ошибок; + он является полностью самонастраивающимся; + он обеспечивает совместимость с устаревшими платформами, к которым относятся Lan Manager и реализация Windows 3.11 для рабочих групп с поддержкой удаленного доступа; + он позволяет изменять используемый протокол в случае отказа какого-либо другого из установленных протоколов. Протокол IPX/SPX
Протокол IPX/SPX хорошо использовать для малых и средних сетей, поскольку он обеспечивает поддержку маршрутизации. Это позволяет производить физическое разбиение сети на несколько сегментов с сохранением возможности работы с одним логическим сегментом. Оборотная сторона IPX/SPX состоит в том, что он также периодически рассылает широковещательные сообщения, занимающие часть пропускной способности сети. Дополнительным доводом в пользу применения IPX/SPX может послужить тот факт, что большинство сетевых игр используют этот протокол. Протокол TCP/IP
TCP/IP является скорее не единым, а совокупностью нескольких протоколов, в числе которых можно назвать TCP, UDP, ARP и многие другие. Этот протокол применяется наиболее широко. И хотя его применение в локальных сетях не особенно эффективно, он может с успехом применяться в глобальных сетях. Вот причины, по которым можно порекомендовать использование протокола TCP/IP: + он наилучшим образом интегрируется с реализациями системы Unix; + он обеспечивает простую интеграцию и доступ к Интернету как посредством выделенного канала свя212
Протоколы вычислительной сети
зи, так и с использованием Службы удаленного доступа и поддерживаемого модемом; + он может быть использован для поддержки Windows NT Socket для доступа к базам данных SQL Server; + он является полностью маршрутизируемым; + обслуживание протокола значительно упростилось с введением DHCP и WINS TCP/IP. DHPC и WINS позволяют полностью автоматизировать выделение IP-адресов и распознавание имен компьютеров NetBIOS. Протокол TCP/IP также необходим для осуществления непосредственного доступа к сети Интернет. Необходимость в нем отсутствует в случае, если доступ будет осуществляться через прокси-сервер. Прокси-сервер может быть настроен на использование TCP/IP для связи между ним самим и Интернетом, однако для связи прокси-сервера может использоваться протокол IPX/SPX.
213
Маршрутизаторы и мосты вычислительной сети
Маршрутизаторы и мосты вычислительной сети Практически все рабочие сети разделяются на несколько сегментов, так как каждая из реализаций сети накладывает определенные ограничения. Кроме того, разделение сети на сегменты может способствовать повышению производительности. После сегментации рабочие станции лишаются возможности доступа к сетевым ресурсам, находящимся за пределами локального сегмента этих станций, и именно здесь в работу включаются маршрутизаторы и мосты. Маршрутизатор применяется для физического объединения нескольких сегментов сети в один логический сегмент. Маршрутизаторы работают на уровне протокола или транспорта, осуществляя передачу информации от одного сегмента сети к другому, опираясь на уникальные сетевые адреса. Маршрутизаторы используют алгоритм построения списков адресов, принадлежащих их локальным сегментам, чтобы осуществлять маршрутизацию только тех пакетов данных, которые того требуют. Если в сети установлено несколько маршрутизаторов и один из них выходит из строя, остальные нередко могут отыскать другой маршрут, по которому можно передать данные к месту назначения. Конечно, это требует определенных затрат, поскольку стоимость маршрутизаторов довольно высока. Для работы маршрутизатора требуется достаточно мощный процессор, поскольку существует необходимость укладываться в определенные временные рамки, накладываемые реализацией сети. Например, если время ожидания подтверждения уже прошло, нет смысла направлять пакет данных к другому компьютеру. К тому моменту как компьютер получит требуемый пакет, он уже успеет отправить запрос на повторную передачу данных основному компьютеру. Одним из недорогих вариантов замены маршрутизатора является использование функций маршрутизации пакетов данных IPX/SPX и TCP/IP. Следует помнить, что 214
Маршрутизаторы и мосты вычислительной сети
если маршрутизатору не удается распознать тип пакета, он не сможет осуществить его передачу. А невозможность передачи пакета данных неизбежно приведет к вознкновению многочисленных трудностей. Не все сетевые протоколы поддерживают возможность маршрутизации (например, не поддерживает ее NetBEUI). В таких случаях возникает необходимость в отыскании какого-либо другого метода объединения сетевых сегментов. Именно эту функцию и выполняют мосты. Мост передает либо все пакеты данных вне зависимости от их сетевых адресов (transparent routing — прозрачная маршрутизация), либо основываясь на их конкретных сетевых адресах (source routing — целевая маршрутизация). Отдельные мосты совмещают эти возможности. Такие мосты нередко называют мостами прозрачной целевой маршрутизации. Мосты наиболее часто используются в сетях на основе Lan Manager, однако могут применяться и при переходе к Windows NT Server.
215
Сетевые средства коммутации
Сетевые средства коммутации Для соединения компьютеров между собой используют средства коммутации. В качестве таких средств наиболее часто используются витая пара, коаксиальный кабель и оптоволоконные линии. При выборе типа кабеля учитывают следующие показатели: + стоимость монтажа и обслуживания; + скорость передачи информации; + ограничения на величину расстояния передачи информации (без дополнительных усилителей-повторителей (репитеров)); + безопасность передачи данных. Основная проблема заключается в одновременном обеспечении этих показателей, например, наивысшая скорость передачи данных ограничена максимально возможным расстоянием передачи данных, при котором еще обеспечивается требуемый уровень защиты данных. Легкая наращиваемость и простота расширения кабельной системы влияют на ее стоимость. Наиболее дешевым кабельным соединением является витое проводное соединение, часто называемое «витой парой» (twisted pair). Она позволяет передавать информацию со скоростью до 10 Мбит/сек, легко наращивается, однако является помехонезащищенной. Длина кабеля не может превышать 1000 м при скорости передачи 1 Мбит/сек. Преимуществами являются низкая цена и простота установки. Для повышения помехозащищенности информации часто используют экранированную витую пару, т.е. витую пару, помещенную в экранирующую оболочку, подобно экрану коаксиального кабеля. Это увеличивает стоимость витой пары и приближает ее цену к цене коаксиального кабеля. Коаксиальный кабель имеет среднюю цену, хорошо помехозащитен и применяется для связи на большие расстояния (несколько километров). Скорость передачи информации от 1 до 10 Мбит/сек, а в некоторых случаях может 216
Сетевые средства коммутации
достигать 50 Мбит/сек. Коаксиальный кабель используется для основной и широкополосной передачи информации. Широкополосный коаксиальный кабель невосприимчив к помехам, легко наращивается, но цена его высокая. Скорость передачи информации до 500 Мбит/сек. При передаче информации в базисной полосе частот на расстояние более 1,5 км требуется усилитель, или так называемый репитер (повторитель). Поэтому суммарное расстояние при передаче информации увеличивается до 10 км. Для вычислительных сетей с топологией шина или дерево, коаксиальный кабель должен иметь на конце согласующий резистор (терминатор). Ethernet-кабель также является коаксиальным кабелем с волновым сопротивлением 50 Ом. Его называют еще толстый Ethernet (thick) или желтый кабель (yellow cable). Он использует 15-контактное стандартное включение. Вследствие помехозащищенности является дорогой альтернативой обычным коаксиальным кабелям. Максимально доступное расстояние без повторителя не превышает 500 м, а общее расстояние сети Ethernet — около 3000 м. Ethernet-кабель, благодаря своей магистральной топологии, использует в конце лишь один нагрузочный резистор. Более дешевым, чем Ethernet-кабель является соединение Cheapernet-кабелъ или, как его часто называют, тонкий (thin) Ethernet. Это также 50-омный коаксиальный кабель со скоростью передачи информации в 10 Мбит/сек. При соединении сегментов Cheapernet-кабеля также требуются повторители. Вычислительные сети с Cheapernet-кабелем имеют небольшую стоимость и минимальные затраты при наращивании. Соединение сетевых плат производится с помощью широко используемых малогабаритных байонетных разъемов (СР-50). Дополнительное экранирование не требуется. Кабель присоединяется к ПК с помощью тройниковых соединителей (T-connectors). Расстояние между двумя рабочими станциями без повторителей может составлять максимум 300 м, а общее расстояние для сети на Cheapernet-кабеля — около 1000 м. 217
Сетевые средства коммутации
Приемопередатчик Cheapernet расположен на сетевой плате и как для гальванической развязки между адаптерами, так и для усиления внешнего сигнала Наиболее дорогими являются оптопроводники, называемые также стекловолоконным кабелем. Скорость распространения информации по ним достигает нескольких гигабит в секунду. Допустимое удаление более 50 км. Внешнее воздействие помех практически отсутствует. На данный момент это наиболее дорогостоящее соединение для локальных вычислительных сетей. Применяются там, где возникают электромагнитные поля памех или требуется передача информации на очень большие расстояния без использования повторителей. Они обладают противоподслушивающими свойствами, так как техника ответвлений в оптоволоконных кабелях очень сложна.
218
Классификация вычислительных сетей
Классификация вычислительных сетей В зависимости от территориального расположения абонентских систем вычислительные сети можно разделить на три основных класса: + глобальные (WAN — Wide Area Network); + региональные (MAN — Metropolitan Area Network); + локальные (LAN — Local Area Network). Глобальная вычислительная сеть объединяет абонентов, расположенных в различных странах, на различных континентах. Взаимодействие между абонентами такой сети может осуществляться на базе телефонных линий связи, радиосвязи и систем спутниковой связи. Глобальные вычислительные сети позволят решить проблему объединения информационных ресурсов всего человечества и организации доступа к этим ресурсам. Региональная вычислительная сеть связывает абонентов, расположенных на значительном расстоянии друг от друга. Она может включать абонентов внутри большого города, экономического региона, отдельной страны. Обычно расстояние между абонентами региональной вычислительной сети составляет десятки-сотни километров. Локальная вычислительная сеть объединяет абонентов, расположенных в пределах небольшой территории. В настоящее время не существует четких ограничений на территориальный разброс абонентов локальной вычислительной сети. Обычно такая сеть привязана к конкретному месту. К классу локальных вычислительных сетей относятся сети отдельных предприятий, фирм, банков, офисов и т.д. Протяженность такой сети можно ограничить пределами 2—2,5 км. Объединение глобальных, региональных и локальных вычислительных сетей позволяет создавать многосетевые иерархии. Они обеспечивают мощные, экономически целесообразные средства обработки огромных информаци219
Классификация вычислительных сетей
онных массивов и доступ к неограниченным информационным ресурсам. Локальные вычислительные сети могут входить как компоненты в состав региональной сети» Региональные сети могут объединяться в составе глобальной сети и, наконец, глобальные сети также могут образовывать еще более сложные структуры сетей.
220
Локальные вычислительные сети
Локальные вычислительные сети Локальная вычислительная сеть (ЛВС) объединяет несколько удаленных друг от друга ЭВМ или других систем автоматической обработки данных, расположенных в пределах сравнительно небольшой территории — здания, комбината, полигона. Размеры ЛВС — от нескольких десятков квадратных метров до нескольких квадратных километров. ЛВС появилась главным образом потому, что от 60 до 90% всей обрабатываемой и передаваемой информации циркулирует внутри отдельных учреждений, институтов и т.д., и лишь небольшая ее часть используется вне их. Существует два типа компьютерных сетей: одноранговые сети и сети с выделенным сервером. Одноранговые сети не предусматривают выделение специальных компьютеров, организующих работу сети. Каждый пользователь, подключаясь к сети, выделяет в сеть какие-либо ресурсы (дисковое пространство, принтеры) и подключается к ресурсам, предоставленным в сеть другими пользователями. Такие сети просты в установке, налаживании; они существенно дешевле сетей с выделенным сервером. В свою очередь сети с выделенным сервером, несмотря на сложность настройки и относительную дороговизну, позволяют осуществлять централизованное управление. Одноранговая сеть. В такой сети нет единого центра управления взаимодействием рабочих станций и нет единого устройства для хранения данных. Сетевая операционная система распределена по всем рабочим станциям. Каждая станция сети может выполнять функции как клиента, так и сервера. Она может обслуживать запросы от других рабочих станций и направлять свои запросы на обслуживание в сеть. Пользователю сети доступны все устройства, подключенные к другим станциям (диски, принтеры). Достоинства одноранговых сетей: низкая стоимость и высокая надежность. 221
Локальные вычислительные сети
Недостатки одноранговых сетей: + зависимость эффективности работы сети от количества станций; + сложность управления сетью; + сложность обеспечения защиты информации; + трудности обновления и изменения программного обеспечения станций. Сеть с выделенным сервером. В сети с выделенным сервером один из компьютеров выполняет функции хранения данных, предназначенных для использования всеми рабочими станциями, управления взаимодействием между рабочими станциями и ряд сервисных функций. Такой компьютер обычно называют сервером сети. На нем устанавливается сетевая операционная система, к нему подключаются все разделяемые внешние устройства — жесткие диски, принтеры и модемы. Взаимодействие между рабочими станциями в сети, как правило, осуществляется через сервер. Логическая организация такой сети может быть представлена топологией звезда. Роль центрального устройства выполняет сервер. В сетях с централизованным управлением существует возможность обмена информацией между рабочими станциями, минуя файл-сервер. После запуска программы на двух рабочих станциях можно передавать файлы с диска одной станции на диск другой Достоинства сети с выделенным сервером: + надежная система защиты информации; + высокое быстродействие; + отсутствие ограничений на число рабочих станций; + простота управления по сравнению с одноранговыми сетями. Недостатки сети: + высокая стоимость из-за выделения одного компьютера под сервер; + зависимость быстродействия и надежности сети от сервера; + меньшая гибкость по сравнению с одноранговой сетью. 222
Локальные вычислительные сети Компоненты локальной вычислительной сети
Файловый (сетевой) сервер играет важную роль в управлении ЛВС. Он должен управлять накопителями на жестких дисках и поддерживать коллективные периферийные устройства. Большое значение имеет производительность файлового сервера, при управлении информацией больших объемов и при большом количестве рабочих станций. Для подключения большего количества рабочих станций используют сетевые усилители или коммутаторы, а также концентраторы. В качестве рабочих мест применяют автономные компьютерные системы, связанные в сеть и называемые рабочими станциями, автоматизированными рабочими местами и сетевыми станциями. В ЛВС персональный компьютер используется как рабочее место, располагающее своим собственным «интеллектом», т.е. собственным процессором с собственным внутренним накопителем и устройством ввода-вывода. При использовании сетевых плат с возможностью автозагрузки можно отказаться от накопителей на гибких магнитных дисках и повысить безопасность хранения данных, так как из этих рабочих станций, часто называемых PC-терминалами, не могут быть скопированы данные на транспортные носители данных, а также не могут быть занесены нежелательные данные, например вирусы. Операционная система. Как и любая вычислительная система нуждается в программных средствах, объединенных в операционную систему, так и вычислительная сеть нуждается в собственной операционной системе. Сетевые адаптеры. Центральный процессор соединяется с периферийным оборудованием специальным устройством. Для подключения одного персонального компьютера (ПК) к другому требуется устройство сопряжения, которое называется сетевым адаптером или сетевым интерфейсом, модулем, картой. Оно вставляется в свободное гнездо материнской платы. Серверу в большин223
Локальные вычислительные сети
стве случаев необходима сетевая плата повышенной производительности, чем у рабочих станций. Кабельная система. В качестве средств коммутации наиболее часто используются витая пара, коаксиальный кабель и оптоволоконные линии. Периферийное оборудование (лазерные устройства печати, графопостроители, устройства факсимильной связи, модемы), подключенное к файловому серверу (или другому серверному устройству), можно использовать с любой рабочей станции. Прикладное программное обеспечение. Достаточно часто встречается ситуация, когда одни и те же данные требуются разным рабочим станциям. В данном случае должно использоваться специальное прикладное программное обеспечение, которое бы контролировало доступ к данным и позволяло избежать ошибок. Особенности ЛВС
1. Так как линии передачи данных в ЛВС невелики, информацию можно передавать в цифровом виде. 2. В ЛВС практически нет помех, а потому передаваемая информация не имеет ошибок. 3. В ЛВС могут входить разнообразные и независимые устройства: большие, малые и микро-ЭВМ, терминалы и терминальные станции, различное периферийное оборудование, накопители на магнитных лентах и дисках, а также специализированные средства (регистрирующие и копирующие устройства, графопостроители, устройства связи с объектами и т.п.). 4. Простота изменения конфигурации сети и среды передачи. 5. Низкая стоимость сети передачи данных по сравнению со стоимостью подключаемых устройств. Главная отличительная особенность ЛВС — наличие единого для всех абонентов высокоскоростного канала связи, способного передавать как цифровые данные, так и речевую, текстовую и даже видеоинформацию, что 224
Локальные вычислительные сети
позволяет, например, объединить многие формы учрежденческой связи в рамках одной сети. Управление сетями
Вычислительные сети имеют те же недостатки, что и персональный компьютер в виде автономной системы, от которых невозможно избавиться. Ошибочные включения и выключения какого-либо оборудования, выход за границы области, злоупотребления информацией и (или) манипулирование ею могут разрушить рабочую систему. Обеспечение надежности функционирования сети входит в обязанности так называемого администратора сети, который должен всегда быть информирован о физическом состоянии и производительности сети и вовремя принимать соответствующие решения. Администратор сети управляет счетами и контролирует права доступа к данным. Для этого в сетях применяется система имен и адресация. Каждый пользователь имеет собственный идентификатор — имя, в соответствии с которым имеет какой-то ограниченный доступ к сетевым ресурсам и к времени работы в сети. Пользователи, кроме того, могут быть объединены в группы, имеющие свои права и ограничения. Для предотвращения несанкционированного доступа применяется система паролей.
8. Зак 511
225
Глобальные вычислительные сети
Глобальные вычислительные сети Глобальные вычислительные сети (WAN — Wide Area Networks), которые также называются территориальными компьютерными сетями, служат для того, чтобы предоставлять свои сервисы большому количеству абонентов, разбросанных по большой территории. Ввиду большой протяженности каналов связи построение глобальной сети требует очень больших затрат, в которую входят стоимость кабелей и работ по их прокладке, затраты на коммутационное оборудование и промежуточную усилительную аппаратуру, обеспечивающую необходимую полосу пропускания канала, а также эксплутационные затраты на постоянное поддержание в работоспособном состоянии разбросанной по большой территории аппаратуры сети. Типичными абонентами глобальной компьютерной сети являются локальные сети предприятий, расположенные в разных городах и странах, которым нужно обмениваться данными между собой. Услугами глобальных сетей пользуются также и отдельные компьютеры. Крупные компьютеры класса мэйнфреймов обеспечивают доступ к корпоративным данным, в то время как персональные компьютеры используются для доступа к корпоративным данным и публичным данным Internet, которая является крупнейшей глобальной информационной системой. Internet в действительности не имеет определенной организационной структуры и представляет собой некий конгломерат самостоятельных компьютерных сетей, созданных усилиями различных правительств, научных коммерческих и некоммерческих организаций. В основе Internet лежит система магистральных сетей, иначе называемых опорными. Сети среднего уровня, региональные сети подсоединяются к высокоскоростной опорной сети. Каждая из сетей отвечает за поток сообщений, циркулирующих внутри нее — трафик, и маршрутизирует его
Глобальные вычислительные сети
по своему усмотрению. Сеть несет ответственность за соединение с сетью более высокого уровня. Любая сеть сама отвечает за свое финансирование и может устанавливать собственные административные процедуры. Распространение корпоративных сетей приводит к существенным изменениям в архитектуре объединенных вычислительных сетей, в том числе Интернета. Альтернативой технологии Ethernet является технология асинхронного режима передачи (Asynchronous Transfer Mode) (ATM), разработанная как единый универсальный транспорт для нового поколения сетей с интеграцией услуг, которые называются широкополосными сетями ISDN. Сеть ATM имеет классическую структуру крупной территориальной сети — конечные станции соединяются индивидуальными каналами с коммутаторами более высоких уровней. Коммутаторы ATM пользуются 2О-байтными адресами конечных узлов для маршрутизации трафика на основе техники виртуальных каналов.
227
Сеть Internet
Сеть Internet История Internet Военным, а точнее, Агентству перспективных исследований Министерства обороны США (U.S Defence Department's Advanced Research Projects Agency — сокращенно ARPA), мир обязан зарождением распределенных сетей. В начале 60-х гг. ARPA профинансировало проект, целью которого было создание сети передачи данных, способной работать в условиях ядерной войны. Для достижения этой цели и была предложена технология TCP/IP. TCP/IP — это множество коммуникационных протоколов, которые определяют, как компьютеры различных типов могут общаться между собой. В этой технологии передаваемые данные разбивались на пакеты, каждый из которых имел свой «адрес назначения» («forwarding address»), что давало возможность автоматической маршрутизации данных по включенным в сеть компьютерам и позволяло одновременно нескольким пользователям работать на одной линии связи. Никто точно не знает дату рождения Интернет. Винтен Серф и Роберт Кан, одни из основоположников, считают, что Интернет появился на свет 2 сентября 1969 г. — день, когда Лен Клейнрок из Калифорнийского университета подключил свой компьютер к сети ARPANET. Сеть ARPANET состояла из 10 сайтов, разбросанных по территории США. Программой руководило управление стратегических исследований, но эта была всего лишь сеть компьютеров, а не Сеть сетей. В 1983 г. вышел первый стандарт для протоколов TCP/IP, вошедший в Military Standards (MIL STD), т.е. в военные стандарты, и все, кто работал в сети, обязаны были перейти к этим новым протоколам. Для облегчения этого перехода DARPA обратилась с предложением к руководителям фирмы Berkley Software Design — внедрить протоколы TCP/IP в Berkley (BSD) UNIX. С этого и начался союз UNIX и TCP/IP.
Сеть Internet
Спустя некоторое время TCP/IP был адаптирован в обычный, т.е. в общедоступный, стандарт, и термин Internet вошел во всеобщее употребление. В 1983 г. из ARPANET выделилась MILNET, которая стала относиться к Defence Data Network (DDN) Министерства обороны США. Термин Internet стал использоваться для обозначения единой сети: MILNET плюс ARPANET. И хотя в 1991 г. ARPANET прекратила свое существование, сеть Internet существует, ее размеры намного превышают первоначальные, так как она объединила множество сетей во всем мире. Структура Intrnet
Internet представляет собой глобальную компьютерную сеть. Само ее название означает «между сетей». Это сеть, соединяющая отдельные сети. Логическая структура Internet представляет собой некое виртуальное объединение, имеющее свое собственное информационное пространство. Internet обеспечивает обмен информацией между всеми компьютерами, которые входят в сети, подключенные к ней. Тип компьютера и используемая им операционная система значения не имеют. Кроме того, все компьютеры, подключенные к сети, равноправны. В настоящее время в сети Internet используются практически все известные линии связи от низкоскоростных телефонных линий до высокоскоростных цифровых спутниковых каналов. Операционные системы (ОС), используемые в сети Internet, также отличаются разнообразием. Большинство компьютеров сети Internet работают под ОС Unix или Windows NT, Широко представлены также специальные маршрутизаторы сети типа NetBlazer или Cisco, чья ОС напоминает ОС Unix. Основные ячейки Internet — локальные вычислительные сети. Internet не просто устанавливает связь между отдельными компьютерами, а создает пути соединения для более крупных единиц — групп компьютеров. Если некоторая локальная сеть непосредственно подключена к 229
Сеть Internet
Internet, то каждая рабочая станция этой сети также может подключаться к Internet. Существуют компьютеры, самостоятельно подключенные к Internet. Они называются хост-компьютерами (host — хозяин). Каждый подключенный к сети компьютер имеет свой адрес, по которому его может найти абонент из любой точки света. Система адресации в Internet
Internet самостоятельно осуществляет передачу данных. К адресам станций предъявляются специальные требования. Адрес должен иметь формат, позволяющий вести его обработку автоматически, и должен нести некоторую информацию о своем владельце. С этой целью для каждого компьютера устанавливаются два адреса: цифровой IP-адрес (IP — Internetwork Protocol — межсетевой протокол) и доменный адрес. Оба эти адреса могут применяться равноценно. Цифровой адрес удобен для обработки на компьютере, а доменный адрес — для восприятия пользователем. Цифровой адрес имеет длину 32 бита. Для удобства он разделяется на четыре блока по 8 бит, которые можно записать в десятичном виде. Адрес содержит полную информацию, необходимую для идентификации компьютера. Два блока определяют адрес сети, а два другие — адрес компьютера внутри этой сети. IP-адрес включает в себя три компонента: адрес сети, адрес подсети, адрес компьютера в подсети. Доменный адрес определяет область, представляющую ряд хост-компьютеров. В отличие от цифрового адреса он читается в обратном порядке. Вначале идет имя компьютера, затем имя сети, в которой он находится. Когда Internet стала международной сетью, возникла необходимость предоставить зарубежным странам возможность контроля за именами находящихся з них систем. Для этой цели создан набор двухбуквенных доменов, которые соответствуют доменам высшего уровня для этих стран. Например, Франция — fr; Канада — са, США — us; Россия — ru. 2Ъ
Сеть Internet
Существуют домены, разделенные по тематическим признакам. Такие домены имеют трехбуквенное сокращенное название. Например, учебные заведения — edit, правительственные учреждения — gov, коммерческие организации — cот. Окончательный план расширения системы присвоения имен ресурсов в Internet был объявлен комитетом IAHC (International Ad Hoc Committee). Согласно новым решениям, к доменам высшего уровня, включающим сегодня com, net, org, прибавятся: + firm — для деловых ресурсов Сети; + store — для торговли; + web — для организаций, имеющих отношение к регулированию деятельности в WWW; + arts — для ресурсов гуманитарного образования; + rec — игры и развлечения; + info — предоставление информационных услуг; + пот — для индивидуальных ресурсов. Компьютерное имя включает, как минимум, два уровня доменов. Каждый уровень отделяется от другого точкой. Слева от домена верхнего уровня располагаются другие имена. Все имена, находящиеся слева, — поддомены для общего домена.
Электронная почта
Электронная почта Электронная почта похожа на обычную почту. С ее помощью письмо — текст, снабженный стандартным заголовком (конвертом), — доставляется по указанному адресу, который определяет местонахождение сервера и имя адресата, который имеет почтовый ящик на этом сервере, с тем, чтобы адресат мог его достать и прочесть в удобное время. Для создания электронной почты в сети TCP/IP используется не так уж много протоколов: SMTP (Simple Mail Transfer Protocol — простой протокол передачи почты), POP (Post Office Protocol — протокол почтового отделения) и MIME (Multipurpose Internet Mail Extensions — многоцелевые расширения почты Интернет). Конечно, это далеко не полный перечень протоколов электронной почты. К примеру, существует экспериментальный интерактивный почтовый протокол (IMAP — Interactive Mail Access Protocol), определенный в стандарте RFC 1176 и созданный для того, чтобы заменить POP. В число его возможностей входит поиск текста на удаленной системе и синтаксический анализ сообщений, а этого как раз и нет в POP. Согласно схеме почтового обмена взаимодействие между участниками этого обмена строится по классической схеме «клиент—сервер». При этом схему можно подразделить на несколько этапов. Первый — взаимодействие по протоколу SMTP между почтовым клиентом (Internet Mail, Netscape Messager, Eudora, Outlook Express и т.п.) и почтовым транспортным агентом (sendmail, smail, ntmail и т.п.); второй — взаимодействие между транспортными агентами в процессе доставки почты получателю, результатом которого является доставка почтового сообщения в почтовый ящик пользователя; и третий — выборка сообщения из почтового ящика пользователя почтовым клиентом в почтовый ящик пользователя по протоколу РОРЗ или IMAP
Электронная почта Протокол электронной почты SMTP
Главной целью протокола Simple Mail Transfer Protocol (SMTP, RFC-821, -822) является надежная и эффективная доставка электронных почтовых сообщений. SMTP — это независимая субсистема, требующая только надежного канала связи. Средой для SMTP может служить отдельная локальная сеть, система сетей или вся сеть Internet. Протокол SMTP базируется на следующей модели коммуникаций: в ответ на запрос пользователя почтовая программа-отправитель устанавливает двухстороннюю связь с программой-приемником (TCP, порт 25). Получателем может быть конечный или промежуточный адресат. SMTP-команды генерируются отправителем и посылаются получателю. Для каждой команды должен быть получен отклик. Когда канал организован, отправитель посылает команду MAIL, идентифицируя себя. Если получатель готов к приему сообщения, он посылает положительный отклик. Далее отправитель посылает команду RCPT, идентифицируя получателя почтового сообщения. Если получатель может принять сообщение для оконечного адресата, он снова выдает положительный отклик. В противном случае он отвергает получение сообщения для данного адресата, но не вообще почтовой посылки. Взаимодействие с почтовым сервером возможно и в диалоговом режиме. После ввода команды Data пользователь вводит текст сообщения и как знак окончания ставит точку в пустой строке. Если письмо дошло до адресата, то выходит соответствующее сообщение. В противном случае выходит сообщение о том, что ящика адресата не существует, а на адрес отправителя приходит обратное письмо с текстом отправляемого сообщения. Прямая доставка позволяет SMTP пересылать почту, не полагаясь на промежуточные хосты. Недостаток прямой доставки состоит в том, что на обоих концах должны непрерывно поддерживать работу с почтой. Это не каса233
Электронная почта
ется почтовых Интернет-серверов, поскольку они постоянно включены и настроены на непрерывную отправкуприем сообщений. Для считывания сообщений с таких серверов на компьютеры пользователей применяется протокол POP. Но не в каждой сети используется TCP/IP и SMTP. Чтобы предоставить пользователям услуги электронной почты в таких случаях, применяют так называемые почтовые шлюзы, которые дают возможность абоненту отправлять сообщения в сети, не работающие с протоколами TCP/IP (Fido, Goldnet, AT50). Протокол электронной почты POP (Post Office Protocol) Протокол обмена почтовой информацией POP предназначен для разбора почты из почтовых ящиков пользователей на их рабочие места при помощи программ-клиентов. Если по протоколу SMTP пользователи отправляют корреспонденцию через Internet, то по протоколу POP пользователи получают корреспонденцию из своих почтовых ящиков на почтовом сервере. Широкое распространение получили две версии POP — РОР2 и РОРЗ. Протокол POP2 определен в стандарте RFC 937 и использует порт 109. РОРЗ определен в RFC 1725 и использует порт 110. Это несовместимые протоколы, в которых применяются разные команды, но они выполняют одинаковые функции. В настоящее время чаще всего используется протокол РОРЗ. РОРЗ-сервис, как правило, устанавливается на 110-й TCP-порт сервера, который будет находиться в режиме ожидания входящего соединения. Когда клиент хочет воспользоваться РОРЗ-сервисом, он просто устанавливает TCP-соединение с портом 110 этого хоста. После установления соединения сервис РОРЗ отправляет подсоединившемуся клиенту приветственное сообщение. После этого клиент и сервер начинают обмен командами и данными. По окончании обмена РОРЗ-канал закрывается. 234
Электронная почта
РОРЗ-сессия состоит из нескольких частей. Как только открывается TCP-соединение и РОРЗ-сервер отправляет приветствие, сессия должна быть зарегистрирована — состояние аутентификации (AUTHORIZATION state). Клиент должен зарегистрироваться в РОРЗ-сервере, т.е. ввести свой идентификатор и пароль. После этого сервер предоставляет клиенту его почтовый ящик и открывает для данного клиента транзакцию — состояние начала транзакции обмена (TRANSACTION state). На этой стадии клиент может считать и удалить почту своего почтового ящика. После того как клиент заканчивает работу (передает команду QUIT), сессия переходит в состояние UPDATE — завершение транзакции. В этом состоянии РОРЗ-сервер закрывает транзакцию данного клиента и закрывает ТСРсоединение. В случае получения неизвестной, неиспользуемой или неправильной команды, РОРЗ-сервер должен ответить отрицательным состоянием индикатора. РОРЗ-сервер может использовать в своей работе таймер контроля времени соединения. Этот таймер отсчитывает время «бездействия» («idle») клиента в сессии от последней переданной команды. Если время сессии истекло, сервер закрывает TCP-соединение, не переходя в состояние UPDATE. Структура адреса электронной почты
Рассмотрим адрес [email protected]. Он состоит из адреса машины и имени адресата, которое отделено знаком «@». Слева от @ стоит имя адресата, точнее, имя файлапочтового ящика на сервере, с которого он забирает письма. Обычно пользователь называет свой почтовый ящик тем же именем, под которым он зарегистрирован в системе. Чаще всего это имя (например, tanya), фамилия (например, belugina), или инициалы, Часть справа от @ называется доменом и описывает местонахождение этого почтового ящика (сервер). 235
Электронная почта
Формат почтового сообщения Почтовое сообщение состоит из трех частей: конверта, заголовка и тела сообщения. Пользователь видит только заголовок и тело сообщения. Конверт используется только программами доставки. Заголовок всегда находится перед телом сообщения и отделен от него пустой строкой. Заголовок состоит из полей. Поля состоят из имени поля и содержания поля. Имя поля отделено от содержания символом «:». Минимально необходимыми являются поля «Date», «From» и «Tо», например: Date: Wed March 27 01:31:21 2001 From: [email protected] To: [email protected] Поле «Date» определяет дату отправки сообщения, поле «From» — отправителя, а поле «То» — получателя(ей). Если письмо отослано по списку рассылки, то в поле «То» будет указан адрес почтового ящика, на который посылается текст письма для рассылки. Письма по спискам рассылки идут довольно долго и могут запоздать на сутки и более. Это обусловлено самой системой рассылки. Письмо может проходить через большое количество серверов и вследствие этого может опоздать. Также на время доставки электронного письма влияет и загруженность почтового сервера.
236
Технология World Wide Web (WWW)
Технология World Wide Web (WWW) История Всемирной паутины (World Wide Web) или просто WWW началась в марте 1989 г., когда Тим Бернерс-Ли, сотрудник Европейской лаборатории физики элементарных частиц в Женеве, распространил предложение разработать «гипертекстовую систему» для возможности легкого обмена информацией между различными группами физиков. WWW, в отличие от существующих к тому времени протоколов Интернет, таких как FTP, Telnet, WAIS, дала возможность представлять информацию в естественной форме с текстом, графикой, звуком и прочими атрибутами. Фактически же WWW — это распределенная система, основанная на использовании гипертекста, впервые предложенного в 70-х гг. Тедом Нельсоном. Основные компоненты технологии World Wide Web
К 1989 г. гипертекст представлял новую технологию, которая имела относительно большое число реализаций, с одной стороны, а с другой стороны, делались попытки построить формальные модели гипертекстовых систем. Идея Бернерс-Ли заключалась в том, чтобы применить гипертекстовую модель к информационным ресурсам, распределенным в сети, и сделать это максимально простым способом. Он заложил три краеугольных камня системы из четырех существующих ныне, разработав: + язык гипертекстовой разметки документов HTML (HyperText Markup Language); + универсальный способ адресации ресурсов в сети URL (Universal Resource Locator); + протокол обмена гипертекстовой информацией HTTP (HyperText Transfer Protocol). Позже к этим трем компонентам был добавлен четвертый: + универсальный интерфейс шлюзов CGI (Common Gateway Interface). 237
Технология World Wide Web (WWW)
Идея HTML — пример удачного решения проблемы построения гипертекстовой системы при помощи специального средства управления отображением. На разработку языка гипертекстовой разметки существенное влияние оказали два фактора: исследования в области интерфейсов гипертекстовых систем и желание обеспечить простой и быстрый способ создания гипертекстовой базы данных, распределенной на сети. HTML — простой язык разметки, который позволяет помечать фрагменты текста и задавать ссылки на другие документы, выделять заголовки нескольких уровней, разбивать текст на абзацы, центрировать их и т.п. В HTML гипертекстовые ссылки встроены в тело документа и хранятся как его часть. Часто в системах применяют специальные форматы хранения данных для повышения эффективности доступа. В WWW документы — это обычные ASCII-файлы, которые можно подготовить в любом текстовом редакторе. Вторым краеугольным камнем WWW стала универсальная форма адресации информационных ресурсов. Universal Resource Identification (URI) представляет собой довольно стройную систему, учитывающую опыт адресации и идентификации e-mail, Gopher, WAIS, telnet, ftp и т.п. Но реально из всего, что описано в URI, для организации баз данных в WWW требуется только Universal Resource Locator (URL). Без наличия этой спецификации вся мощь HTML оказалась бы бесполезной. URL используется в гипертекстовых ссылках и обеспечивает доступ к распределенным ресурсам сети. В URL можно адресовать как другие гипертекстовые документы формата HTML, так и ресурсы e-mail, telnet, ftp, Gopher, WAIS. Третий краеугольный камень — протокол обмена данными в World Wide Web — HyperText Transfer Protocol. Данный протокол предназначен для обмена гипертекстовыми документами и учитывает специфику такого обмена. Так, в процессе взаимодействия клиент может получить новый адрес ресурса на сети (relocation), запросить встроенную графику, принять и передать параметры и т.п. 238
Технология World Wide Web (WWW)
Управление в HTTP реализовано в виде ASCII-команд. Реально разработчик гипертекстовой базы данных сталкивается с элементами протокола только при использовании внешних расчетных программ или при доступе к внешним относительно WWW информационным ресурсам, например базам данных. Последняя составляющая технологии WWW — спецификация Common Gateway Interface. CGI была специально разработана для расширения возможностей WWW за счет подключения всевозможного внешнего программного обеспечения. Такой подход логично продолжал принцип публичности и простоты разработки и наращивания возможностей WWW. Архитектура WWW-технологии
WWW построена по хорошо известной схеме «клиент— сервер». Программа-клиент выполняет функции интерфейса пользователя и обеспечивает доступ практически ко всем информационным ресурсам Internet. Фактически, клиент — это интерпретатор HTML. И как типичный интерпретатор, клиент в зависимости от команд (разметки) выполняет различные функции. В круг этих функций входит не только размещение текста на экране, но и обмен информацией с сервером по мере анализа полученного HTML-текста, что наиболее наглядно происходит при отображении встроенных в текст графических образов. При анализе URL-спецификации или по командам сервера клиент запускает дополнительные внешние программы для работы с документами в форматах, отличных от HTML, например GIF, JPEG, MPEG, Postscript и т.п. Другую часть программного комплекса WWW составляют сервер протокола HTTP, базы данных документов в формате HTML, управляемые сервером, и программное обеспечение, разработанное в стандарте спецификации CGI.
239
Язык гипертекстовой разметки Web-документов HTML
Язык гипертекстовой разметки Web-документов HTML Язык HTML существует в нескольких вариантах и продолжает развиваться, но конструкции HTML, вероятнее всего, будут использоваться и в дальнейшем. HTML был ратифицирован World Wide Web Consortium. Он поддерживается несколькими широко распространенными браузерами, и, возможно, станет основой почти всего имеющего отношение к Web-программного обеспечения. Структура HTML документа
Символы, заключенные в угловые скобки о, являются HTML-командами, по которым браузер распознает, как следует преобразовать части текста, заключенные между этими командами. Документ в целом должен быть отмечен как документ в формате HTML. Для этого он должен начинаться командой и заканчиваться командой . Документ HTML состоит из 2 частей: + заголовка (Head); + собственно документа (Body). Для выделения заголовка следует ввести: Заголовок документа . Каждый WWW-документ имеет название, которое вводится в титульной строке браузера. Для ввода титульной строки в заголовок документа следует воспользоваться следующими командами: <TITLE> TITLE List . Необходимо отметить, что титульная строка должна быть на английском языке в латинской кодировке, так как она отображается в специальных полях браузера. Для записи основного текста следует ввести: Основной текст . Таким образом, общая схема документа в формате HTML выглядит следующим образом: 240
Язык гипертекстовой разметки Web-документов HTML
<TITLE> Титульная строка документа Основной текст документа При написании команд HTML не имеет значение, какими буквами — строчными или прописными вы пишите команды. Заголовки в документе создаются с помощью команд: Заголовок , причем при i = 1 заголовок самый крупный, а при i = 6 — самый мелкий. Списки предназначены для представления информации в упорядоченном виде. В HTML-документах используется 3 вида списков: 1) неупорядоченные списки; 2) упорядоченные списки; 3) списки-определения. В документе HTML невозможно создать абзац, используя клавишу [Enter]. Использование этой клавиши улучшает внешний вид исходного текста, но не влияет на полученное изображение. Для перехода на следующую строку воспользуйтесь командой . Для создания пустой строки воспользуйтесь командой . Для создания горизонтальной черты воспользуйтесь командой . Для выделения отдельных частей текста можно воспользоваться следующими стилями: 1) В — жирный (Bold); 2) I — курсив (Italic); 3) U — с подчеркиванием (Underline); 4) S — с перечеркиванием (STRIKE). Для изменения размера текстовых символов воспользуйтесь командами: , где i в пределах от 1 до 7 относительно начального размера букв. Кроме того, можно увеличить или уменьшить высоту шрифта с помощью команд и <SMALL>. Эти команды используются в паре с командами и . Цвета и изображения фона задаются с помощью команды . Эта команда может задаваться только в начале HTML файла и не может быть изменена в дальнейшем. Ее параметры: + bgcolor = «# код цвета» — цвет фона документа; + text = «# код цвета» — цвет текста документа; 241
Язык гипертекстовой разметки Web-документов HTML
+ link = «# код цвета» — цвет текста, используемого в качестве ссылки; + vlink = «# код цвета» — цвет ссылки на просмотренный ранее документ; + alink = «# код цвета» — цвет ссылки в момент нажатия на нее правой кнопки мыши. Код цвета задается в кодировке RGB — шесть шестнадцатеричных чисел. Для изменения цвета текущего текста можно в любом месте домашней страницы воспользоваться командами: Текущий текст В языке HTML символ < используется как первый символ каждой команды. Этот символ не может быть использован для обозначения отношения «меньше». Для отображения на экране символа < («меньше») и некоторых других символов в HTML приняты специальные обозначения:
Язык HTML всегда уменьшает количество подряд расположенных пробелов до одного, независимо от того, сколько пробелов было в исходном тексте. Для задания необходимого количества подряд расположенных пробелов следует воспользоваться специальным символом пробела:  . Таблица создается с помощью команд
и
. Команда
может иметь следующие параметры: + UNITS — может принимать значение RELATIVE или PIXELS. Определяет единицы измерения в других параметрах. По умолчанию, UNITS = PIXELS;
Язык гипертекстовой разметки Web-документов HTML
+ BORDER — определяет линии, разграничивающие клетки в таблице. Ширина линии задается командой BORDER = N; + CELLPADDING — определяет минимальный промежуток вокруг содержимого таблицы; + BGCOLOR — определяет цвет фонового изображения в таблице. Во всех таблицах данного документа я использую BGCOLOR= WHITE. Для организации перехода внутри одного HTML-файла следует ввести необходимый текст в двух местах: + записать метку в том месте HTML-файла, куда необходимо перейти; + записать переход на эту метку в том месте, откуда будет выполнен переход. Для перехода из любого места HTML-файла hl.html в начало HTML-файла h2.html следует записать: IIepexoд к разделу h2 В любом месте HTML-файла можно ввести гипертекстовые ссылки на другой документ или файл. Гипертекстовые ссылки вводятся в HTML-файл с помощью унифицированного локатора ресурсов — URL. Этот локатор определяет правила написания различных видов ссылок. Ниже приводятся важнейшие префиксы для URL:
Изображения могут быть выведены на экран так же, как текст. Файлы изображения могут быть заданы в не243
Язык гипертекстовой разметки Web-документов HTML
скольких различных форматах, наилучшие из которых — GIF (файлы *.gif) и JPEG (файлы *.jpg). Экран можно разделить на несколько независимых оконных кадров, каждый из которых отображает отдельный HTML-документ. На экране кадры представляют собой прямоугольники. В HTML используются следующие команды работы с кадрами: + , — определяют состав и размеры кадров на экране; + , — определяют HTML файл для каждого кадра; + , — для сообщений «браузеру», не обрабатывающему кадры. Форма — это средство, позволяющее организовать в Web-странице диалог с ее пользователем. Разработчик Web-страницы создает ее с помощью специальных элементов: 1) кнопки; 2) списки; 3) текстовые строки; 4) текстовые поля.
244
XII
ОСНОВЫ ЗАЩИТЫ ИНФОРМАЦИИ И СВЕДЕНИЙ Информационная безопасность и информационные технологии
Важной проблемой человечества является защита информации, которая на различных этапах развития решалась по-разному. Изобретение компьютера и дальнейшее бурное развитие информационных технологий во второй половине XX в. сделали проблему защиты информации настолько актуальной и острой, насколько актуальна сегодня информатизация для всего общества. Главная тенденция, характеризующая развитие современных информационных технологий, — рост числа компьютерных преступлений и связанных с ними хищений конфиденциальной и иной информации, а также материальных потерь. Причин активизации компьютерных преступлений и связанных с ними финансовых потерь достаточно много. Существенными из них являются: + переход от традиционной «бумажной» технологии хранения и передачи сведений на электронную и недостаточное при этом развитие технологии защиты информации; + объединение вычислительных систем, создание глобальных сетей и расширение доступа к информационным ресурсам; + увеличение сложности программных средств и связанное с этим уменьшение их надежности и увеличение числа уязвимых мест. Любое современное предприятие независимо от вида деятельности и формы собственности не в состоянии успешно развиваться и вести хозяйственную деятельность без создания на нем условий для надежного функционирования системы защиты собственной информации.
Информационная безопасность и информационные технологии
Отсутствие у многих руководителей предприятий и компаний четкого представления по вопросам защиты информации приводит к тому, что им сложно в полной мере оценить необходимость создания надежной системы защиты информации. Трудно бывает определить конкретные действия, необходимые для защиты тех или иных конфиденциальных сведений. Чаще руководители предприятий идут по пути создания охранных служб, полностью игнорируя при этом вопросы информационной безопасности.
Способы и средства защиты информации
Способы и средства защиты информации Защита информации — деятельность, направленная на сохранение государственной, служебной, коммерческой или личной тайн, а также на сохранение носителей информации любого содержания. Система защиты информации — комплекс организационных и технических мероприятий по защите информации, проведенных на объекте с применением необходимых технических средств и способов в соответствии с концепцией, целью и замыслом защиты. Для решения проблемы защиты информации основными средствами защиты информации принято считать: 1. Технические средства — реализуются в виде электрических, электромеханических, электронных устройств. Всю совокупность технических средств принято делить на: + аппаратные — устройства, встраиваемые непосредственно в аппаратуру, или устройства, которые сопрягаются с аппаратурой систем обработки данных (СОД) по стандартному интерфейсу (схемы контроля информации по четности, схемы защиты полей памяти по ключу, специальные регистры); + физические — реализуются в виде автономных устройств и систем (электронно-механическое оборудование охранной сигнализации и наблюдения, замки на дверях, решетки на окнах). 2. Программные средства — программы, специально предназначенные для выполнения функций, связанных с защитой информации. 3. Организационные средства — организационно-правовые мероприятия, осуществляемые в процессе создания и эксплуатации СОД для обеспечения защиты информации. Организационные мероприятия охватывают все структурные элементы СОД на всех этапах: строительство помещений, проектирование системы, монтаж и наладка оборудования, испытания и проверки, эксплуатация. 247
Способы и средства защиты информации
4. Законодательные средства — законодательные акты страны, которыми регламентируются правила использования и обработки информации ограниченного доступа и устанавливаются меры ответственности за нарушение этих правил. 5. Морально-этические средства — всевозможные нормы, которые сложились традиционно или складываются по мере распространения вычислительных средств в данной стране или обществе. Эти нормы большей частью не являются обязательными, как законодательные меры, однако несоблюдение их обычно ведет к потере авторитета, престижа человека или группы лиц. Однако специалисты пришли к выводу, что использование какого-либо одного из указанных способов защиты не обеспечивает надежного сохранения информации. Необходим комплексный подход к использованию и развитию всех средств и способов защиты информации. В результате были созданы следующие способы защиты информации: 1. Препятствие — физически преграждает злоумышленнику путь к защищаемой информации. 2. Управление доступом — способ защиты информации регулированием использования всех ресурсов системы (технических, программных средств, элементов данных). Управление доступом включает следующие функции защиты: + идентификацию пользователей, персонала и ресурсов системы, причем под идентификацией понимается присвоение каждому названному выше объекту персонального имени, кода, пароля и опознание субъекта или объекта по предъявленному им идентификатору; + проверку полномочий, соответствие дня недели, времени суток, запрашиваемых ресурсов и процедур установленному регламенту; + разрешение и создание условий работы в пределах установленного регламента; + регистрацию обращений к защищаемым ресурсам; 248
Способы и средства защиты информации
+ реагирование (задержка работ, отказ, отключение, сигнализация) при попытках несанкционированных действий. 3. Маскировка — способ защиты информации с СОД путем ее криптографического шифрования. При передаче информации по линиям связи большой протяженности криптографическое закрытие является единственным способом ее надежной защиты. 4. Регламентация — заключается в разработке и реализации в процессе функционирования СОД комплексов мероприятий, создающих такие условия автоматизированной обработки и хранения в СОД защищаемой информации, при которых возможности несанкционированного доступа к ней сводились бы к минимуму. Для эффективной защиты необходимо строго регламентировать структурное построение СОД (архитектура зданий, оборудование помещений, размещение аппаратуры), организацию и обеспечение работы всего персонала, занятого обработкой информации. 5. Принуждение — пользователи и персонал СОД вынуждены соблюдать правила обработки и использования защищаемой информации под угрозой материальной, административной или уголовной ответственности. Все рассмотренные средства защиты делятся на: 1) формальные — выполняющие защитные функции строго по заранее предусмотренной процедуре и без непосредственного участия человека; 2) неформальные — такие средства, которые либо определяются целенаправленной деятельностью людей, либо регламентируют эту деятельность.
Политика безопасности при защите информации
Политика безопасности при защите информации Политика безопасности — совокупность документированных управленческих решений, направленных на защиту информации и ассоциированных с ней ресурсов. При разработке и проведении ее в жизнь целесообразно руководствоваться следующими принципами: + невозможность миновать защитные средства; + усиление самого слабого звена; + невозможность перехода в небезопасное состояние; + минимизация привилегий; + разделение обязанностей; + эшелонированность обороны; + разнообразие защитных средств; + простота и управляемость информационной системы; + обеспечение всеобщей поддержки мер безопасности. Если у злоумышленника или недовольного пользователя появится возможность миновать защитные средства, он так и сделает. Например, применительно к межсетевым экранам данный принцип означает, что все информационные потоки в защищаемую сеть и из нее должны проходить через экран. Не должно быть «тайных» модемных входов или тестовых линий, идущих в обход экрана. Надежность любой обороны определяется самым слабым звеном. Часто самым слабым звеном оказывается не компьютер или программа, а человек, и тогда проблема обеспечения информационной безопасности приобретает нетехнический характер. Принцип невозможности перехода в небезопасное состояние означает, что при любых обстоятельствах, в том числе нештатных, защитное средство либо полностью выполняет свои функции, либо полностью блокирует доступ.
Принцип минимизации привилегий предписывает
пользователям и администраторам выделять только те права доступа, которые необходимы им для выполнения служебных обязанностей. 250
Политика безопасности при защите информации
Принцип разделения обязанностей предполагает такое распределение ролей и ответственности, при котором один человек не может нарушить критически важный для организации процесс. Принцип эшелонированности обороны предписывает не полагаться на один защитный рубеж. За средствами физической защиты должны следовать программно-технические средства, за идентификацией и аутентификацией — управление доступом и, как последний рубеж, — протоколирование и аудит. Эшелонированная оборона способна по крайней мере задержать злоумышленника, а наличие такого рубежа, как протоколирование и аудит, существенно затрудняет незаметное выполнение злоумышленных действий. Принцип разнообразия защитных средств рекомендует организовывать различные по своему характеру оборонительные рубежи, чтобы от потенциального злоумышленника требовалось овладение разнообразными и, по возможности, несовместимыми между собой навыками (например, умением преодолевать высокую ограду и знанием слабостей нескольких операционных систем). Важен принцип простоты и управляемости информационной системы в целом и защитных средств в особенности. Только для простого защитного средства можно формально или неформально доказать его корректность. В простой и управляемой системе можно проверить согласованность конфигурации разных компонентов и осуществить централизованное администрирование. Принцип — всеобщая поддержка мер безопасности — носит нетехнический характер. Если пользователи и/или системные администраторы считают информационную безопасность излишней или даже враждебной, режим безопасности сформировать заведомо не удастся. Следует с самого начала предусмотреть комплекс мер, направленный на обеспечение лояльности персонала, на постоянное обучение, теоретическое и, главное, практическое.
251
Компьютерная преступность
Компьютерная преступность Компьютерные преступления условно можно подразделить на две большие категории — преступления, связанные с вмешательством в работу компьютеров, и преступления, использующие компьютеры как необходимые технические средства. Расмотрим основные виды преступлений, связанных с вмешательством в работу компьютеров. 1. Несанкционированный доступ к информации, хранящейся в компьютере. Такой доступ осуществляется, как правило, с использованием чужого имени, изменением физических адресов технических устройств, использованием информации, оставшейся после решения задач, модификацией программного и информационного обеспечения, хищением носителя информации, установкой аппаратуры записи, подключаемой к каналам передачи данных. 2. Ввод в программное обеспечение «логических бомб», которые срабатывают при выполнении определенных условий и частично или полностью выводят из строя компьютерную систему. «Временная бомба» — разновидность «логической бомбы», которая срабатывает по достижении определенного момента времени. Способ «троянский конь» состоит в тайном введении в чужую программу таких команд, которые позволяют осуществлять новые, не планировавшиеся владельцем программы функции, но одновременно сохранять и прежнюю работоспособность. 3. Разработка и распространение компьютерных вирусов. Вирусы могут быть внедрены в операционную систему, прикладную программу или в сетевой драйвер. Варианты вирусов зависят от целей, преследуемых их создателем. Признаки их могут быть относительно доброкачественными, например, замедление в выполнении программ или появление светящейся точки на экране дисплея (т.н. «итальянский попрыгунчик»). Признаки могут быть эволютивными, и «болезнь» будет обостряться по мере своего течения. Так, по непонятным причинам программы начинают переполнять магнитные диски, в результате чего существен252
Компьютерная преступность
но увеличивается объем программных файлов. Наконец, эти проявления могут быть катастрофическими и привести к стиранию файлов и уничтожению программного обеспечения. 4. Преступная небрежность в разработке, изготовлении и эксплуатации программно-вычислительных комплексов, приведшая к тяжким последствиям. Проблема неосторожности в области компьютерной техники сродни неосторожной вине при использовании любого другого вида техники, транспорта и т.п. Особенностью компьютерной неосторожности является то, что безошибочных программ в принципе не бывает. Если проект практически в любой области техники можно выполнить с огромным запасом надежности, то в области программирования такая надежность весьма условна, а в ряде случаев почти не достижима. 5. Подделка компьютерной информации. Этот вид компьютерной преступности является одним из последних. Он является разновидностью несанкционированного доступа с той разницей, что пользоваться им может, как правило, не посторонний пользователь, а сам разработчик, причем имеющий достаточно высокую квалификацию. Преступление состоит в подделке выходной информации компьютеров с целью имитации работоспособности больших систем, составной частью которых является компьютер. При хорошо выполненной подделке зачастую удается сдать заказчику заведомо неисправную продукцию. 6. Хищение компьютерной информации. Во второй категории преступлений, в которых компьютер является «средством» достижения цели, можно выделить разработку сложных математических моделей, входными данными в которых являются возможные условия проведения преступления, а выходными данными — рекомендации по выбору оптимального варианта действий преступника. Другой вид преступлений с использованием компьютеров получил название «воздушный змей». В простейшем случае требуется открыть в двух банках по небольшому счету. Далее деньги переводятся из одного банка в другой и обратно с постепенно повышающимися суммами. 253
Компьютерная преступность
Предупреждение компьютерных преступлений Выход из строя или ошибки в работе компьютера могут привести к тяжелым последствиям, следовательно, вопросы компьютерной безопасности становятся первоочередными. Имеется много мер, направленных на предупреждение преступления. Выделим из них технические, организационные и правовые. К техническим мерам можно отнести защиту от несанкционированного доступа к системе, резервирование особо важных компьютерных подсистем, организацию вычислительных сетей с возможностью перераспределения ресурсов в случае нарушения работоспособности отдельных звеньев, установку оборудования обнаружения и тушения пожара, оборудования обнаружения воды, принятие конструкционных мер защиты от хищений, саботажа, диверсий, взрывов, установку резервных систем электропитания, оснащение помещений замками, установку сигнализации и многое другое. К организационным мерам отнесем охрану вычислительного центра, тщательный подбор персонала, исключение случаев ведения особо важных работ только одним человеком, наличие плана восстановления работоспособности центра после выхода его из строя, организацию обслуживания вычислительного центра посторонней организацией или лицами, незаинтересованными в сокрытии фактов нарушения работы центра, универсальность средств защиты от всех пользователей (включая высшее руководство), возложение ответственности на лиц, которые должны обеспечить безопасность центра, выбор места расположения центра и т.п. К правовым мерам следует отнести разработку норм, устанавливающих ответственность за компьютерные преступления, защиту авторских прав программистов, совершенствование уголовного и гражданского законодательства, а также судопроизводства. К правовым мерам относятся также вопросы общественного контроля за разработчиками компьютерных систем и принятие международных договоров об их ограничениях.
254
Классификация методов шифрования информации
Классификация методов шифрования информации Для преобразования (шифрования) информации обычно используется некоторый алгоритм или устройство, реализующее заданный алгоритм, которые могут быть известны широкому кругу лиц. Управление процессом шифрования осуществляется с помощью периодически меняющегося кода ключа, обеспечивающего каждый раз оригинальное представление информации при использовании одного и того же алгоритма или устройства. Знание ключа позволяет просто и надежно расшифровать текст. Однако без знания ключа эта процедура может быть практически невыполнима даже при известном алгоритме шифрования. Даже простое преобразование информации является весьма эффективным средством, дающим возможность скрыть ее смысл от большинства неквалифицированных нарушителей. Сформулирована следующая система требований к алгоритму шифрования: + зашифрованный текст должен поддаваться чтению только при наличии ключа шифрования; + число операций для определения использованного ключа шифрования по фрагменту шифрованного текста и соответствующему ему открытого текста, должно быть не меньше общего числа возможных ключей; + знание алгоритма шифрования не должно влиять на надежность защиты; + незначительные изменения ключа шифрования должны приводить к существенному изменению вида зашифрованного текста; + незначительные изменения шифруемого текста должны приводить к существенному изменению вида зашифрованного текста даже при использовании одного и того же ключа; + длина шифрованного текста должна быть равна длине исходного текста; 255
Классификация методов шифрования информации
+ любой ключ из множества возможных должен обеспечивать надежную защиту информации; + алгоритм должен допускать как программную, так и аппаратную реализацию. Современные широко применяемые методы шифрования можно разделить на два наиболее общих типа: с секретным ключом и с открытым ключом. Шифрование с секретным ключом симметрично — ключ, с помощью которого текст шифруется, применяется и для его дешифровки. Шифрование с открытыми ключами осуществляется с помощью двух ключей, поэтому оно относится к асимметричным системам шифрования. Открытый ключ не является секретным; более того, его доступность для всех и каждого, например, за счет публикации в каталоге или включения в незащищенное сообщение электронной почты, имеет принципиальное значение для функционирования всей системы. Другой ключ, личный, служит для шифрования текстов, дешифруемых с помощью открытого ключа. На практике криптографические системы с секретными ключами, как правило, быстрее систем с открытыми ключами, обеспечивающими ту же степень защиты. Развитие основных типов криптографических протоколов (ключевой обмен, электронно-цифровая подпись (ЭЦП), аутентификация и т.д.) было бы невозможно без создания открытых ключей и построенных на их основе асимметричных протоколов шифрования. Основная идея асимметричных криптоалгоритмов состоит в том, что для шифрования сообщения используется один ключ, а при дешифровании — другой. Кроме того, процедура шифрования выбрана так, что она необратима даже по известному ключу шифрования — это второе необходимое условие асимметричной криптографии. То есть, зная ключ шифрования и зашифрованный текст, невозможно восстановить исходное сообщение — прочесть его можно только с помощью второго ключа — ключа дешифрования. А раз так, то ключ шифрования для отправки 256
Классификация методов шифрования информации
писем какому-либо лицу можно вообще не скрывать — зная его, все равно невозможно прочесть зашифрованное сообщение. Поэтому ключ шифрования называют в асимметричных системах «открытым ключом», а вот ключ дешифрования получателю сообщений необходимо держать в секрете — он называется «закрытым ключом». В целом система переписки при использовании асимметричного шифрования выглядит следующим образом. Для каждого из N абонентов, ведущих переписку, выбрана своя пара ключей: «открытый» Е. и «закрытый» D., где j — номер абонента. Открытые ключи известны всем пользователям сети, каждый закрытый ключ, наоборот, хранится только у того абонента, которому он принадлежит. Если абонент, скажем, под номером 7, собирается передать информацию абоненту под номером 9, он шифрует данные ключом шифрования Е 9 и отправляет ее абоненту 9. Несмотря на то, что все пользователи сети знают ключ Е 9 и, возможно, имеют доступ к каналу, по которому идет зашифрованное послание, они не могут прочесть исходный текст, так как процедура шифрования необратима по открытому ключу. И только абонент 9, получив послание, производит над ним преобразование с помощью известного только ему ключа D g и восстанавливает текст послания. Отметим, что, если сообщение нужно отправить в противоположном направлении (от абонента 9 к абоненту 7), то нужно будет использовать уже другую пару ключей (для шифрования ключ Е 7 , а для дешифрования — ключ D 7 ). Самым распространенным алгоритмом асимметричного шифрования является алгоритм RSA. Он был предложен тремя исследователями-математиками Рональдом Ривестом, Ади Шамиром и Леонардом Адельманом в 1977— 1978 гг. Разработчикам данного алгоритма удалось эффективно воплотить идею односторонних функций с секретом. Стойкость RSA базируется на сложности факторизации больших целых чисел. В 1993 г. метод RSA был обнародован и принят в качестве стандарта (PKCS # 1 : RSA Encryption standard). RSA можно применять как для шифрования/расшифрования, так и для генерации/проверки электронно-цифровой подписи. 9. зак. ьп
257
Выбор паролей
Выбор паролей Пароль — это секретное слово, известное только конкретному пользователю. При правильном использовании пароль удостоверяет личность пользователя, входящего в компьютерную сеть. Пользователь выбирает кодовую комбинацию из нескольких символов, записывает ее в память ЭВМ и затем, чтобы получить доступ к вычислительной системе, он должен будет ввести пароль с клавиатуры. Многие системы при этом выключают «печатающую головку», так что вводимый пароль не отображается на экране дисплея. При выборе пароля естественно возникает вопрос: каким должен быть его размер и стойкость к несанкционированному подбору? Чем больше длина пароля, тем большую безопасность будет обеспечивать система, так как потребуются большие усилия для его подбора. Выбор длины пароля в значительной степени определяется развитием технических средств, их элементной базы и быстродействия. В настоящее время широко применяются пароли, где количество символов в пароле больше 10. В связи с этим возникают вопросы: как и где хранить пароль, и как связать его с аутентификацией пользователя? Несмотря на самые строгие предупреждения о недопустимости хранения пароля на листке бумаги на рабочем месте, многие сотрудники именно так и поступают. Это объясняется естественной боязнью человека забыть пароль в самый неподходящий момент. На помощь приходит комбинированная система, в которой код пароля состоит из двух частей. Первая часть состоит из 3—4 знаков, которые легко запоминаются. Вторая часть содержит количество знаков, определяемое требованиями к защите и возможностями технической реализации системы. Она помещается на физический носитель и определяет ключ-пароль, расчет длины которого ведется по указанной выше методике. 258
Выбор паролей
Существует несколько правил формирования «правильных» паролей: + пароль должен быть неожиданным, лучше — случайным; + при малейшей опасности желательно сменить все пароли; + нежелательно использование одного и того же пароля в разных системах. В качестве пароля может быть использован набор ответов на М стандартных и N ориентированных на пользователя вопросов. Этот метод получил название "вопросответ". Когда пользователь делает попытку включиться в работу, система случайным образом выбирает и задает ему некоторые (или все) из этих вопросов. Пользователь должен дать правильные ответы на все вопросы, чтобы получить доступ к информации. При увеличении длины пароля нельзя увеличивать периодичность его смены на новые значения более 1 года. Коды паролей необходимо менять обязательно, так как за большой период времени увеличивается вероятность их перехвата путем прямого хищения носителя, снятия его копии, принуждения человека. Выбор периодичности необходимо определять из конкретных условий работы системы, но не реже одного раза в год. Причем дата замены и периодичность должны носить случайный характер. Худшими паролями являются очевидные слова, инициалы, географические названия и имена людей, телефонные номера, даты рождения или полные слова какого-либо языка: в языке ограниченное число слов и компьютер сможет их достаточно быстро перебрать. Ниже приведен список стандартных паролей, адаптированных к условиям России, применение которых крайне нежелательно.
Выбор паролей
260
Электронно-цифровая подпись
Электронно-цифровая подпись Развитие современных средств безбумажного документооборота, средств электронных платежей немыслимо без развития средств доказательства подлинности и целостности документа. Таким средством является электронноцифровая подпись (ЭЦП), которая сохранила основные свойства обычной подписи. Существует несколько методов построения ЭЦП, а именно: + шифрование электронного документа (ЭД) на основе симметричных алгоритмов. Данная схема предусматривает наличие в системе третьего лица — арбитра, пользующегося доверием обеих сторон. Авторизацией документа в данной схеме является сам факт шифрования ЭД секретным ключом и передача его арбитру; + использование асимметричных алгоритмов шифрования. Фактом подписания документа является шифрование его на секретном ключе отправителя; + шифрование окончательного результата обработки ЭД хеш-функцией при помощи асимметричного алгоритма. Кроме перечисленных существуют и другие методы построения схем ЭЦП: групповая подпись; неоспариваемая подпись; доверенная подпись и др. В 1991 г. в США был опубликован проект федерального стандарта цифровой подписи — DSS (Digital Signature Standard, [DSS91]), описывающий систему цифровой подписи DSA (Digital Signature Algorithm). Одним из основных критериев при создании проекта была его патентная чистота. Функции DSA ограничены только цифровой подписью, система принципиально не предназначена для шифрования данных. При генерации ЭЦП используются параметры трех групп: 1) общие параметры; 2) секретный ключ; 3) от261
Электронно-цифровая подпись
крытый ключ. Общие параметры необходимы для функционирования системы в целом. Секретный ключ используется для формирования ЭЦП, а открытый — для проверки ЭЦП. Отечественным стандартом на процедуры выработки и проверки ЭЦП является ГОСТ Р 34.10-94. Схема ЭЦП, предложенная в данном стандарте, во многом напоминает подпись в DSA. Существует следующая классификация атак на схемы ЭЦП: + атака с известным открытым ключом; + атака с известными подписанными сообщениями — противник, кроме открытого ключа, имеет и набор подписанных сообщений; + простая атака с выбором подписанных сообщений — противник имеет возможность выбирать сообщения, при этом открытый ключ он получает после выбора сообщения; • направленная атака с выбором сообщения; + адаптивная атака с выбором сообщения. Каждая атака преследует определенную цель, которые можно разделить на несколько классов: + полное раскрытие. Противник находит секретный ключ пользователя; + универсальная подделка. Противник находит алгоритм, функционально аналогичный алгоритму генерации ЭЦП; + селективная подделка. Подделка подписи под выбранным сообщением; + экзистенциальная подделка. Подделка подписи хотя бы для одного случайно выбранного сообщения. На практике применение ЭЦП позволяет выявить или предотвратить следующие действия нарушителя: 1) отказ одного из участников авторства документа; 2) модификация принятого электронного документа; 3) подделка документа; 4) навязывание сообщений в процессе передачи — противник перехватывает обмен сообщениями и модифицирует их; 5) имитация передачи сообщения. 262
Информационная безопасность в сетях ЭВМ
Информационная безопасность в сетях ЭВМ Защита данных в компьютерных сетях является одной из основных проблем в современных информационно-вычислительных системах. В настоящее время сформулировано три базовых принципа информационной безопасности, задачей которой является обеспечение: + целостности данных — защита от сбоев, ведущих к потере информации или ее уничтожению; + конфиденциальности информации; + доступности информации для авторизованных пользователей. При рассмотрении проблем, связанных с защитой данных в сети, возникает вопрос о классификации сбоев и несанкционированности доступа, что ведет к потере или нежелательному изменению данных. Это могут быть сбои оборудования (кабельной системы, дисковых систем, серверов, рабочих станций и т.д.), потери информации (из-за инфицирования компьютерными вирусами, неправильного хранения архивных данных, нарушений прав доступа к данным), некорректная работа пользователей и обслуживающего персонала. Эти нарушения работы в сети вызвали необходимость создания различных видов защиты информации. Условно их можно разделить на три класса: + средства физической защиты; + программные средства (антивирусные программы, системы разграничения полномочий, программные средства контроля доступа); + административные меры защиты (доступ в помещения, разработка стратегий безопасности фирмы и т.д.). Одним из средств физической защиты являются системы архивирования и дублирования информации. В локальных сетях, где установлены один-два сервера, чаще всего система устанавливается непосредственно в свободные слоты серверов. В крупных корпоративных сетях предпочтение отдается выделенному специализированному архивационному серверу, который автоматически ар263
Информационная безопасность в сетях ЭВМ
хивирует информацию с жестких дисков серверов и рабочих станций в определенное время, установленное администратором сети, выдавая отчет о проведенном резервном копировании. Наиболее распространенными моделями архивированных серверов являются Storage Express System корпорации Intel ARCserve for Windows. Для борьбы с компьютерными вирусами наиболее часто применяются антивирусные программы, реже — аппаратные средства защиты. Однако в последнее время наблюдается тенденция к сочетанию программных и аппаратных методов защиты. Среди аппаратных устройств используются специальные антивирусные платы, вставленные в стандартные слоты расширения компьютера. Корпорация Intel предложила перспективную технологию защиты от вирусов в сетях, суть которой заключается в сканировании систем компьютеров еще до их загрузки. Кроме антивирусных программ, проблема защиты информации в компьютерных сетях решается введением контроля доступа и разграничением полномочий пользователя. Для этого используются встроенные средства сетевых операционных систем, крупнейшим производителем которых является корпорация Novell. В системе, например, NetWare, кроме стандартных средств ограничения доступа (смена паролей, разграничение полномочий), предусмотрена возможность кодирования данных по принципу «открытого ключа» с формированием электронной подписи для передаваемых по сети пакетов. Однако такая система защиты слабомощна, так как уровень доступа и возможность входа в систему определяются паролем, который легко подсмотреть или подобрать. Для исключения неавторизованного проникновения в компьютерную сеть используется комбинированный подход — пароль + идентификация пользователя по персональному «ключу». «Ключ» представляет собой пластиковую карту (магнитная или со встроенной микросхемой — смарт-карта) или различные устройства для идентификации личности по биометрической информации — по радужной оболочке глаза, отпечаткам пальцев, размерам 264
Информационная безопасность в сетях ЭВМ
кисти руки и т.д. Серверы и сетевые рабочие станции, оснащенные устройствами чтения смарт-карт и специальным программным обеспечением, значительно повышают степень защиты от несанкционированного доступа, По мере расширения деятельности предприятий, роста численности абонентов и появления новых филиалов, возникает необходимость организации доступа удаленных пользователей (групп пользователей) к вычислительным или информационным ресурсам к центрам компаний. Для организации удаленного доступа чаще всего используются кабельные линии и радиоканалы. В связи с этим защита информации, передаваемой по каналам удаленного доступа, требует особого подхода. В мостах и маршрутизаторах удаленного доступа применяется сегментация пакетов — их разделение и передача параллельно по двум линиям, — что делает невозможным «перехват» данных при незаконном подключении «хакера» к одной из линий. Используемая при передаче данных процедура сжатия передаваемых пакетов гарантирует невозможность расшифровки «перехваченных» данных. Мосты и маршрутизаторы удаленного доступа могут быть запрограммированы таким образом, что удаленным пользователям не все ресурсы центра компании будут доступны. Прямое отношение к теме безопасности имеет стратегия создания резервных копий и восстановления баз данных. Эти операции выполняются в нерабочее время в пакетном режиме. В большинстве СУБД резервное копирование и восстановление данных разрешаются только пользователям с широкими полномочиями (права доступа на уровне системного администратора, либо владельца БД), указывать столь ответственные пароли непосредственно в файлах пакетной обработки нежелательно. Чтобы не хранить пароль в явном виде, рекомендуется написать простенькую прикладную программу, которая сама бы вызывала утилиты копирования/восстановления. В таком случае системный пароль должен быть «зашит» в код указанного приложения. Недостатком данного метода является то, что всякий раз при смене пароля эту программу следует перекомпилировать. 265
Проблемы защиты информации в Internet
Проблемы защиты информации в Internet Internet и информационная безопасность несовместны по самой природе Internet. Она родилась как чисто корпоративная сеть, однако в настоящее время с помощью единого стека протоколов TCP/IP и единого адресного пространства объединяет не только корпоративные и ведомственные сети (образовательные, государственные, коммерческие, военные и т.д.), являющиеся, по определению, сетями с ограниченным доступом, но и рядовых пользователей, которые имеют возможность получить прямой доступ в Internet со своих домашних компьютеров с помощью модемов и телефонной сети общего пользования. Как известно, чем проще доступ в Сеть, тем хуже ее информационная безопасность, поэтому с полным основанием можно сказать, что изначальная простота доступа в Internet — хуже воровства, так как пользователь может даже и не узнать, что у него были скопированы — файлы и программы, не говоря уже о возможности их порчи и корректировки. Платой за пользование Internet является всеобщее снижение информационной безопасности, поэтому для предотвращения несанкционированного доступа к своим компьютерам все корпоративные и ведомственные сети, а также предприятия, использующие технологию intranet, ставят фильтры (fire-wall) между внутренней сетью и Internet, что фактически означает выход из единого адресного пространства. Еще большую безопасность даст отход от протокола TCP/IP и доступ в Internet через шлюзы. Для решения этих и других вопросов при переходе к новой архитектуре Internet нужно предусмотреть следующее: + во-первых, ликвидировать физическую связь между будущей Internet (которая превратится во Всемирную информационную сеть общего пользования) и корпоративными и ведомственными сетями, сохранив между ними лишь информационную связь через систему World Wide Web; 266
Проблемы защиты информации в Internet
+ во-вторых, заменить маршрутизаторы на коммутаторы, исключив обработку в узлах IP-протокола и заменив его на режим трансляции кадров Ethernet; + в-третьих, перейти в новое единое адресное пространство на базе физических адресов доступа к среде передачи, привязанное к географическому расположению сети, и позволяющее в рамках 48 бит создать адреса для более чем 64 триллионов независимых узлов. В области информации дилемма безопасности формулируется следующим образом: следует выбирать между защищенностью системы и ее открытостью. Правильнее, впрочем, говорить не о выборе, а о балансе, так как система, не обладающая свойством открытости, не может быть использована.
Защита информации в локальных вычислительных сетях
Защита информации в локальных вычислительных сетях Угрозы безопасности информации в локальных вычислительных сетях (ЛВС) могут быть потенциальными и их можно разделить на случайные и преднамеренные. Кроме того, информация в процессе ввода, хранения, обработки и передачи подвергается различным случайным воздействиям. Причинами таких воздействий могут быть: + отказы и сбои аппаратуры; + помехи на линии связи от воздействий внешней среды; + ошибки человека как звена системы; + системные и системотехнические ошибки разработчиков; + структурные, алгоритмические и программные ошибки; + аварийные ситуации; + другие воздействия. Существуют также и преднамеренные угрозы, которые связаны с действиями человека, причинами которых могут быть определенное недовольство своей жизненной ситуацией, сугубо материальный интерес или простое развлечение с самоутверждением своих способностей, как у хакеров, и т.д. Особую опасность представляет собой бесконтрольная загрузка программного обеспечения в ЭВМ, в которой могут быть изменены данные, алгоритмы или введена программа «троянский конь», выполняющая дополнительные незаконные действия: запись информации на посторонний носитель, передачу в каналы связи другого абонента вычислительной сети, внесение в систему компьютерного вируса и т.д. Опасной является ситуация, когда нарушителем является пользователь системы, который по своим функциональным обязанностям имеет законный доступ к одной части информации, а обращается к другой за пределами своих полномочий. 268
Защита информации в локальных вычислительных сетях
Со стороны законного пользователя существует много способов нарушить работу вычислительной системы, злоупотреблять ею, извлекать, модифицировать или уничтожать информацию. Свободный доступ позволит ему обращаться к чужим файлам и банкам данных и изменять их случайно или преднамеренно. При техническом обслуживании (профилактике и ремонте) аппаратуры могут быть обнаружены остатки информации на магнитной ленте, поверхностях дисков и других носителях информации. Обычное стирание информации не всегда эффективно. Ее остатки могут быть легко прочитаны. При транспортировке носителя по неохраняемой территории существует опасность его перехвата и последующего ознакомления посторонних лиц с секретной информацией. Непосредственное подключение нарушителем приемной аппаратуры и специальных датчиков к цепям электропитания и заземления, к каналам связи также позволяет совершить несанкционированное ознакомление с информацией, а несанкционированное подключение к каналам связи передающей аппаратуры может привести и к модификации информации. В начале 80-х гг. были сформулированы пять основных категорий угроз безопасности данных в вычислительных сетях: 1) раскрытие содержания передаваемых сообщений; 2) анализ трафика, позволяющий определить принадлежность отправителя и получателя данных к одной из групп пользователей сети, связанных общей задачей; 3) изменение потока сообщений, что может привести к нарушению режима работы какого-либо объекта, управляемого из удаленной ЭВМ; 4) неправомерный отказ в предоставлении услуг; 5) несанкционированное установление соединения. Угрозы 1 и 2 можно отнести к утечке информации, угрозы 3 и 5 — к ее модификации, а угрозу 4 — к нарушению процесса обмена информацией. Средства защиты информации в ЛВС
Принято различать пять основных средств защиты информации: 269
Защита информации в локальных вычислительных сетях
технические — это механические, электромеханические, оптические, радио, радиолокационные, электронные и другие устройства и системы, способные выполнять самостоятельно или в комплексе с другими средствами функции защиты данных. Технические средства защиты делятся на: • физические; • аппаратные; программные — это специальные программы, включаемые в состав программного обеспечения системы, для обеспечения самостоятельно или в комплексе с другими средствами, функций защиты данных. По функциональному назначению программные средства можно разделить на следующие группы: • программные средства идентификации и аутентификации пользователей; • средства идентификации и установления подлинности технических средств; • средства обеспечения защиты файлов; • средства защиты операционной системы и программ пользователей; • вспомогательные средства; криптографические — это методы специального шифрования данных, в результате которого их содержание становится недоступным без применения некоторой специальной информации и обратного преобразования; организационные — специальные организационнотехнические и организационно-правовые мероприятия, акты и правила, осуществляемые в процессе создания и эксплуатации системы для организации и обеспечения защиты информации; + законодательные — это законодательные акты, которые регламентируют правила использования и обработки информации, и устанавливают ответственность и санкции за нарушение этих правил.
270
СЛОВАРЬ ТЕРМИНОВ Русские термины
АВМ — аналоговая вычислительная машина. АРМ — автоматизированное рабочее место, персональный компьютер, оснащенный специализированным программным обеспечением. АСУ — автоматизированная система управления. БД — база данных, совокупность связанных объектов, включая таблицы, формы, отчеты, запросы и сценарии, организованная с помощью системы управления базами данных (СУБД). Браузер — программа для просмотра Web-страниц, например, Internet Explorer, Netscape Navigator. Буфер обмена — область оперативной памяти, резервируемая операционной системой Windows для организации обмена данными между приложениями. Вектор — одномерный массив. ВОЛС — волоконно-оптическая линия связи. Гиперссылка, гипертекстовая ссылка — элемент Web-страницы, обычно выделяемый цветом и подчеркиванием. Используется для быстрого перехода к другому документу WWW. Гипертекст — документ, имеющий связи с другими документами через систему выделенных слов (ссылок). Гипертекст соединяет различные документы на основе заранее заданного набора слов. Например, когда в тексте встречается новое слово или понятие, система, работающая с гипертекстом, дает возможность перейти к другому документу, в котором это слово или понятие рассматривается более подробно. Граф — пара множеств, одно из которых описывает множество вершин, а другое множество связей между ними. Двоичный файл — файл, содержащий информацию о машинных кодах. Дерево — ориентированный граф, где все вершины, кроме корня, находятся в голове только одной дуги, корень не находится в голове ни одной из дуг и связан с вершиной дерева. Дерево каталогов — в диспетчере файлов графическое изображение структуры каталогов диска. Каталоги изображаются в виде ветвящейся структуры, напоминающей дерево. Каталог самого верхнего уровня называется корневым каталогом. Домен — термин, используемый для обозначения отдельного компьютера, отдела или целого узла, предназначенного для 271
Словарь терминов
решения определенных задач. Домены верхнего уровня обязательно должны быть зарегистрированы. Драйвер — загружаемая в оперативную память программа, управляющая обменом данными между прикладными процессами и внешними устройствами. «Железо» — аппаратное обеспечение, все физические компоненты компьютерной системы, включая периферийные устройства, печатные платы, мониторы, устройства печати и т.д. Значок — наглядное представление объекта в операционных системах семейства Windows. Интерлиньяж — межстрочный интервал или расстояние между строками в абзаце. Интернет — глобальная компьютерная сеть. Содержит множество служб, которые позволяют использовать Интернет в разнообразных целях. Наиболее важной частью Интернета в настоящее время является WWW. Интерфейс — взаимосвязь между компонентами и участниками компьютерной системы. ИСО (ISO — International Standards Organization) — международная организация по стандартизации. Каталог — элемент структуры организации файлов на диске. Каталог может содержать файлы или другие каталоги, называемые подкаталогами. Структура каталогов и подкаталогов на диске называется деревом каталогов. Кегль — размер (высота) шрифта. Кернинг — понимается настройка интервала между определенными парами символов. Кластер — минимальная единица размещения информации на диске, состоящая из одного или нескольких смежных секторов. «Клиент—сервер» — технология, разделяющая приложение СУБД на две части: клиентскую (интерактивный графический интерфейс, расположенный на компьютере пользователя) и сервер, собственно осуществляющий управление данными, разделение информации, администрирование и безопасность, находящийся на выделенном компьютере. Взаимодействие «клиент—сервер» осуществляется следующим образом: клиентская часть приложения формирует запрос к серверу баз данных, на котором выполняются все команды, а результат исполнения запроса отправляется клиенту для просмотра и использования. Колонтитул — одинаковый для группы страниц текст (графическое изображение), расположенный вне основного текста документа на полях печатной страницы. 272
Русские термины
Команда — слово или фраза, обычно расположенные в меню, которые можно выбрать для выполнения какого-либо действия. Командная строка — строка, служащая для ввода команд операционной системы, не имеющей графического интерфейса пользователя, например системы MS DOS. Компьютерный вирус — специально созданная небольшая программа, способная присоединяться к другим программам, размножаться (создавать свои копии) и выполнять нежелательные действия. Курсор выбора — пометка, показывающая, в каком месте окна, меню, диалогового окна находится пользователь в данный момент. Кэш — область памяти, управляемая кэш-контроллером и предназначенная для хранения содержимого ячеек запоминающего устройства, обращение к которым происходит наиболее часто, а также для хранения адресов этих ячеек. Использование кэша позволяет повысить производительность системы. Когда процессор обращается к какой-то ячейке запоминающего устройства, происходит проверка на наличие ее адреса в кэше. Если этот адрес там имеется, то запрашиваемая процессором информация поступает прямо из кэша, благодаря чему отпадает необходимость в обращении к запоминающему устройству. ЛВС — локальная вычислительная сеть. Макрос — последовательность нескольких команд, вызываемых нажатием одной клавиши. Макросы используются для автоматизации многократно повторяющихся действий, например, вычислений. Маршрутизатор (router) — компьютер сети, занимающийся маршрутизацией пакетов в сети, т.е. выбором кратчайшего маршрута следования пакетов по сети. Массив — упорядоченный набор переменных одинакового типа. Меню — элемент управления, состоящий из набора пунктов (обычно команд), из которого можно выбрать один пункт. Пунктом меню может быть меню следующего уровня (вложенное меню). Многозадачность — возможность компьютера работать сразу с несколькими прикладными программами одновременно. Модем — устройство, преобразующее цифровые сигналы в аналоговую форму и обратно. Используется для передачи информации между компьютерами по аналоговым линиям связи. Монитор — устройство, осуществляющее отображение информации на экране. 273
Словарь терминов
Мост — устройство, используемое для соединения локальных вычислительных сетей и обеспечивающее тем самым возможность обмена данными между ними. Мост позволяет соединять сети, использующие кабели различных типов и различные сетевые протоколы. Мультимедиа — объединение в одном документе звуковой, музыкальной и видеоинформации с целью имитации воздействия реального мира на органы чувств. НЖМД — накопители на жестком магнитном диске. Оболочка — программа, являющаяся надстройкой над другой программой или «прослойкой» между какой-либо программой и пользователем. Окно — прямоугольная область на экране, в которой отображается прикладная программа или документ. ОС (операционная система) — это комплекс программ, который загружается при включении компьютера. ОС производит диалог с пользователем, осуществляет управление компьютером, его ресурсами (оперативной памятью, местом на дисках и т.д.), запускает другие (прикладные) программы на выполнение Панель инструментов — элемент управления, представляющий собой панель с кнопками. Упрощает доступ к часто используемым командам. Папка — общий термин операционных систем семейства Windows для обозначения контейнера, который может содержать другие объекты. Папки могут быть вложены друг в друга. Чаще всего папка представляет собой каталог на диске, но существуют и другие ЕИДЫ папок. Пиксель — единица измерения разрешения экрана. Соответствует отдельной светящейся точке, цветом и яркостью которой компьютер может управлять. ПК (персональный компьютер) — электронный прибор, предназначенный для автоматизации создания, хранения, обработки и передачи информации. Политика безопасности — совокупность документированных управленческих решений, направленных на защиту информации и ассоциированных с ней ресурсов. Приложение (операционной системы) — программа для компьютера, работающая под управлением конкретной операционной системы. Принтер — устройство для вывода информации на бумагу посредством печати. Провайдер — поставщик услуг доступа в Internet. Программа — упорядоченная последовательность команд. 274
Русские термины
Прокси-сервер — компьютер, который используется для снижения нагрузки в сети и повышения быстродействия. На прокси-сервере непродолжительное время хранится информация, к которой проявляется повышенный интерес. Протокол — совокупность правил и соглашений, регламентирующих формат и процедуру между двумя или несколькими независимыми устройствами или процессами. Стандартные протоколы позволяют связываться между собой компьютерам разных типов, работающим в разных операционных системах. Разрядка — операция увеличения межбуквенного пространства для улучшения вида строки текста и выравнивания правых границ строк Расширение имени — комбинация символов после последней точки в имени файла. Расширение имени файла обычно определяет тип файла. Ресурс — логическая или физическая часть системы, которая может быть выделена пользователю или процессу. Сайт — совокупность Web-страничек, тематически связанных между собой и расположенных вместе (на одном сервере). Доменный адрес сайта всегда короче адреса страницы. Сервер — 1) программа для сетевого компьютера, позволяющая предоставить услуги одного компьютера другому компьютеру. Обслуживаемые компьютеры сообщаются с сервер-программой при помощи пользовательской программы (клиент-программы); 2) компьютер в сети, предоставляющий свои услуги другим, т.е. выполняющий определенные функции по запросам других. Сигнатура — специфическая для данного вируса комбинация байтов (портрет), с помощью которой антивирусная программа обнаруживает данный вирус. Скрипт — небольшой набор инструкций (программа или макрос), служащий для выполнения определенного задания. Для составления скриптов чаще всего используются языки Java, Visual Basic, JavaScript и Perl. Слот — стандартный разъем на системной плате. СОД — средство обработки данных. СУБД — система управления базами данных. Тег — специальная команда языка HTML, описывающая документ и его структуру, а также управляющая размещением фрагментов документа на экране компьютера при его обработке браузером. Транзакция — элементарная непрерываемая операция в механизме параллельного доступа и в функционировании СУБД в целом. 275
Словарь терминов
Трафик — поток сообщений и данных, передаваемых по коммуникационному каналу или линии связи. Единицей измерения интенсивности сетевого трафика обычно является число битов, передаваемых за определенный период времени. Триггер — хранимая процедура в SQL, которая запускается при выполнении определенных действий с таблицей. Узел — компьютер в сети, выполняющий основные сетевые функции (обслуживание сети, передача сообщений и т.п.). Файл — это поименованная область на диске или другом носителе информации. В файлах могут храниться тексты программ, документы, готовые к выполнению программы и любые другие данные. Файл-сервер — компьютер, подключенный к сети и используемый для хранения файлов, к которым обращаются пользователи клиентских систем. Хост — сетевая рабочая машина, главная ЭВМ. Сетевой компьютер, который помимо сетевых функций (обслуживание сети, передача сообщений) выполняет пользовательские задания (программы, расчеты, вычисления). Шлюз — средство межсетевого взаимодействия, размещенное между локальной сетью и более крупной системой, использующей другие коммуникационные протоколы. Шлюз представляет собой комбинацию программных и аппаратных (включая собственные процессоры и память) средств, используемых для преобразования протоколов. ЭВМ — электронная вычислительная машина. ЭД — электронный документ. Электронная почта — сетевая служба, позволяющая обмениваться текстовыми электронными сообщениями через Интернет. Современные возможности электронной почты позволяют также посылать документы HTML и вложенные файлы самых разных типов. ЭЦП — электронно-цифровая подпись. Ярлык — разновидность значка в операционных системах семейства Windows. Ярлык, в отличие от значка, не представляет объект, а только указывает на него. Английские термины Active Desktop — технологии активного рабочего окна. ActiveX — набор технических средств и приемов, средство связывания в единое целое большого числа инструментов, ко276
Английские термины
торые позволяют разработчикам Web-страниц создавать интерактивную среду. Archie — архив. Система для определения местонахождения файлов в публичных архивах сети Internet. ARP (Address Resolution Protocol) — протокол определения адреса, который преобразует адрес компьютера в сети Internet в его физический адрес. ARPA (Advanced Research Projects Agency) — бюро проектов передовых исследований министерства обороны США. ARPANET — экспериментальная сеть, работавшая в 70-е гг., на которой проверялись теоретическая база и программное обеспечение, положенные в основу Internet. В настоящее время не существует. ASCII (American Standard Code for Information Interchange) — американский стандартный код для обмена информацией, универсальный стандарт, определяющий кодировку символов двоичным кодом. ATM (Asynchronous Transfer Mode) — технология асинхронного режима передачи данных в сетях. BBS (Bulletin Board System) — электронная доска объявлений. Пользователи имеют возможность оставлять сообщения на BBS и читать имеющиеся сообщения. BIOS (Basic Input/Output System) — базовая система ввода/ вывода. В ПК BIOS представляет собой набор программ, обеспечивающих взаимодействие аппаратных средств компьютера и операционной системы с приложениями и периферийными устройствами, такими как жесткий диск, видеоадаптер и устройство печати. Bps (bit per second) — бит в секунду. Единица измерения пропускной способности линии связи. Пропускная способность линии связи определяется количеством информации, передаваемой по линии за единицу времени. BSC (Binary Synchronous Communication) — протокол двоичной синхронной связи. С2 — стандарт средств защиты информации. По определению Национального центра компьютерной безопасности (NCSC) — уровень защиты операционной системы, предусматривающий использование паролей для идентификации пользователей при открытии ими сеанса работы с системой. Cache — кэш, область памяти, управляемая кэш-контроллером и предназначенная для хранения содержимого ячеек запоминающего устройства, обращение к которым происходит наиболее часто, а также для хранения адресов этих ячеек. 277
Словарь терминов
Использование кэша позволяет повысить производительность системы. Когда процессор обращается к какой-то ячейке запоминающего устройства, происходит проверка на наличие ее адреса в кэше. Если этот адрес там имеется, то запрашиваемая процессором информация поступает прямо из кэша, благодаря чему отпадает необходимость в обращении к запоминающему устройству. CGI (Common Gateway Interface) — универсальный интерфейс шлюзов в Internet. CIE (Commission International de 1'Eclairage — Международная комиссия по освещению) — стандарт, в качестве основы которого был выбран двумерный цветовой график и набор из трех функций реакции глаза, исключающий отрицательные области и удобный для обработки. Cisco — маршрутизатор, разработанный фирмой CiscoSystems. CMY (Cyan, Magenta, Yellow) — субтрактивная система смешения цветов, применяется для отражающих поверхностей (типографских и принтерных красок, пленок и т.п.). Ее основные цвета: Cyan — голубой, Magenta — пурпурный и Yellow — желтый являются дополнительными к основным цветам RGB. CMYK (Cyan, Magenta, Yellow, blacK) — расширение системы CMY. Дополнительный канал К (от англ. BlасК) — черный Он применяется для получения более «чистых» оттенков черного. Database — база данных, совокупность связанных объектов, включая таблицы, формы, отчеты, запросы и сценарии, организованная с помощью системы управления базами данных (СУБД). DNS (Domain Name System) — доменная система имен. Распределенная система баз данных для перевода имен компьютеров в сети Internet в их IP-адреса. Domain — домен, термин, используемый для обозначения отдельного компьютера, отдела или целого узла, предназначенного для решения определенных задач. Домены верхнего уровня обязательно должны быть зарегистрированы. DPI (dots per inch) — единица измерения разрешения принтера и разрешения изображения, выражает количество точек, присутствующих в одном дюйме. DSA (Digital Signature Algorithm) — система цифровой подписи в США. DSS (Digital Signature Standard) — федеральный стандарт цифровой подписи в США. 278
Английские термины
E-mail — электронная почта, сетевая служба, позволяющая обмениваться текстовыми электронными сообщениями через Интернет. Современные возможности электронной почты позволяют также посылать документы HTML и вложенные файлы самых разных типов. Ethernet — тип локальной сети. Хороша разнообразием типов проводов для соединений, обеспечивающих пропускные способности от 2 до 10 миллионов bps (2—10 Mbps). Довольно часто компьютеры, использующие протоколы TCP/IP, через Ethernet подсоединяются к Internet. FAQ (Frequently Asked Questions) — часто задаваемые вопросы. Раздел публичных архивов сети Internet, в котором хранится информация для «начинающих» пользователей сетевой инфраструктуры. File Server — файл-сервер, компьютер, подключенный к сети и используемый для хранения файлов, к которым обращаются пользователи клиентских систем. FTP (File Transfer Protocol) — 1) протокол передачи файлов; 2) протокол, определяющий правила пересылки файлов с одного компьютера на другой; 3) прикладная программа, обеспечивающая пересылку файлов согласно этому протоколу. Gopher — интерактивная оболочка для поиска, присоединения и использования ресурсов и возможностей Internet. Интерфейс с пользователем осуществлен через систему меню. Hardware — аппаратное обеспечение, «железо», все физические компоненты компьютерной системы, включая периферийные устройства, печатные платы, мониторы, устройства печати и т.д. HDLC (High-level Data Link Control) — высший уровень управления каналом связи). HTML (HyperText Markup Language) — язык для написания гипертекстовых документов. Основная особенность — наличие гипертекстовых связей между документами, находящимися в различных архивах сети. Благодаря этим связям можно непосредственно во время просмотра одного документа переходить к другим документам. HTTP (HyperText Transfer Protocol) — протокол обмена гипертекстовой информацией. IMAP (Interactive Mail Access Protocol) — экспериментальный интерактивный почтовый протокол. В число его возможностей входит поиск текста на удаленной системе и синтаксический анализ сообщений. 279
Словарь терминов
Internet — глобальная компьютерная сеть. Содержит множество служб, которые позволяют использовать Интернет в разнообразных целях. Наиболее важной частью Интернета в настоящее время является WWW. internet — технология сетевого взаимодействия между компьютерами разных типов. IP (Internet Protocol) — протокол межсетевого взаимодействия, самый важный из протоколов сети Internet, обеспечивает маршрутизацию пакетов в сети. Iptunnel — одна из прикладных программ сети Internet. Дает возможность доступа к серверу ЛВС NetWare, с которым нет непосредственной связи по ЛВС, а имеется лишь связь по сети Internet. ISO (International Standards Organization) — международная организация по стандартизации. IP-адрес — уникальный 32-битный адрес каждого компьютера в сети Internet. LAN (Local Area Network) — локальные сети. MAN (Metropolitan Area Network) — региональные сети. MIME (Multipurpose Internet Mail Extensions) — многоцелевые расширения почты в Интернет. NetBEUI (NetBIOS Extended User Interface) — расширенный интерфейс пользователя NetBIOS, реализованный на транспортном уровне семиуровневой модели OSI драйвер сетевого устройства. Network — сеть, группа компьютеров и подключенных к ним периферийных устройств, связанных посредством коммуникационных каналов, обеспечивающих разделение файлов и других ресурсов между несколькими пользователями. Сеть может быть одноранговой, объединяющей небольшое число пользователей одного офиса или подразделения компании, локальной, объединяющей значительное число пользователей и использующей стационарные кабели и телефонные линии, региональной или глобальной, объединяющей пользователей нескольких локальных сетей, разбросанных на значительном расстоянии друг от друга. NFS (Network File System) — распределенная файловая система. Предоставляет возможность использования файловой системы удаленного компьютера в качестве дополнительного НЖМД. NNTP (Net News Transfer Protocol) — протокол передачи сетевых новостей. Обеспечивает получение сетевых новостей и 280
Английские термины
электронных досок объявлений сети и возможность помещения информации на доски объявлений сети. NTFS (NT File System) — файловая система NT. Файловая система операционной системы Windows NT, поддерживающая следующие функции: 1) имена файлов длиной до 256 символов; 2) широкий диапазон полномочий разделенного доступа к файлам; 3) журнал транзакций, обеспечивающий завершение всех процедур, связанных с обращением к файлам, при остановке операционной системы; 4) совместимость с файловыми системами FAT и HTFS. ODBC (Open Database Connectivity) — открытый доступ к базам данных, технология, позволяющая использовать базы данных, созданные другим приложением при помощи SQL. OLE (Object Linking and Embedding) — объектное связывание и внедрение. OLE разработан компанией Microsoft и является стандартом для создания динамических автоматически обновляемых связей между документами, или внедрения объекта, созданного в одном приложении, в документ, с которым работает другое приложение. OLTP (On-Line Transaction Processing) — оперативная обработка транзакций. Приложения этого типа в основном используются с развитыми средствами манипулирования данными, их работа связана с интенсивным потоком транзакций. OSI (Open Systems Interconnection) — базовая модель взаимодействия открытых систем. Эта модель является международным стандартом для передачи данных. PC (Personal Computer) — персональный компьютер, электронный прибор, предназначенный для автоматизации создания, хранения, обработки и передачи информации. Ping — утилита проверка связи с удаленной ЭВМ. POP (Post Office Protocol) — протокол «почтовый офис». Используется для обмена почтой между хостом и абонентами. Особенность протокола — обмен почтовыми сообщениями по запросу от абонента. PРР (Point to Point Protocol) — протокол канального уровня позволяющий использовать для выхода в Internet обычные модемные линии. Относительно новый протокол, является аналогом SLIP. RAD (Rapid Application Development) — быстрая разработка приложений, подход к разработке приложений, предусматривающий широкое использование готовых компонентов и/или приложений, и пакетов (в том числе от разных производителей). 281
Словарь терминов RAID (Redundant Array of Inexpensive Disk) — избыточный блок недорогих дисков, технология обеспечения отказоустойчивости системы на случай выхода из строя одного или более дисков, состоящая в использовании нескольких дисков, объединенных в единый массив. RAM (Random Access Memory) — оперативная память. RFC (Requests For Comments) — запросы комментариев. Раздел публичных архивов сети Internet, в котором хранится информация о всех стандартных протоколах сети Internet. RGB (Red, Green, Blue) — аддитивная система смешения цветов. В основе ее лежат три цвета: Red — красный, Green — зеленый и Blue — синий. С помощью этих трех основных цветов можно получить почти весь видимый спектр. RSA — самый распространенный алгоритм асимметричного шифрования. Он был предложен тремя исследователямиматематиками Рональдом Ривестом, Ади Шамиром и Леонардом Адельманом. Running Head — колонтитул (одинаковый для группы страниц текст (графическое изображение), расположенный вне основного текста документа на полях печатной страницы). Server — сервер: 1) программа для сетевого компьютера, позволяющая предоставить услуги одного компьютера другому компьютеру. Обслуживаемые компьютеры сообщаются с сервер-программой при помощи пользовательской программы (клиент-программы); 2) компьютер в сети, предоставляющий свои услуги другим, т.е. выполняющий определенные функции по запросам других. SGA (System Global Area) — глобальная системная область. В SGA содержатся буферы блоков данных и динамически разделяемая область — пул. SLIP (Serial Line Internet Protocol) — протокол канального уровня, позволяющий использовать для выхода в Internet обычные модемные линии. SMTP (Simple Mail Transfer Protocol) — простой протокол передачи почты. Основная особенность протокола SMTP — обмен почтовыми сообщениями происходит не по запросу одного из хостов, а через определенное время (каждые 20—30 минут). Почта между хостами в Internet передается на основе протокола SMTP. Source routing — целевая маршрутизация, т.е. маршрутизация, основанная на конкретных сетевых адресах. SQL (Structured Query Language) — структурированный язык запросов, стандартный язык наиболее распространенных в настоящее время реляционных СУБД. 282
Английские термины TCP (Transmission Control Protocol) — протокол контроля передачи информации в сети, TCP — протокол транспортного уровня, один из основных протоколов сети Internet. Отвечает за установление и поддержание виртуального канала (т.е. логического соединения), а также за безошибочную передачу информации по каналу. TCP/IP (Transmission Control Protocol / Internet Protocol) — технология межсетевого взаимодействия. Под TCP/IP обычно понимается все множество протоколов, поддерживаемых в сети Internet. Telnet — удаленный доступ. Дает возможность абоненту работать на любой ЭВМ сети Internet как на своей собственной. Traffic — трафик, поток сообщений и данных, передаваемых по коммуникационному каналу или линии связи. Единицей измерения интенсивности сетевого трафика обычно является число битов, передаваемых за определенный период времени. Transparent routing — прозрачная маршрутизация, т.е. маршрутизация вне зависимости от их сетевых адресов. UDP (User Datagram Protocol) — протокол транспортного уровня, в отличие от протокола TCP, не обеспечивает безошибочной передачи пакета. URL (Universal Resource Locator) — универсальный способ адресации ресурсов в Internet. UUCP — протокол копирования информации с одного Unixхоста на другой. UUCP не входит в состав протоколов TCP/IP, но тем не менее все еще широко используется в сети Internet. На основе протокола UUCP построены многие системы обмена почтой, до сих пор используемые в сети. VBA (Visual Basic for Applications) — Visual Basic для Приложений, разновидность (диалект) объектно-ориентированного языка программирования Visual Basic, встраиваемая в программные пакеты. WAIS (Wide Area Information Servers) — мощная система поиска информации в базах данных сети Internet по ключевым словам. WAN (Wide Area Network) — глобальные сети. Web-страница — отдельный документ в WWW, как правило, написанный на языке HTML. Web-страница может содержать текст, графику, звуковое сопровождения, анимацию и другие мультимедийные объекта, а также гиперссылки. Web-узел — группа тематически связанных Web-странкц и сопроводительных файлов, располагающаяся на одном компью283
Словарь терминов
тере. Страницы Web-узла обычно связаны между собой с помощью гиперссылок. WWW (World Wide Web) — «всемирная паутина». Система распределенных баз данных, обладающих гипертекстовыми связями между документами. Основой WWW является протокол передачи гипертекстовых данных (HTTP). WYSIWYG (What You See Is What You Get) — принцип соответствия экранного и печатного представления документа. Приложения, соблюдающие этот принцип, позволяют наблюдать документ на экране в таком виде, в каком он будет получен при печати на принтере.
284
285
286
287
Серия «Сдаем экзамен» Михаил Валерьевич Семенов
ИНФОРМАТИКА: ЭКЗАМЕНАЦИОННЫЕ ОТВЕТЫ
Ответственный редактор Редактор Художник Корректор Компьютерная верстка
Е. Баранникова В. Ковалев А. Вартанов Н. Чебукина А. Алейниковой