9932

Безопасность операционных систем. Классификация программных продуктов

Реферат

Информатика, кибернетика и программирование

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

Русский

2013-03-20

4.84 MB

119 чел.

Безопасность операционных систем

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

Классификация программных продуктов

Типичные применения ЭВМ

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

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

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

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

Четвертая категория прикладных задач получила название систем реального времени. В системе реального времени основное значение имеет время ответа вычислительной системы. К этой категории прикладных задач обычно относят коммутацию сообщений, управление производством и сбор данных. Когда обрабатывается программа, работающая в реальном времени, то система, учитывая необходимость особого внимания к запросам этой программы, приписывает ей высокий рабочий приоритет.

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

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

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

Для каждого вида ЭВМ разработано в настоящее время большое количество программ.

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

К основным функциям системы программного обеспечения современных ЭВМ можно отнести следующие:

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

Существуют различные категории программ, которые значительно отличаются по своему назначению, об этом мы упомянули во введении.

Сейчас определим характеристики основных типов программных продуктов, а затем охарактеризуем каждый из них (см. рис. 1).


Рис. 1


Основные типы программных продуктов.

  1.  Системное программное обеспечение. Системные программы предназначены для эксплуатации и технического обслуживания ЭВМ, управления и организации вычислительного процесса при решении любой конкретной задачи на ЭВМ и т.д. К ним относятся:
    1.  Базовое ПО:
      1.  Операционная системакомплекс программ, предназначенный для эффективного использования всех средств ЭВМ в процессе решения задачи и организации взаимодействия пользователя с ЭВМ (MS DOS, Windows 95/98/Me).
      2.  Операционная оболочка – не являющаяся самостоятельной ОС, используемая совместно с другими ОС она не является (Windows 3.11).
      3.  Сетевая операционная система – ОС для работы в компьютерной сети, ориентирована на мощные ПЭВМ производственного назначения (Windows NT 4/2000/XP).
    2.  Сервисное ПО – служебные программы, выполняющие различные полезные для пользователя операции для повышения эффективности работы и оптимизации ежедневного использования компьютера.
      1.  Программы диагностики работоспособности компьютера – набор программ, предназначенных для выявления неполадок в работе компьютера, (CheckIt, BenchMark).
      2.  Антивирусные программы – программы, предназначенные для борьбы с компьютерными вирусами (Dr.Web, AVP, Norton AntiVirus).
      3.  Программы обслуживания – программы тестирования компьютерных систем, исправления обнаруженных дефектов или оптимизации работы некоторых устройств ПЭВМ (Norton Utilities).
      4.   Программы архивирования данных – средство для создания, управления и контроля за архивными файлами (архивный файл – набор из одного или нескольких файлов, помещенных в сжатом виде в единый файл, из которого их потом можно извлечь в первоначальном виде).
      5.  Программы обслуживания сети – программы, предназначенных для выявления неполадок в работе компонентов сети.
  2.  Пакеты прикладных программ – программы предназначены для решения прикладных задач какой-либо отрасли техники, науки, медицины, сельского хозяйства и т.д.
    1.  Проблемно-ориентированные ППП – класс программ, предназначенный для решения одной проблемной задачи в разных сферах деятельности человека (1Сбухгалтерия).
    2.  Методо  ориентированные ППП – класс программ, предназначенный разных задач в узкой сфере деятельности (Algoritm, MathCad, Mathematica, MathLab, Maple)
    3.  ППП общего назначения – программы для использования широким кругом пользователей, как профессионалов, так и непрофессионалов (Word, Excel, Access).
    4.  Интеллектуальные системы – системы искусственного интеллекта, т.е. системы, самостоятельно добывающие информацию и принимающие решения.
    5.  ППП автоматизированного проектирования – класс программ, предназначенный для автоматизации инженерных расчётов (AutoCad).
    6.  Офисные ППП – программы, предназначенные для автоматизации и оптимизации документооборота, такие как органайзеры, программы-переводчики, средства проверки орфографии, средства распознавания текстовой информации, коммуникационные ППП (Сократ, PromtXP, FineReader, Outlook).
    7.  Программные средства мультимедиа – программы предназначенные для работы с изображением и (или) звуком (графические, 3D, видео, звуковые редакторы, игры, плееры).
    8.  Настольные издательские системы – программы для подготовки и оформления печатных изданий (Adobe PageMaker).
  3.  Инструментарий технологии программирования – комплексы программ и прочих средств, предназначенные для разработки и эксплуатации программ на конкретном языке программирования для конкретного вида ЭВМ.
    1.  Языки программирования – среды для разработки программных проектов с использованием тех или иных языков программирования (Pascal, Basic, C++).
    2.  Средства создания информационных систем – к этому классу относятся системы управления базами данных (СУБД) и средства доступа к данным, а так же базы знаний (SQL Server, сценарные языки, Web-сервер).


Назначение операционных систем.

Определение операционной системы

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

Кроме операционной системы в состав программного обеспечения ЭВМ входят также комплексы программ технического обслуживания ЭВМ и пакеты различных прикладных программ.

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

ОПЕРАЦИОННАЯ СИСТЕМА (ОС) – совокупность программных средств, обеспечивающая управление аппаратной частью компьютера и прикладными программами, а также их взаимодействие между собой и пользователем.

Если говорить об операционной системе ПЭВМ, то следует выделить две основные задачи, решаемые ею.

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

Общение с ПЭВМ обеспечивается с помощью команд. Каждая команда представляет собой краткое предписание, определяющее, какую операцию и над каким объектом (программой, файлом) ОС должна выполнить.

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

Вторая задача - организация взаимодействия всех блоков ПЭВМ в процессе выполнения программы, и в частности:

размещение в ОЗУ данных и результатов решения задачи;

при использовании в программе файлов данных размещение их на диске в соответствии с требованием программы и т.д.;

- своевременное включение в работу различных блоков и устройств ПЭВМ по требованию программы и пр.

Таким образом, при выполнении программы ОС играет роль диспетчера вычислительного процесса.

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


Ресурсы системы

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

Ресурсы аппаратной части

Ресурсы аппаратной части относятся непосредственно к самой вычислительной системе и включают центральное обрабатывающее устройство (Central Processing Unit-CPU), основную память, устройства ввода-вывода (IO), время работы канала ввода-вывода и емкость запоминающих устройств прямого доступа. Каждому типу устройства присущ показатель «стоимость / производительность», который определяет его экономическое влияние на эффективность всей системы. Суть состоит, конечно, в том, что операционная система в первую очередь должна позаботиться о более полной загрузке компонентов, имеющих высокий показатель «стоимость/производительность» (таких, как центральное обрабатывающее устройство), чем компонентов с низким показателем (например, таких, как выходной перфоратор). Именно поэтому в большинстве операционных систем имеются программы планирования работы центрального обрабатывающего устройства и распределения памяти, что позволяет эффективно управлять выполнением заданий в соответствии с целями, поставленными перед системой.

Информационные ресурсы

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

  1.  информация может так храниться внутри операционной системы, что она непосредственно доступна пользователю, и
  2.  информация может требуемым образом совместно использоваться различными пользователями.

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

Человеческие ресурсы

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

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

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

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

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

Ещё одна категория лиц, имеющих дело с операционной системой (пусть даже не напрямую) это – конечный пользователь, т.е. лицо, обращающееся к ПЭВМ для решения конкретной задачи с помощью прикладной программы либо для получения информации, например из некоторой базы данных. Пользователь подобной категории может вообще не иметь никакого специального образования в области вычислительной техники и программирования. К примеру, конечным пользователем является пассажир, пользующийся на железнодорожном вокзале услугами автоматизированной информационно-справочной системы. Он сам непосредственно общается с ЭВМ, вводя в нее свои данные и получая ответ. Единственное требование к такому пользователю – знать все цифры и все буквы алфавита.


Производительность системы

Показатель эффективности работы вычислительной системы называется производительностью системы. Хотя производительность системы связана с затратами на эксплуатацию конкретной вычислительной установки, ее обычно рассматривают как функцию следующих трех факторов: пропускной способности, времени ответа и коэффициента готовности (см. рисунок 2).

 

Пропускная способность

Пропускная способность связана с объемом работы, выполняемой вычислительной системой в определенный период времени. В общем случае пропускная способность характеризует как быстродействие аппаратуры, так и качество программного обеспечения и особенно важна в условиях массовых производственных вычислений.

Время ответа

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

Коэффициент готовности

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

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


Классификация операционных систем

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

Наиболее известными являются следующие виды ОС:

  1.  MS DOS – Microsoft® Disk Operation System
  2.  ОС семейства Microsoft® Windows 95 / 98 / Me
  3.  Сетевые ОС семейства Microsoft® Windows® NT 4 / 2000 / XP
  4.  Сетевые ОС Novell® NetWare
  5.  ОС для мэйнфреймов: VM ESA, VMSP 5, VMSP 6, OC EC, CBM
  6.  UNIX
  7.  LINUX
  8.  ОС для компьютеров Apple® MacOS
  9.  OS/2 и др.


Анализ состава операционных систем

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

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

Управление заданиями связано с той управляющей информацией (т. е. с языком управления заданиями или с управляющими картами), которая используется для управления функционированием операционной системы и для выбора характера реакций операционной системы на запросы, поступающие на обслуживание.

Для выполнения программ все они должны быть загружены в основную память. Редактирование связей относится к процессу объединения программных модулей перед их выполнением, а загрузка связана с физическим процессом подготовки задания к выполнению.

Управление программами связано с таким формированием структуры программы, после которого она может выполняться в отведенной для нее части памяти. Когда размер программы превышает объем выделенной памяти, программа должна быть так сегментирована, чтобы сегменты, не используемые в текущий момент, могли быть размещены во внешней памяти, например в устройствах прямого доступа. Когда требуется сегмент, находящийся во внешней памяти, он считывается «поверх» сегмента, расположенного в основной памяти. Такое сегментирование программы называется наложением, оно выполняется автоматически операционной системой под воздействием управляющей информации, заданной пользователем.

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

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

На многих вычислительных установках пользователи, находящиеся на значительном расстоянии, могут иметь доступ к вычислительной машине с помощью телекоммуникационного оборудования. Доступ обычно организуется в одной из следующих форм:

  1.  дистанционный ввод задания и дистанционный вывод результатов выполнения задания
  2.  разделение времени.

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

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

Базой данных называют имеющий специальное имя набор физических единиц данных, организованных как в виде включенных в систему, так и в виде автономных файлов. Обычно пользователь имеет доступ к базе данных в рамках специальной системы (СУБД). Работая с базой данных, пользователь с помощью языка описания базы данных формирует дескрипторы элементов данных, и эти дескрипторы хранятся в справочнике базы данных. Доступ к информации, находящейся в базе данных, реализуется с помощью языка команд базы данных.

Большинство операционных систем снабжено набором вспомогательных программ-утилит, позволяющих выполнять те задачи, которые используются часто, но не являются неотъемлемыми частями только конкретного задания пользователя. В число таких программ обычно включают программы копирования содержимого магнитных лент, инициализации дисковой памяти и выдачи распечатки содержимого основной памяти (т. е. дампа оперативной памяти на магнитных сердечниках) и др.

Генерация(инсталляция) и сопровождение системы связаны с процессом, который обычно находится в ведении системного программиста. В ходе генерации затребованные, альтернативные и дополнительные компоненты операционной системы объединяются в законченную операционную систему, ориентированную на потребности данной конфигурации машины. Генерация системы требуется в том случае, когда поставщик операционной системы включает в нее компоненты, не всегда необходимые всем вычислительным установкам, на которых будет использоваться данная операционная система. Сопровождение подразумевает модификацию и усовершенствование составных частей операционной системы за счет постоянного внесения изменений в их структуру, системного анализа, отыскания и устранения ошибок.


Состав операционной системы MS DOS

Загрузка ОС MS DOS

В постоянной памяти компьютера (постоянном запоминающем устройстве, ПЗУ) компьютера находится базовая система ввода-вывода (BIOS). Эта часть операционной системы является “встроенной” в компьютер. Её назначение состоит в выполнении универсальных услуг операционной системы, связанных с осуществлением ввода-вывода. Базовая система ввода-вывода содержит также тест функционирования компьютера, проверяющий работу памяти и устройств компьютера при включении его электропитания. Кроме того, базовая система ввода-вывода содержит программу вызова загрузчика операционной системы.

Загрузчик операционной системы – это очень короткая программа, находящаяся в первом секторе загрузочного диска. Функция этой программы заключается в считывании в память ещё двух модулей операционной системы, которые и завершают процесс загрузки DOS.

На жёстком диске загрузчик операционной системы состоит из двух частей. Это связано с тем, что жёсткий диск может быть разбит на несколько разделов (логических дисков). Первая часть загрузчика находится в первом секторе жёсткого диска, она выбирает, с какого из разделов жёсткого диска следует продолжать загрузку. Вторая часть загрузчика находится в первом секторе этого раздела, она считывает в память модули DOS и передаёт им управление.

Дисковые файлы IO.SYS и MSDOS.SYS загружаются в память загрузчиком операционной системы и остаются в памяти компьютера постоянно. Файл IO.SYS представляет собой дополнение к базовой системе ввода-вывода (BIOS) в ПЗУ. Файл MSDOS.SYS реализует основные высокоуровневые услуги DOS.

Далее с того же диска читается файл конфигурации системы CONFIG.SYS и в соответствии с указаниями. содержащимися в файле CONFIG.SYS, загружаются драйверы устройств и устанавливаются параметры операционной системы. Если файл CONFIG.SYS отсутствует, все параметры устанавливаются по умолчанию.

После этого с диска, с которого загружается операционная система, читается командный процессор (файл COMMAND.COM) и ему передаётся управление. Командный процессор выполняет командный файл AUTOEXEC.BAT, если этот файл имеется в корневом каталоге диска, с которого загружается операционная система. В файле  AUTOEXEC.BAT указывают команды и программы. выполняемые при каждом запуске компьютера.

После выполнения файла AUTOEXEC.BAT процесс загрузки операционной системы заканчивается.

Настройка в BIOS Setup

Программу BIOS Setup (CMOS Setup) многие называют просто BIOS, что не только неверно как в техническом, так и в историческом плане, но и даже не может быть использовано в качестве сокращения, так как BIOS - Basic Input/Output System - переводится с английского как базовая система ввода-вывода и является иным понятием. Вопреки распространенному заблуждению BIOS и BIOS Setup появились не одновременно с IBM PC. Первая была создана раньше первого персонального компьютера IBM, а вторая - позже.

Как известно, любая вычислительная система состоит из аппаратного и программного обеспечения. И BIOS, и BIOS Setup, безусловно, относятся к ПО, но к такому, которое ближе всего к «железу». BIOS обязательно включает в себя драйверы стандартного набора устройств, позволяющие прикладным программам единообразно обращаться к ресурсам компьютеров с различной аппаратной конфигурацией, и программу «инициализации», призванную оживить машину после включения. Благодаря драйверам прикладным программам не приходилось «задумываться» о том, что именно выполняет, скажем, опрос клавиатуры - центральный процессор (например, в компьютерах ZX Spectrum, «Радио РК-86») или специализированный контроллер (в частности, в IBM PC), или о том, каков тип контроллера дисплея или дисковода. А программа «инициализации» приводила в исходное состояние набор констант драйверов, а также в зависимости от конфигурации ПК загружала подходящие операционную систему (IBM PC XT, IBM PC AT), интерпретатор языка программирования, дополненный набором команд управления обменом с магнитофоном (ZX Spectrum, IBM PC), или системный монитор, обеспечивающий самый минимум пользовательских функций («Радио РК-86»).

Одна из первых ОС для 8-разрядных персональных компьютеров CP/M-80 состояла из трех частей: BIOS, обеспечивающей ввод с клавиатуры, вывод на экран и чтение-запись сектора 8- или 5-дюймовой дискеты; BDOS - ядра ОС, поддерживающего файловые функции; CCP - процессора консольных команд, позволяющего пользователю управлять компьютером с помощью командной строки. Первым персональным компьютером с открытой архитектурой стал IBM PC. Более того, разработчики, стремясь увеличить популярность «персоналки», тщательно документировали как BIOS, так и аппаратную конфигурацию, вследствие чего значение драйверов BIOS существенно уменьшилось. Когда распределение адресов портов стало фиксированным, определились типы контроллера дисплея и клавиатуры, а структура видеопамяти была стандартизирована, то обращение прикладных программ к ресурсам компьютера через BIOS оказалось необязательным. Например, аккуратно введенная компанией IBM в BIOS функция рисования точки использовалась настолько редко, что в разработанном позднее расширении VideoBIOS (VESA) ее поддержка вообще была объявлена необязательной.

Иногда BIOS называют операционной системой, что также неверно. Ее основная задача заключается в том, чтобы дать возможность прикладным программам абстрагироваться от аппаратных особенностей конкретного компьютера, например от типа жесткого диска. Цель же ОС - «отойти» от низкоуровневого распределения ресурсов, например дискового пространства. BIOS современных компьютеров записана во флэшпамять - разновидность перепрограммируемого ПЗУ, но скорость доступа к такой памяти низка, и потому для ускорения работы, как правило, производится перезапись содержимого флэш в оперативную память.

Загрузка ОС начинается в реальном (16-разрядном) режиме, на работу в котором настроено и большинство драйверов BIOS, именно через BIOS работает, в частности, MS DOS. Но большинство операционных систем функционируют в защищенном режиме, и поэтому они обычно вообще отключают драйверы BIOS и используют собственные драйверы защищенного режима, чему способствует также и стандартизация аппаратной части IBM PC совместимого компьютера.

Сейчас интерпретатор Бейсика или монитор консольных команд в микросхеме ROM BIOS уже не размещают, но теперь там присутствуют другие программы, например POST и BIOS Setup. Программа тестирования работоспособности аппаратуры компьютера POST (Power On Self Test) начинает действовать сразу же после включения питания и до загрузки ОС. Такая процедура весьма актуальна для компьютера с открытой архитектурой. В случае возникновения неисправности пользователю какимлибо способом выдается сообщение: надписью на экране, гудками из динамика, цифрами на специальном табло или даже человеческим голосом, заранее записанным в микросхему flash-памяти.

Программа BIOS Setup появилась не сразу. Собственно, компьютер с открытой архитектурой не может обойтись без функции настройки набора драйверов на имеющуюся аппаратуру. В IBM PC и IBM PC XT, строго говоря, BIOS Setup также была, но... в аппаратном виде, а именно в виде набора dip-переключателей, с помощью которых устанавливались объем оперативной памяти, типы дисководов и жестких дисков, наличие математического сопроцессора и др. В IBM PC AT (286) было введено новшество - встроена микросхема, выполненная по технологии КМОП (CMOS) , питавшаяся от батарейки. Ее функциональную основу составляли часы-календарь, так что при перезагрузке ПК больше не требовалось каждый раз вводить дату и время. Кроме того, микросхема содержала несколько десятков однобайтовых ячеек памяти, которые было решено использовать вместо dip-переключателей для хранения сведений об особенностях аппаратной конфигурации.

Считывать информацию из этих ячеек, как и с dip-переключателей, могла, естественно, сама BIOS, а вот для записи понадобилась специальная утилита, и ее назвали BIOS Setup. Первоначально эти утилиты поставлялись на дискете с каждым компьютером так же, как сейчас почти все драйверы даются на CD-ROM. Но поскольку производители использовали отдельные ячейки в различных целях, программа для одного компьютера могла «испортить» установки другого. А порой невозможно было загрузить программу с дискового накопителя, если последний становился недоступен вследствие порчи содержимого ячейки с данными о нем, скажем, из-за выхода батарейки из строя. Поэтому на модели AT386 и поздних AT286 стали располагать BIOS Setup уже в той же микросхеме, что и саму BIOS. Чтобы запустить эту программу, нужно было нажать определенную комбинацию клавиш (обычно клавишу <Del>) после прохождения POST, а в эпоху безраздельного господства текстового режима - нередко и в любое другое время. Если же в машине установлены RAID или SCSI-контроллеры, то они, как правило, содержат собственные утилиты конфигурации RAID Setup или SCSI Setup, также вызываемые в процессе загрузки компьютера определенной комбинацией клавиш.

Число ячеек КМОП - памяти не может превышать 114, так как на номер отводится 7 бит, а первые 14 адресов заняты часами. Значит, если программе BIOS Setup требуется хранить большее количество информации, часть сведений может размещаться во flash-памяти. А вот количество установок, которые нужно сохранять, увеличилось по сравнению со временем появления первых программ BIOS Setup в несколько раз. Теперь эта программа должна помочь решить несколько задач: настроить установки в соответствии с имеющейся аппаратной конфигурацией, добиться максимальных производительности и устойчивости системы, получить информацию о состоянии последней, а также обеспечить защиту паролем.

Главное меню программы BIOS Setup выглядит примерно так, как показано на рис. 3.

Рисунок 3. Главное меню BIOS Setup

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

Если после экспериментов ПК перестал подавать признаки жизни, необходимо выключить его питание, снять крышку корпуса системного блока и обнулить содержимое микросхемы CMOS, переставив на системной плате должную перемычку (не забудьте потом вернуть ее на место). Как правило, такое состояние CMOS соответствует наиболее устойчивому режиму работы компьютера, не претендующему, однако, на максимальную производительность.

Иногда в главном меню присутствует команда Load Fail-Safe Defaults (Load BIOS Defaults), играющая ту же роль. Если стабильность работы компьютера вызывает нарекания, в качестве отправной точки лучше использовать именно эту установку. Когда же система функционирует корректно, то имеет смысл сначала выполнить команду Load Optimized Defaults (Load Setup Defaults), и тогда будут загружены установки, обеспечивающие более высокую производительность, причем без ущерба для стабильности. Впрочем, настройка параметров вручную обычно позволяет добиться более высокой производительности системы.

Раньше частота работы процессора определялась установкой перемычек, да и сейчас иногда имеет место «смешанное» управление этим параметром. В современных ПК настройка частоты нередко производится программой BIOS Setup (рис. 4).

Рисунок 4. Настойка частоты процессора

Для этого предусмотрено подменю CPU Ratio/Voltage Control или SoftMenu, обеспечивающее улучшение параметров системы, и потому начинать следует именно с него. Частота работы процессора равна произведению коэффициента умножения на частоту внешней шины (FSB), которая колеблется от 66 или 100 МГц у устаревших ЦП, а также у Celeron, до 200 МГц у процессоров самых последних моделей.

Большинство выпускаемых в настоящее время процессоров имеют частоту FSB, равную 133 либо 166 МГц (рис. 5).

Рисунок 5.

Однако процессоры AMD способны передавать по две порции данных за такт, а процессоры семейства Pentium-4 - по четыре. (Из маркетинговых соображений фирмы приводят не реальную частоту шины, а частоту передачи данных.) Чтобы вычислить коэффициент умножения, следует брать, естественно, реальную тактовую частоту FSB. Но надо помнить, что у процессоров Intel коэффициент умножения, как правило, заблокирован и не поддается регулировке, а у процессоров AMD частота не равна рейтинговому числу.

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

Наиболее точной настройке поддается, как правило, частота FSB (в отдельных случаях - частота памяти). Обычно установить ее можно в зависимости от используемой системной платы либо в SoftMenu, либо в Advanced Chipset Features. Существует и такой способ «разгона», при котором частота FSB увеличивается, а коэффициент умножения частоты процессора пропорционально уменьшается. При этом процессор продолжает работать на той же частоте, но производительность системы возрастает. Особенно актуален такой метод тогда, когда частота памяти выше частоты FSB.

Внутренняя частота работы процессора - величина достаточно консервативная, если, конечно, разработчик специально не промаркировал процессор ниже его возможностей, чтобы обеспечить баланс между спросом и предложением. А вот частота внешней шины выбирается с учетом неизбежного разброса конструктивных особенностей системных плат, поэтому на технологически качественной плате процессор может работать с частотой FSB, которая существенно выше номинальной. Кстати, эффект роста производительности при увеличении только частоты FSB хорошо известен, и его использует компания AMD в своей системе рейтингов.

Очень важна согласованная работа процессора и оперативной памяти. В большинстве случаев BIOS Setup позволяет установить частоту FSB с точностью до 1 МГц, а частоту памяти - в определенном соотношении с ней, которое в зависимости от типа платы составляет от 0,5 до 2 и выражается либо в процентах, либо как отношение целых чисел.

Оптимальным режимом считается синхронная работа, когда частота тактирования памяти равна частоте FSB. Обычно в списке соотношений наряду с коэффициентами приводятся еще два режима: Auto (соответствует синхронной работе памяти и FSB) и By SPD (рис. 4).

Рисунок 6

Режим By SPD жестко задает параметры работы памяти в соответствии с параметрами, записываемыми производителями в небольшую микросхему (SPD - Serial Presence Detect), устанавливаемую на каждый модуль памяти. Эти параметры гарантируют устойчивую работу каждого из модулей достаточно большой партии, но могут не быть оптимальными для модуля в конкретной системе. Тому две причины. Первая заключается в том, что характеристики модулей, входящих в одну партию, могут различаться, а в SPD порой записываются характеристики наихудшего, и бывает, что доставшийся пользователю модуль памяти обладает более высокими параметрами.

Вторая причина связана с соотношением между частотами памяти и FSB, поэтому если выбранная частота FSB равна частоте памяти, записанной в SPD, то изменять соотношение частот не следует - система от этого быстрее работать не станет. Вследствие конструктивных особенностей максимальная средняя скорость передачи данных оперативной памяти примерно в 1,5 раза ниже пиковой, и значит, при подборе конфигурации не следует брать память с рабочей частотой ниже частоты FSB. Также не имеет смысла применять память типа DDR, имеющей частоту в 1,5 раза выше частоты FSB процессоров AMD или в 3 раза - процессоров Intel.

Для моделей Rambus соотношение частот несколько иное - эффективная частота памяти должна в 2 раза превосходить эффективную частоту внешней шины процессора. Если же паспортная частота памяти типа DDR лишь немного превышает частоту FSB, например 200 МГц против 166 МГц (а бывает, например, память со стандартным режимом 175 МГц), то появляется повод задуматься: в зависимости от используемых приложений более эффективной может оказаться установка синхронного режима. В последнем случае, когда память работает на частоте несколько ниже номинала, целесообразно будет попытаться уменьшить времена задержек, обозначаемые Memory Timings (рис. 7).

Рисунок 7.

Сначала следует выписать их величины, установленные по SPD, а затем поэтапно уменьшать задержки. Причем после каждого изменения нужно перезагружать компьютер и проверять стабильность работы после загрузки операционной системы (желательно однозадачной, чтобы минимизировать возможный ущерб от потери данных). Это занятие довольно трудоемкое, и потому при проведении такой настройки рекомендуется тщательно записывать каждый шаг. Если же возникнет нестабильность в работе, то следует вернуться к предыдущему значению.

Анализ показывает, что прирост скорости обмена может быть довольно существенным. Чтобы получить возможность изменять соответствующие величины, скорее всего, сначала потребуется установить режим Expert. В большинстве случаев при наличии нескольких модулей памяти с различными характеристиками BIOS самостоятельно может определить их только для первого. Чтобы это не приводило к неустойчивой работе ПК, следует либо подбирать настройки вручную, либо ставить в первый разъем самый медленный из имеющихся модулей памяти. В старых компьютерах настройки временных интервалов (таймингов) для памяти зачастую назывались DRAM Read Burst Timing и DRAM Write Burst Timing и представлялись в виде X-Y-Y-Y. Первая цифра обозначала время произвольного доступа, а остальные - последовательного. В настоящее время тайминги произвольного доступа настраиваются более точно - двумя или тремя цифрами, а в установках скорости последовательного надобность отпала - SDRAM уже была предназначена для работы с Y=1, т. е. могла выдавать данные на каждый такт, а DDR - даже дважды за такт. Если на компьютере используется современная многозадачная операционная система, то, пожалуй, все, что может повлиять на его производительность, здесь уже описано. Однако при работе в DOS также важны настройки режимов работы жестких дисков и теневой памяти.

Настройки, производимые первыми программами BIOS Setup, дошли до нас практически в неизменном виде. Правда, если раньше «экран» настроек был единственным (нередко его можно было вызвать в любой момент работы компьютера), то сейчас это лишь одно из многочисленных подменю. Здесь устанавливаются дата и время, типы используемых дисковых накопителей, а также приводится объем установленной памяти. Обычно из этого подменю разрешается запустить процедуру определения параметров подключенных жестких дисков, которая раньше имела отдельный вход из главного меню - IDE HDD AUTO DETECTION (рис. 8).

Рисунок 8

Если возникли проблемы с установкой жестких дисков, то, видимо, некоторые параметры придется выбрать вручную. Обычно кроме Auto предусмотрены режимы Standard (объем дисков до 504 Мбайт/528 млн. байт), LBA (Logical Block Addressing - до 7,875 Гбайт/8,4 млрд. байт) и Large (с количеством цилиндров более 1024).

Подменю Advanced BIOS Features (BIOS Features Setup) наиболее разнородно по составу. Как правило, одна из первых установок в нем – Virus Warning. Если она установлена в Enable, то попытки записи загрузочного сектора или таблицы разделов жесткого диска блокируются. Это позволяет защитить компьютер от бутовых («загрузочных») вирусов, однако препятствует установке операционной системы. Рекомендуется держать эту опцию включенной и выключать только на время установки новой ОС (рис. 9).

Когда кэш-память второго уровня располагалась на системной плате, то можно было выбрать один из двух режимов ее работы: Write Through и Write Back. Второй из них обеспечивал более быструю работу, но не поддерживался любым сочетанием процессора и набора микросхем.

Уже в Pentium Pro кэш-память второго уровня L2 стала располагаться внутри процессора, но разработчики BIOS Setup и сейчас упорно продолжают называть ее внешней - External Cache. В противоположность ей кэш-память первого уровня, L1, называется CPU Internal Cache. Обе они обязательно должны быть включены, иначе это скажется на производительности компьютера самым драматическим образом. Отключать кэш-память допускается лишь тогда, когда необходимо локализовать источник ошибок при нестабильной работе компьютера, например при проведении теста памяти.

Рисунок 9.

Иногда в меню присутствует опция CPU L2 Cache ECC Checking. При тактовых частотах выше 66 МГц ее рекомендуется включать, хотя иногда высказывается мнение, что ее отключение приводит к повышению производительности компьютера.

В процессорах Pentium III компания Intel ввела уникальный идентификационный код, который, по замыслу изготовителя, должен был облегчить «узнавание» компьютера при работе, например, в Сети. Но данная техническая особенность сразу вызвала шквал возмущения правозащитных организаций, и потому в BIOS Setup практически всех системных плат для Pentium III была введена опция, позволяющая отключить возможность запроса этого кода - Processor Number Feature.

Полное тестирование аппаратуры занимает несколько десятков секунд, так что производить его имеет смысл только непосредственно после сборки компьютера или изменения его конфигурации. Данная процедура будет полезна и при подборе установок процессора памяти, как это было описано в предыдущем номере журнала. Чтобы сократить время загрузки компьютера, следует активизировать опцию Quick Power On Self Test.

Порядок, в котором компьютер будет опрашивать устройства, с которых можно загрузиться, каждый волен выбирать для себя сам. При установке системы следует отдать предпочтение сменным носителям. При обычной работе загрузка будет происходить быстрее, если в качестве первого загрузочного устройства указать основной жесткий диск. Подобный режим также уменьшает вероятность заражения вирусом с нечаянно оставленной в дисководе дискеты. А если добавить к этому еще и пароль на вход в BIOS Setup, то будет создана более серьезная преграда для злоумышленников, желающих взломать систему. Впрочем, можно организовать и самые необычные варианты, начиная от независимой установки различных ОС на два или более жестких диска и заканчивая загрузкой Windows 3.11 с LS120 или Zip для работы с конфиденциальными данными.Впрочем, в последнем случае допускается инсталляция Windows и более современной версии, если предполагается использовать жесткий диск, помещенный в корзину Mobile Rack.

Опции Swap Floppy Drive, Gate A20 Option и OS Select For DRAM > 64MB сейчас уже устарели. Первая была нужна тогда, когда в компьютерах наряду с 3,5-дюймовыми применялись и 5,25-дюймовые дисководы, а последняя служит исключительно для OS/2.

Параметр Security Option при наличии пароля позволяет выбрать, как часто его придется запрашивать: при каждой загрузке или только при попытке запустить BIOS Setup. Остальные пункты меню, показанные на рисунке, нужны в основном для установки режима работы клавиатуры.

Однако перечисленным выше возможные установки меню BIOS Features Setup не исчерпываются. Так, опция PCI/VGA palette snoop требуется для некоторых несовместимых с VGA графических плат. В подавляющем большинстве случаев ее следует отключать. Опция Boot Up Floppy Seek необходима для определения типа дисковода. Ее и раньше рекомендовалось отключать, чтобы сократить время загрузки, а сейчас, после того как 5-дюймовые дисководы канули в Лету, надобность в ней отпала.

Для предотвращения несанкционированной перепрошивки BIOS используется опция System BIOS Lock. Если она включена, то компьютеру уже не страшны вирусы, пытающиеся испортить Flash BIOS.

По мере перехода мыши с интерфейса COM на PS/2 появилась опция PS/2 Mouse Function Control, позволяющая либо зарезервировать за мышью аппаратное прерывание 12, либо применить его для других устройств. В настоящее время эта опция встречается крайне редко, но как знать, возможно, с увеличением доли мышей с интерфейсом USB она вновь появится.

Нередко в BIOS Setup содержатся настройки управлением теневой памятью (Shadow Memory). Дело в том, что доступ к ПЗУ происходит намного медленнее, чем к ОЗУ, и потому для ускорения работы функций BIOS желательно переписать содержимое микросхем ПЗУ в оперативную память, располагающуюся в тех же адресах. Причем следует помнить, что BIOS занимает верхнюю часть адресного пространства реального режима. Ее стандартный размер - 64 Кбайт, и значит, диапазон адресов составляет F0000-FFFFF. Иногда ее размер бывает несколько меньше, например 48 Кбайт - F4000-FFFFF.

Видеоплата также имеет свою BIOS, располагающуюся начиная с адреса C0000 и обычно имеющую длину 32 Кбайт, т. е. до C8000. Впрочем, иногда встречаются и видеоплаты с VideoBIOS большего объема. Другие устройства, вставляемые в разъемы расширения на системной плате, также могут иметь собственные микросхемы ПЗУ со специфической BIOS. Для них был предусмотрен диапазон адресов с C8000 по DFFFF. Однако с появлением процессора 386 стало возможным размещать в этой области памяти загружаемые драйверы, да и работать BIOS может лишь в DOS, так что в последнее время такие устройства практически не производятся.

С частью установок раздела Advanced Chipset Setup мы уже познакомились, а именно с режимом работы памяти. Здесь также содержатся установки кэширования BIOS и видеопамяти. Если вы не работаете в DOS, то установку кэширования BIOS лучше выключить - все равно ОС заменит драйверы BIOS собственными. А вот чтение из видеопамяти выполняется во много раз медленнее, чем из оперативной, и поэтому тогда, когда программа регулярно это делает, установка ее кэширования позволяет существенно повысить скорость работы. Впрочем, данная особенность давно известна разработчикам, и во всех грамотно написанных программах обычно нет чтения из видеопамяти. В общем, чтобы не забивать кэш, в большинстве случаев эту установку лучше отключить.

Размер апертуры AGP определяет, сколько системной памяти позволительно использовать видеоконтроллеру. Этот объем допускается добавить к объему видеопамяти, установленному на видеоускорителе. Если на плате встроен видеоконтроллер, то в BIOS Setup, возможно, имеется установка Frame Buffer Size - объем части системной памяти, используемой встроенным видеоускорителем в качестве видеопамяти.

Перегрев процессора может привести к его выходу из строя. Избежать этого позволяет установка CPU Thermal-Throttling. При наличии признаков перегрева («зависание» системы через несколько минут после загрузки ОС или после старта ресурсоемкого приложения, происходящее особенно часто, проявляется в жаркую погоду) следует уменьшить значение этой величины (рис. 10

Рис. 10

Опция Spread Spectrum имеет две установки, которые могут обозначаться по-разному: либо как 50 и 100%, либо как Enabled и Disabled соответственно. По умолчанию она установлена, но при разгоне ее рекомендуется отключить.

Опция AGP Fast Write Capability позволяет увеличить скорость обмена с видеоплатой, но поддерживается не всеми видеоконтроллерами. На платах, имеющих шину ISA, есть и специальные установки для нее, например I/O Recovery Time. Эта опция устанавливается отдельно для 8- и 16-разрядных режимов передачи.

Опция Memory Hole обеспечивает работу некоторых видеоплат SVGA, разработанных еще для работы совместно с 286-м процессором. При этом для ускорения доступа верхняя часть (1 Мбайт) адресного пространства отводилась именно под видеопамять.

В разделе Integrated Peripherals (рис. 11) содержатся настройки имеющихся на системной плате периферийных устройств: жестких и гибких дисков, последовательных и параллельного порта, звукового и сетевого контроллеров, игрового и MIDIпортов, шины USB.

Рисунок 11

Выбор режима работы жестких дисков лучше оставить программе - установка Auto. Его изменение может потребоваться лишь в редких случаях, когда настройка по умолчанию приводит к конфликту. Для каждого из четырех устройств (IDE 0 Maser, IDE 0 Slave, IDE 1 Master и IDE 1 Slave) эти установки производятся независимо. Ориентироваться следует на то, что «максимальный» режим программируемого ввода-вывода PIO Mode 4 - способен обеспечить обмен данными со скоростью, не превосходящей 16,6 Мбайт/с, а на практике обычно не выше 8 Мбайт/с. Более высокие скорости достигаются лишь в режиме UDMA: UDMA0 - 16 Мбайт/с; UDMA1 - 25; UDMA2 - 33; UDMA3 - 44; UDMA4 - 66; UDMA5 - 100 Мбайт/с (рис. 12).

Рисунок 12

На системной плате могут присутствовать также встроенные модем, звуковой и сетевой контроллеры, IEEE 1394 и проч. Как правило, они обладают не самыми высокими параметрами. При установке аналогичных внешних устройств внутренние необходимо отключить. Кроме того, может потребоваться настройка адресов последовательных и параллельного портов, а также режима работы параллельного порта. Современные принтеры, печатающие в графическом режиме с разрешением в несколько сот точек на дюйм, требуют передачи больших объемов данных, поэтому были добавлены новые режимы работы параллельного порта: ЕРР - Extended Parallel Port, ЕСР - Extended Capabilities Port. Первый позволяет производить обмен данными в двунаправленном режиме, а второй - при увеличенной скорости передачи. Однако некоторые старые принтеры рассчитаны только на стандартный режим - Normal или SPP (Standard Parallel Port).

Обычно здесь же допускается установить тип мыши и клавиатуры (PS/2 или USB), видеоплаты (PCI или AGP), включить или отключить USB (чтобы не занимала прерывание), адреса игрового и MIDI-портов (рис. 13).

Рис. 13

В режиме управления питанием (Power Management Setup) (рис. 14) задается время автоматического ежедневного пробуждения компьютера. С помощью этой опции можно, например, поручить ПК регулярно забирать почту во время отпуска, переписывать информацию по ночам, когда трафик наиболее дешев, а также разрешить или запретить компьютеру пробуждаться по телефонному звонку или при проявлении активности в сети, после нажатия клавиши клавиатуры (но не после нажатия кнопки на корпусе компьютера) или щелчка кнопки мыши.

Рис. 14

Нередко в BIOS Setup встречается установка PWRON After PWR-Fail или Restore on AC Power Loss, которая определяет, как поведет себя компьютер после внезапного отключения питания, точнее, после того, как электричество появится вновь. Для домашнего ПК эту опцию обычно устанавливают в Off. Если же компьютер выполняет функции небольшого сервера, то желательно, чтобы после восстановления питания он возобновлял работу без постороннего вмешательства. Для этого данную опцию устанавливают в On. Естественно, такие действия допускаются лишь при наличии блока питания АТХ.

Как правило, BIOS современных системных плат поддерживает функции ACPI (Advanced Configuration and Power Management). Но включать эту опцию следует лишь тогда, когда она поддерживается операционной системой, а также драйверами установленных устройств. Среди систем, работающих с ACPI, нужно отметить Windows 2000, Windows Me и Windows XP, a о конкретных устройствах нужно справляться у их производителя.

Типы ACPI Suspend различаются в основном тем, что контекст процессора сохраняется в S1 и не сохраняется в S3. Video Off Method может быть установлен в один из трех режимов: Blank Screen, V/V Sync + Blank и DPMS. Первый предпочтительнее для дисплеев, не способных самостоятельно переходить в режим пониженного энергопотребления, поскольку он помогает предотвратить выгорание люминофора и потерю эмиссии катода, т. е. процессы старения трубки. Второй подходит для дисплеев, переходящих в энергосберегающий режим при отсутствии синхронизации. А последняя установка подходит, лишь если видеоплата поддерживает DPMS.

В спецификациях на жесткие диски сообщается, что производитель гарантирует определенные продолжительность их работы и количество циклов включения-выключения питания. Исходя из соображений «равной» прочности, следует иметь в виду, что если на 10 ч работы приходится более одного цикла включения-выключения, то это ведет к сокращению ресурса жесткого диска. Значит, лучше в принципе запретить всякие режимы HDD Power Down. Кстати, то же самое касается и настройки Power Management в операционной системе. Исключение - переносные компьютеры, для которых время работы от аккумулятора важнее физического долголетия, либо отдельные редкие случаи, когда совершенно ясно, ради чего стоит поступаться надежностью и сроком службы дискового накопителя.

В этом же разделе можно установить режим пробуждения по телефонному звонку (WOR - WakeUp by Ring) и сети (WOL - WakeUp by Lan).

С помощью меню PnP/ PCI Configurations (рис. 15) можно вручную «раздать» прерывания устройствам, установленным в разъемы расширения, что было актуально, пока еще оставались ISA-платы.

Рис. 15

Помимо «установочных», программа BIOS Setup содержит информационную панель, обычно называемую PC Health Status или HW Monitor (рис. 16). Нередко, правда, она также допускает сделать несколько настроек, например, задать температуру, при которой выдается предупреждающий сигнал и компьютер автоматически отключается, а иногда и выключить компьютер при остановке вентилятора.

Рис. 16

В заключение следует добавить, что в последнее время корпорация Intel разрабатывает новую технологию - Extensible Firmware Interface (EFI), призванную заменить BIOS. Внешне она выглядит привлекательно: позволяет устанавливать необходимые драйверы устройств еще до загрузки ОС; пробуждать компьютер по сети; обеспечивает управление им и полнофункциональную удаленную диагностику (если «упадет» операционная система, администратору не придется мчаться на место аварии). Возможно, на первых порах, пока flash-память еще окончательно не вытеснила жесткие диски, часть EFI придется хранить в специально отведенной области диска, поскольку объемы исполняемого кода программ, особенно учитывая «дружественный» графический пользовательский интерфейс, обещают быть немалыми. Следовательно, потенциально снижается надежность системы по сравнению с программой, целиком хранящейся в микросхеме ROM.

Другие решения также вызывают опасения. Например, если компании Intel удастся добиться признания этой технологии стандартом и при этом оставить решающий пакет патентов у себя, это может привести к образованию новой монополии со всеми вытекающими отсюда негативными последствиями для компьютерной индустрии. Кроме того, подобный подход создает некоторую настороженность у правозащитных организаций: наряду с разработчиком ОС изготовители оборудования также смогут контролировать действия пользователя. Таким образом, на пути между пользователем ПК и его данными появится еще один барьер, и кто знает, насколько он будет прозрачным.

Впрочем, в ближайшее время EFI нам не грозит, ведь пока существует лишь прототип этой системы. Да и разработчики BIOS не дремлют - на системных платах уже применяются микросхемы flash-ROM объемом 4 Мбит. Нередко используется «резервная BIOS» (Dual BIOS), подменяющая основную в случае ее повреждения. А «графическая» BIOS Setup с поддержкой мыши, помнится, использовалась еще на компьютерах с 486-м процессором.

С другой стороны, современный компьютер становится все в меньшей степени IBM-совместимым. Компания Intel, например, сумела добиться отказа от применения шины ISA, и уже появляются в продаже системные платы не только без СОМ и LPT, но и без PS/2-разъемов. Вероятно, новая инициатива рано или поздно пробьет себе дорогу. Время покажет. Думаю, если бы было известно, что ждет нас в будущем, жить было бы очень скучно.

Компоненты операционной системы MS-DOS

MS-DOS включает 3 основных компонента:

файловую систему;

систему взаимодействия с внешними устройствами;

командный процессор.

Файловая система включает библиотеку программ и данных, а также средства ведения этой библиотеки. Основные объекты этой системы - файл и каталог.

Файловая система

Файловой системой называется способ хранения файлов на дисках.

Файл - это совокупность данных на внешнем носителе (гибком или жестком диске), имеющая имя.

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

Все каталоги (кроме корневого, см. ниже) на самом деле являются файлами специального вида. Каждый каталог имеет имя, и он может быть зарегистрирован в другом каталоге.

На каждом магнитном диске имеется один главный или корневой каталог. Корневой каталог специального имени не имеет - он обозначается именем диска.

Для удобства пользователя корневой каталог диска (как и библиотечный) разбивается на разделы.

Каждый раздел имеет свое имя и называется подкаталогом (П/К). Строго говоря, корневой каталог содержит имена П/К и файлов.

Файловая система дает возможность пользователю просматривать каталоги дисков и их П/К, создавать новые файлы и П/К, копировать, удалять их и т.д.

Система взаимодействия с внешними устройствами.

Как мы уже говорили, ПЭВМ IBM PC включает богатый набор внешних устройств (ВУ). При совместной работе любого подобного устройства с ПЭВМ требуется выполнять различные операции по согласованию его взаимодействия с аппаратурой ПЭВМ.

Для этой цели служат специальные программы, уже упоминавшиеся выше, называемые драйверами. Они хранятся в файлах типа *.sys, *.com, *.exe. Каждый тип внешних устройств обслуживается своим драйвером.

Драйверы устройств – это специальные программы, которые дополняют систему ввода-вывода DOS и обеспечивают обслуживание новых устройств.

Драйверы стандартных внешних устройств (клавиатуры, монитора дисплея и т.д.) являются неотъемлемой частью рассматриваемой системы. Драйверы дополнительных внешних устройств (графопостроителя, мыши и т.д.) можно подключать к ОС по мере необходимости.

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

Командный процессор.

Выше упоминалось, что пользователь может управлять работой ПЭВМ с помощью команд. Эти команды называются системными, их воспринимает, анализирует и исполняет командный процессор (файл COMMAND.COM).

Все системные команды можно разделить на 2 вида - внутренние и внешние. Приведенные выше команды внутренние.

Внутренняя команда выполняется программой, непосредственно включенной в состав командного процессора.

Внешняя команда – это  программы, поставляемые вместе с операционной системой в виде отдельных файлов (т.е. внешняя команда исполняется собственной программой, которая хранится отдельно от ОС в одноименном файле, обычно в П/К DOS диска С:). Эти программы выполняют действия обслуживающего характера, например, форматирование дискет, проверку дисков и т.д.


ОС семейства W
indows®

На сегодняшний день Windows® обеспечивает максимально возможный  комфорт в общении с ПЭВМ за счёт использования графического оконного интерфейса.

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

Состав прикладных программ Windows® достаточно богат и разнообразен. Поэтому пользователь, приобретя и установив эту систему, лишается необходимости разыскивать, а затем устанавливать на своей машине самые ходовые программы.

Как известно, для каждого типа ОС разрабатываются свои программы, которые строятся с учетом особенностей конкретной ОС и максимально используют ее возможности. Такой класс программ существует и для Windows®, и ценность системы еще и в том, что класс этот весьма обширен. Практически любой пользователь Windows® может найти интересующую его программу, работающую под управлением Windows®.

Все средства ОС направлены на экономию времени пользователя - и при освоении системы, и при работе с ней. Это отражают и основные особенности системы. Рассмотрим их:

  1.  Наличие удобных, гибких и простых в освоении средств взаимодействия пользователя со средой - эти средства называются пользовательским интерфейсом. Интерфейс включает окна, меню, ярлыки файлов и приложений и т.д. (об этом ниже).
  2.  Многозадачность, т.е. возможность ПЭВМ одновременно работать с несколькими программами. Система позволяет, например, слушать FM Radio или записанную на CD-ROM музыку и работать с текстовым редактором. Позволяет, к примеру, запустить программу Paint, не выходя из редактора WordPad.
  3.  Возможность переноса данных из одной программы в другую, что позволяет достаточно просто организовать взаимодействие разнородных программ для решения какой-либо сложной задачи. Например, можно перенести рисунок и таблицу, созданные соответственно графическим редактором и табличным процессором, в окно текстового редактора и создать в нем законченный документ.
  4.  Наличие системы настройки новых периферийных устройств при подключении их к ЭВМ. Подобная настройка - весьма сложный процесс, но система эту работу берет на себя, экономя пользователю массу времени. Главное же в том, что у него открывается доступ к большинство современных программ, ориентированных, как правило, на использование широкого спектра периферийных устройств.

Архитектура Windows®

Основные элементы архитектуры Windows изображены на рисунке 17. Каждый элемент отвечает за определённую часть Windows 9x.

Слой Windows API (Application Programming Interface – Интерфейс программирования приложений) позволяет приложениям осуществлять взаимодействие с такими внутренними компонентами Windows, как файловая система. Приложение Windows невозможно было бы написать без использования API, поскольку доступ к функциям любого компонента Windows осуществляется через соответствующий API.

Windows 98 содержит два программных интерфейса. Первый полностью аналогичен программному интерфейсу, который был в операционной системе Windows 3.x. Он имеет 16-разрядные службы, которые старая версия Windows должна была предоставлять приложениям. Этот программный интерфейс используют старые приложения Windows.

Второй программный интерфейс является новым программным интерфейсом Win32, который используется и WindowsNT. Он обеспечивает подмножество средству доступ к которым могут получить все 32-разрядные приложения, выполняющиеся под управлением Windows NT. 32-разрядный программный интерфейс обеспечивает примерно тот же набор возможностей, что и 16-разрядный, но при этом он является гораздо более устойчивым. Кроме того, 32-разрядное приложение максимально использует все преимущества этой среды.

Все приложения Windows (16-разрядные и 32-разрядные) используют вызовы функций трех основных компонентов этой операционной системы: модуль Kernel (ядро Windows 98), модуль GDI (интерфейс графических устройств) и модуль USER (средства пользовательского интерфейса). 16-разрядные версии этих компонентов находятся в файлах KRNL386.EXE, GDI.EXE и USER.EXE, а 32-разрядные - в файлах KERNEL32.DLL, GDI32.DLL и USER32.DLL соответственно. Ниже каждый из этих модулей описан более подробно:

  •  Ядро Windows (Windows Kernel). Эта часть операционной системы обеспечивает поддержку низкоуровневых функций, которые необходимы для выполнения приложения. Например, каждый раз, когда приложению требуется память, оно обращается к ядру Windows. Этот компонент не взаимодействует с устройствами, он работает только с самой операционной системой Windows.
  •  Интерфейс графического устройства (GDI module). Каждый раз, когда приложению необходимо вывести что-либо на экран, оно использует службы, предоставляемые интерфейсом графического устройства (Graphical Device Interface - GDI). Этот компонент Windows управляет шрифтами, средствами печати и другими графическими средствами Windows.
  •  Средства пользовательского интерфейса (User module). Windows представляет собой именно то, о чем говорит ее название, т. е. окна. Этой операционной системе необходимо управляющее звено, которое отвечало бы за отслеживание всех окон, создаваемых приложением для отображения информации. Однако пользовательский интерфейс только начинается с этого. Каждый раз, когда приложение отображает значок или кнопку, оно использует определенный тип функции компонента USER.

Системная виртуальная машина (System Virtual Machine - VM) Windows 98 используется 32-разрядными приложениями Windows, программой, обеспечивающей интерфейс с пользователем (Проводник или Диспетчер программ), и 16-разрядными приложениями Windows. При отсутствии этого компонента запуск приложений был бы невозможен.

Виртуальная машина MS-DOS используется для запуска приложений MS DOS. Это сделано для того, чтобы "оградить" приложения Windows и саму операционную систему от возможных ошибок при выполнении программ MS-DOS.

Низкоуровневые компоненты (Base System) - это, набор служб, отвечающих за функционирование самой операционной системы. Назначение некоторых низкоуровневых компонентов Windows 98:

  •  Подсистема управления файлами (File Management Subsystem). Этот компонент обеспечивает доступ приложений к накопителям различных типов (например, к жесткому диску или приводу компакт-дисков), подключенным к компьютеру. При этом не важно, какой способ используется для подключения: устройство может быть подсоединено к компьютеру локально либо по сети.
  •  Сетевые компоненты – компоненты отвечающие за поддержку сетей различных типов, выполняющиеся в защищенном режиме, что обеспечивает максимальную производительность и надежность выполнения сетевых операций.
  •  Службы операционной системы отвечают за выполнение различных запросов приложений и операционной системы. Эта часть операционной системы предназначена для поддержки таких средств, как Plug and Play. В этой подсистеме также можно найти такие возможности, как DirectX (технология, используемая в играх и других программах, требующих быстрого доступа к аппаратным средствам).
  •  Диспетчер виртуальных машин. С помощью этого компонента запускается и завершается любое приложение (включая приложения MS-DOS), a также выделяется память, необходимая для выполнения приложения.
  •  Драйверы устройств и модель драйверов Win32 (WDM). Этот слой Windows®9x используется для взаимодействия с различными устройствами. С помощью драйверов команды операционной системы преобразуются в формат команд конкретного устройства.

Основные компоненты Windows®

  •  Файловая система.
  •  Графическая оболочка, обеспечивающая общение пользователя с ОС.
  •  Система подключения и настройки периферийных устройств.
  •  Программы настройки ОС и включения приложений в систему.
  •  Справочная система;
  •  Совокупность прикладных и служебных программ, включенных в состав Windows.

Файловая система

В Windows® файловая система имеет то же назначение, что и файловая система MS-DOS, и является расширением последней. Основные понятия файловой системы - файл и папка.

Обычно, мы не задумываемся, как хранятся на диске документы, рисунки, игровое ПО, но иногда возникают ситуации (неудачный «разгон» ЦП, вирусная атака, физическое повреждение носителя и т. п.), когда необходимо знать, где и как располагаются данные.

Загрузочная запись. Одна из наиболее значимых информационных структур логического диска - его загрузочная запись. Она располагается в первом секторе диска (с появлением Windows 95 OSR2 при использовании FAT32 загрузочная запись размещается в нескольких секторах).

Назначение данной записи - загрузка ОС и организация хранения данных. Если логический диск является системным, то в его первом секторе имеется код загрузки ОС, управляющийся от MBR (Master boot record). Его задача - загрузка основных файлов ОС и передача им управления; в Windows 9х такими файлами будут io.sys и msdos.sys.

Если не существует загрузочной записи, то она создается и заполняется программой FORMAT. Но если она уже есть, то утилита FORMAT будет использовать ее информацию.

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

Еще один совет: если нужно провести полное форматирование диска, то сначала с помощью утилиты DiskEdit обнулите сектор загрузочной записи, а уже затем запускайте программу FORMAT.

Загрузка Windows. сначала запускается копия MS-DOS. Разница заключается в том, что это не та версия MS-DOS, которую читатель использовал раньше. Даже системные файлы отличаются.

Единственной причиной запуска MS-DOS является необходимость обеспечения совместимости. По крайней мере, это одна причина, с которой соглашается компания Microsoft. Все компьютеры, укомплектованные старыми аппаратными средствами, нуждаются в запуске драйверов устройств из файлов CONFIG.SYS и AUTOEXEC.BAT. Какое-то средство должно прочитать эти файлы и выполнить соответствующие действия.

IO.SYS читает файл MSDOS.SYS перед загрузкой системы. Файл MSDOS. SYS можно представить себе в качестве конфигурационного файла для загрузочного процесса. После того как IO.SYS сконфигурирует сам себя (при помощи содержимого MSDOS.SYS), он прочитывает содержимое файла COINFIG.SYS (если такой файл есть). Так как в файле IO.SYS имеются процедуры, которые автоматически загружают нужные компоненты системы, то необходимость в файле CONFIG.SYS отпадает.

Windows 98 начинает загружаться в 16-разрядном режиме без всякого пользовательского интерфейса. В этот момент Windows 9x загружает три компонента 16-разрядной оболочки: USER.EXE, GDI.EXE и KRNL386.EXE. Она также загружает некоторые дополнительные драйверы и несколько других компонентов, таких как шрифты.

16-разрядные операции заканчиваются довольно скоро после запуска Windows 9x. Пользовательская оболочка (Проводник) является 32-рарядным Приложением. Как только 16-разрядное ядро вызывает эту оболочку, она загружает приложение под названием VWIN32.386. Эта маленькая программа загружает три 32-разрядные библиотеки динамической компоновки (DLL), которые образуют программный интерфейс Win32: USER32.DLL, GDI32.DLL и KERNEL32.DLL. После выполнения этой задачи программа VWIN32.386 возвращает управление 16-разрядному ядру, которое, в свою очередь, вызывает 32-разрядное ядро. С этого момента Windows 9x выполняется в 32-разрядном режиме.

После того как операционная система начинает выполняться в 32-разрядном режиме, она загружает и инициализирует все 32-разрядные драйверы. Этот процесс полностью аналогичен процессу загрузки драйверов в 16-разрядном режиме.

Windows подготавливает и запускает Проводник. (Проводник был загружен раньше, однако не был запущен.) На рабочем столе появляются все необходимые объекты, а также инициализируется Панель задач (Taskbar). Именно в этот момент операционная система просматривает содержимое папки Автозагрузка (Startup) для того, чтобы автоматически запустить указанные в ней приложения. После этого система полностью функциональна и готова к работе.

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

Идея FAT очень проста. Все пространство логического диска разбивается на кластеры, размер которых зависит от емкости диска. Затем составляется таблица, каждому элементу которой соответствует элемент дискового пространства - кластер. Эта таблица линейная: индекс ячейки соответствует номеру кластера.

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

Если исключить резервирование кластеров, то максимальное число адресуемых кластеров в FAT16 – 65 526, в FAT32 – 4 294 377 472. FAT32 работает иначе. На общем уровне, FAT32 является по-прежнему методом хранения файлов при помощи таблицы размещения файлов. Правда, она стала 32-, а не 16-разрядной, как это было раньше.

На самом деле, всё можно свести к одному параметру жёсткого диска – размеру кластера. Диск, который имеет размер более 1 Гб и размечен с использованием файловой системы FAT, использует кластер размером 32 Кб. Это означает, что файл, хранящий 1 байт данных, требует 32 Кб дискового пространства. Если на диске хранится много маленьких файлов, то количество потерянного места растёт очень быстро. FAT32 позволяет иметь размер кластера в 4 Кб. Как правило, использование FAT32 позволяет сократить применение дискового пространства на 20-50%.

Корневой каталог. Логически корневой каталог служит оглавлением - это следующая за второй FAT область на логическом диске, являющаяся последовательностью 32-байтовых записей. Каждая из последних может быть каталогом, именем файла (в том числе и длинным), а также меткой тома.

В FAT16 размер корневого каталога зафиксирован. В FAT16 таких записей 512. При использовании FAT32 корневой каталог рассматривается как обычный каталог и его размер растет по мере необходимости.

Под файлом данных понимается поименованная последовательность байтов. Причем ИМЯ хранится отдельно от этой последовательности. Теперь обратимся вместе с операционной системой к данным и будем работать с ними через ИМЯ, которое и есть 32-байтовая запись, упоминавшаяся выше. Но обычно при словосочетании «имя файла» нам представляется что-то вроде Program Files, io.sys и т. д. В чем же дело? Да в том, что привычные имя, размер, дата, время, атрибуты и номер первого кластера закодированы в 32-байтовой записи, а программы, работающие с файлом, раскодируют и показывают имя, дату и т. д.

Несколько слов об атрибутах файлов. Вот основные из них: «только чтение», «скрытый», «системный», «метка тома», «подкаталог», «архивный». Атрибут «подкаталог» сообщает ОС, что данная запись относится к подкаталогу, атрибут «метка тома» - к метке тома. Остальные атрибуты относятся к файлам данных и указывают, как система должна с ними работать.

Особенности графического интерфейса

Именно эта оболочка предоставляет в распоряжение пользователя простые и удобные средства общения (и управления) с Системой, те средства, что называются пользовательским интерфейсом.

Наиболее существенные черты рассматриваемой оболочки:

  1.  Компактные способы представления, средств управления, и четкая логичная структуры этих средств.
  2.  Стандартизация объектов оболочки и обращений с ними. Систему отличает стандартная структуру всех окон, однотипность их элементов, элементов диалоговых панелей и работы с ними, и пр.
  3.  Исключительная гибкость оболочки. Фактически каждый пользователь в рамках оболочки может создать свой пульт управления теми объектами, которые его интересуют, и забыть (на время) о существовании всех прочих.
  4.  Документально-ориентированный характер средств управления системой. Процесс работы с объектами в Windows довольно точно имитирует процесс работы с документами в офисе.

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

Система подключения и настройки периферийных устройств

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

Для подключения нового периферийного устройства пользователь должен найти соответствующий драйвер (если он не приобретался вместе с устройством) и установить его. Драйвер устройства - это программа, управляющая работой устройства и обеспечивающая доступ к нему. Для каждого вида устройств разрабатывается свой драйвер.

Windows реализует так называемую технологию Plug and Play («включай и работай»).

В соответствии с этой технологией система сама распознает конкретные технические устройства, подключенные к ПЭВМ, устанавливает их характеристики, выбирает соответствующие устройствам драйверы, производит их автонастройку и настраивает ОС (Windows 9x) на работу с ним.

Plug and Play (P&P) обеспечивает один наиболее простых способов сконфигурировать аппаратное обеспечение компьютера.

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

Эта система - продукт не только Microsoft, в разработке участвовали компании Compaq Computer Corporation, Phoenix Technologies Ltd. и Intel Corporation.

Дополнительные средства, которые предоставляет система P&P:

  •  Идентификация установленных устройств. Windows 98 автоматически определяет все компоненты Plug and Play, установленные в системе. Это означает, что необходимо предоставить минимум информации во время установки, а во время последующих перезагрузок вообще ничего не надо делать.
  •  Определение ресурсов, необходимых устройству. Каждое устройство в компьютере требует ресурсов, т. е. циклов процессора, портов ввода/вывода, каналов DMA, памяти и прерываний. Благодаря взаимодействию с BIOS и периферийными устройствами Windows 98 удовлетворяет эти потребности без какого-либо вмешательства извне.
  •  Автоматическое обновление системной конфигурации и обнаружение конфликтов. Взаимодействие между периферийными устройствами, BIOS и операционной системой позволяет Windows 98 создавать системную конфигурацию без всякого вмешательства пользователя. Такое взаимодействие позволяет Windows 98 перенастраивать всю периферию на другие порты и прерывания при возникновении конфликтов устройств.
  •  Загрузка и выгрузка драйверов. Windows 98 поддерживает P&Pсовместимые системы без использования файлов CONGIF.SYS и AUTOEXEC.BAT и позволяет динамически загружать и выгружать любые драйверы устройств.
  •  Оповещения об изменениях конфигурации системы. Технология Plug and Play представляет возможность изменения конфигурации системы автоматически, но это не означает, что Windows 98 оставляет пользователя в неведении относительно этих изменений. Каждый раз, когда изменяется конфигурация системы, Windows 98 оповещает пользователя о них, выводя на экран окно сообщения, в котором сообщается об изменениях в системе. Эта возможность предоставляет дополнительное удобство, Windows 98 также оповещает пользователя каждый раз, когда происходит любой сбой устройства. Когда часть оборудования отказывается работать, то Windows 98 отмечает тот факт, что оно недоступно. Чтобы пользователь не удивлялся, обнаруживая, что он не имеет доступа к определенному устройству, Windows 98 оповещает об изменениях немедленно после того, как они произошли.

Следует добавить, что Windows 98 включает обширный набор драйверов для различных видов периферийных устройств (с учетом фирмы-производителя, модели устройства). Из этого набора и производится выбор драйверов системой.

Windows предусматривает:

  1.  Неявную установку устройства без участия пользователя (достаточно подключить устройство и включить компьютер, если потребуется – вставить дискету)
  2.  Принудительную установку устройства с автоматическим опознаванием (Windows 98 производит поиск устройств Plug&Play).
  3.  Принудительную установку устройства с явным указанием модели устройства (для выбора устройств, не поддерживающих стандарт P&P).

Системный реестр

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

• Системные файлы инициализации (system initialization files): CONTROL.INI, PROGMAN.INI, PROTOCOL.INI, SYSTEM.INI, WIN.INI и WINFILE.INI. Если пользователь устанавливал большое количество программ, каждая из которых вносила свою запись в файл WIN.INI, его размер рос как на дрожжах и как только превышал 64 Кбайт, начинались проблемы.

• Файлы инициализации приложений (private initialization files): это обычные ini-файлы, которыми исправно снабжали систему вновь устанавливаемые программы.

• Файл регистрационной базы данных - REG.DAT: он-то и был прародителем будущих реестров Windows 95/98/NT/2000/XP/2003. Для редактирования этого файла, представленного в двоичном формате, уже требовался специальный инструмент, он же - редактор реестра REGEDIT.EXE. Конечно же патриарх REG.DAT имел гораздо более простое строение реестра, чем сейчас: тогда он содержал одну-единственную корневую структуру-контейнер под названием HKEY_ CLASSES_ROOT.

Хотя редактирование текстовых ini-файлов не представляет большой проблемы, большинству рядовых пользователей работать с ними оказалось не под силу. Но самое главное заключалось в том, что ini-файлы не поддерживают множественные аппаратные конфигурации. Другими словами, Windows 3.x не могла поддерживать столь знакомую нынче технологию Plug & Play.

Информационные технологии не любят стоять на месте, в результате чего разработчики внедрили в Windows NT 3.5 другую структуру реестра, напоминающую уже известную нам по Windows 2000/ХР.

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

Реестры Windows 9х и NT (под этой аббревиатурой будем подразумевать Windows 2000/XP) частично различаются. Реестр Windows 95/98 содержится в двух файлах - SYSTEM.DAT и USER.DAT, находящихся в каталоге Windows. Позднее, в Windows Me был добавлен еще один файл - CLASSES.DAT, который по замыслу Microsoft должен был полностью заменить ini-файлы, оставленные в живых исключительно ради совместимости со старыми программами.

Мощные NT-версии Windows хранят свои сокровенные данные в виде атомарной структуры, т. е. реестр делится на некие составные части, называемые «ульями». Кроме того, файлов реестра стало больше.

Резервная копия реестра. Прежде чем приступить к глобальным издевательствам над Windows 95/98/Me и реестром, есть смысл сохранить в надежном месте оригинальные файлы SYSTEM.DAT и USER.DAT. Они всегда имеют атрибуты «Только для чтения» и «Скрытый». Если после всевозможных экспериментов реестр впадет в кому, вы сможете переместить исходные файлы в каталог Windows, установив соответствующие атрибуты, после чего реестр вернется к исходному состоянию. Для восстановления этих файлов вам придется перезагрузиться в DOS (эту операцию нельзя проделывать непосредственно в Windows, иначе система уйдет в мир иной) и уже оттуда заменить испорченные файлы оригинальными.

Сложнее дело обстоит в случае восстановления реестра Windows 2000/XP, особенно при наличии файловой системы NTFS. Для создания резервной копии придется щелкнуть правой кнопкой по значку нужного диска в окне утилиты «Мой компьютер», выбрать пункт «Свойства» и на вкладке «Сервис» воспользоваться командой «Выполнить архивацию». Далее вас встретит Мастер архивации и восстановления, который и поможет сделать резервные копии нужных файлов. Если не дай бог «случится страшное», наши «утраченные иллюзии» можно будет восстановить с помощью того же Мастера.

Структура системного реестра. Любой пользователь, открывший редактор реестра, первым делом видит совершенно непонятные на первый взгляд названия, отчего нередко испытывает священный ужас и спешит закрыть «страшное» приложение. Давайте вкратце посмотрим, что же означают непонятные названия в древовидной структуре Regedit.exe, вернее, какая информация в них содержится.

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

HKEY_CURRENT_USER. Здесь содержатся настройки оболочки пользователя (например, Рабочего стола, меню «Пуск»), вошедшего в Windows под своим именем. Если на компьютере работает один пользователь и используется обычный вход в Windows, то значения раздела берутся из подраздела HKEY_USERS\. DEFAULT.

HKEY_LOCAL_MACHINE. Интересное название, правда? содержатся основные сведения об аппаратных средствах компьютера, включая драйверы устройств и конфигурационную информацию. Если информации о каком-либо устройстве нет в этом разделе, то Windows 98 не сможет использовать его.

HKEY_USERS. Здесь содержатся параметры оболочки Windows для всех пользователей. Именно отсюда информация копируется в раздел HKEY_CURRENT_USER. Все изменения в HKCU (аббревиатура HKEY_CURRENT_USER) автоматически переносятся в HKU.

HKEY_CURRENT_CONFIG. В этом разделе содержится информация о конфигурации устройств Plug&Play и сведения о конфигурации компьютера с переменным составом аппаратных средств.

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

Нас интересуют прежде всего ветви HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE, поскольку именно там хранятся настройки, позволяющие привести Windows в нужный нам вид.

Справочная система

В Windows 9x используется новая справочная система, построенная на основе языка HTML. Использование справочной системы полностью аналогично процессу просмотра Web-страниц. В Windows 98 существует три уровня использования справочной информации:

  •  Локальная справка. В любой момент времени вы имеете доступ к справочной информации, хранящейся на локальном жёстком диске;
  •  Ресурсы Internet. Справочная система Windows позволяет получать информацию о компонентах Windows, включая исправления и обновления устаревшей информации на узлах Internet компании Microsoft и других производителей программного обеспечения.
  •  Служба поддержки. Справочная система сама связывает вас со специалистами фирмы Microsoft. При обращении в службу поддержки Windows 98 автоматически собирает всю информацию о локальном компьютере и установленном на нём программном обеспечении и передаёт её на компьютер специалиста службы.


Система программного обеспечения мейнфрейма (на примере ЕС ЭВМ (
OS/360))

Понятие о программном обеспечении мейнфрейма

Современные вычислительные системы на базе мейнфреймов реализуют принцип параллельной работы многих пользователей, названный системой виртуальных машин (СВМ). Этот принцип состоит в предоставлении каждому пользователю вычислительной системы некоторого функционального эквивалента отдельной вычислительной машины. Функционирование множества виртуальных (кажущихся) машин в реальной вычислительной системе обеспечивается соответствующей операционной системой СВМ ЕС (VMSP5, VMSP6). Число и конфигурация одновременно работающих виртуальных машин определяются параметрами данной реальной ЭВМ. СВМ ЕС координирует работу технических средств реальной ЭВМ и управляемы, не зависящие от конкретной машины, создавать единый фонд прикладных программ, а также иметь для всех моделей единую систему программного обеспечения (СПО).

На рисунке 18 приведена общая структура системы программного обеспечения ЕС ЭВМ, включающая в себя операционные системы, комплексы программ технического обслуживания и пакеты прикладных программ. Кратко охарактеризуем названные компоненты СПО ЕС ЭВМ.

Центральной частью программного обеспечения мейнфрейма (ЕС ЭВМ) является операционная система (ОС) - совокупность программных средств, обеспечивающих наиболее эффективное функционирование ЭВМ в различных режимах, а также снижение трудоемкости подготовительной работы при решении задач на ЭВМ. Операционная система существенно повышает производительность труда программиста и сводит до минимума вмешательство оператора в вычислительный процесс; ОС является неотъемлемой частью любой вычислительной системы, расширяющей возможности ее технических средств. Доступ пользователей к системе осуществляется только с помощью операционной системы.

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

 



Основные компоненты операционных систем ЕС ЭВМ – управляющая и обрабатывающие программы.

Управляющая программа

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

Основные функции управляющей программы:

  •  ввод и планирование выполнения заданий, поступающих непрерывным потоком (управление заданиями);
  •  последовательное или приоритетное выполнение каждой работы (управление задачами);
  •  хранение, поиск и обслуживание данных независимо от их организации и способа хранения (управление данными).

Программа начальной загрузки выполняет настройку оперативной памяти, загрузку в неё ядра операционной системы и программы инициализации ядра.

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

Комплекс Управление заданиями - это программы, предназначенные для управления процессом прохождения через ЭВМ непрерывного потока заданий и обеспечивающие связь пользователя (оператора) с вычислительной системой. При этом заданием называется основная независимая единица работы ЭВМ, формируемая извне программистом. Задание соответствует некоторой совокупности вычислений и представляет для пользователя законченную работу. Задания никак не связаны друг с другом и поэтому могут выполняться одновременно в мультипрограммном режиме.

Управление заданиями состоит из планировщика заданий и главного планировщика.

Планировщик заданий считывает входные потоки заданий; обрабатывает задания в зависимости от их приоритета и режима ОС ЕС; инициирует одновременное выполнение нескольких заданий; интерпретирует и анализирует языки управления заданиями; вызывает каталогизированные процедуры; ведет системный журнал.

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

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

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

Супервизор состоит из программ, которые функционально можно объединить в группы, названные супервизорами прерываний, задач, оверлейных программ памяти, ввода-вывода, времени. Рассмотрим основные из этих программ:

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

Программы управления данными обеспечивают способы организации, идентификации, хранения и выборки обрабатываемых данных, содержат необходимые средства для организации каталога; они позволяют дополнять, замещать или удалять в нем информацию об используемых в системе наборах данных. Любой набор данных, используемый в программе, должен быть описан не только в программе, но и в задании на выполнение этой программы. Метод описания набора данных зависит как от организации этого набора, так и от применяемого способа доступа к нему (аналог файловой структуры).

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

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

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

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

При библиотечной организации набор данных представляет собой совокупность независимых последовательно организованных наборов данных, называемых разделами. Библиотечный набор данных и каждый его раздел имеют собственные имена, записываемые в оглавлении библиотеки, которое размещается в начале набора данных. Каждому имени раздела библиотеки соответствует определенный адрес внутри библиотеки, что позволяет осуществлять поиск, дополнение, замещение или исключение разделов в библиотечном наборе данных. Библиотечная организация данных обычно используется для хранения программ.

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

Обрабатывающие системные программы.

Обрабатывающие системные программы под руководством управляющей программы непосредственно выполняют задания пользователей. Обрабатывающие программы сокращают усилия и время, затрачиваемые на написание, подготовку и выполнение проблемных программ пользователей. К ним относятся следующие программы:

  1.  Трансляторы – предназначены для перевода текста исходных программ, записанных на алгоритмических языках высокого уровня, на машинный язык, а также для формирования листингов с текстами исходных программ и с диагностическими сообщениями о лексических, синтаксических и семантических ошибках в программе. В состав трансляторов ОС ЕС входят трансляторы с языков PПГ, Ассемблер, Fortran, PL/1, Cobol, Algol. Однако прежде чем программы на этих языках будут выполнены на мейнфрейме, они последовательно пройдут несколько этапов предварительной обработки, каждый из которых завершается формированием соответствующего программного модуля.

Модуль, записанный на входном языке программирования, называется исходным. Программа пользователя может состоять из одного или нескольких таких модулей. Исходные модули с помощью программ-трансляторов преобразуются в объектные модули. Для непосредственного выполнения на ЭВМ объектный модуль должен пройти этап редактирования, в результате которого вырабатывается загрузочный модуль.

  1.  Редактор связей, объединяющий отдельно оттранслированные загрузочные модули (см. выше) в один готовый к выполнению модуль, резервирует память для общих областей, создаваемых трансляторами, заменяет, исключает и перемещает программные секции и формирует дополнительную диагностическую информацию.
    1.  Загрузчик, осуществляет редактирование и загрузку отредактированных, готовых к выполнению модулей.
      1.  Сортировки-объединения, объединяют файлы, размещённые на внешних носителях (магнитных лентах, дисках, барабанах), с входными файлами, размещают наборы данных в заданном порядке, сортируют записи, и осуществляют мультитомный и мультифайловый ввод-вывод данных.
        1.  Тестовый транслятор (ТЕСТРАН), осуществляет отладку программ на языке Ассемблер, редактирование и вывод на печать отладочной информации.
          1.  Утилиты, выполняют различные функции, связанные с обслуживанием пользователей (разметка томов, обслуживание библиотек и пр.).

Программы телеобработки данных обеспечивают передачу данных по каналам связи (телефонным, телеграфным и пр.), что позволяет осуществить одновременную работу ЭВМ с несколькими удаленными абонентскими пунктами.

Программное обеспечение машинной графики включает графический метод доступа и осуществляет функционирование различных графических устройств (графопостроителей, графических дисплеев и т. д.).

Мультипрограммирование и разделение времени

Все современные версии ОС для мейнфреймов (ОС ЕС, VMSP5, VMSP6, СВМ) работают в мультипрограммном режиме. В этом режиме программы управления задачами должны распределять ресурсы между одновременно выполняемыми задачами, следить за их использованием и освобождать ресурсы после окончания задачи. Если несколько задач дожидаются одного и того же устройства, управляющая программа организует очередь запросов. При работе в мультипрограммном режиме общее время обработки сокращается.

В условиях мультипрограммирования возможно независимое друг от друга выполнение заданий.

Режимы обработки запросов пользователей.

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

В режиме пакетной обработки задания обрабатываются непрерывно с автоматическим переходом от одного задания к другому. Задания после ввода в систему образуют входные очереди, размещаемые обычно на диске. Выбор заданий из очереди на обработку производится последовательно или на основе приоритетов. Результаты выполнения заданий записываются на диск и образуют выходные очереди. Из выходной очереди задания выводятся на системные устройства вывода (АЦПУ, перфораторы, магнитные ленты, дисплеи, устройства графического вывода и т. д.) либо последовательно, либо на основе приоритетов. Допускается также непосредственный вывод на устройство системного вывода (консоль) в процессе обработки задания.

В режиме удаленной пакетной обработки ввод заданий и вывод результатов производится на удаленный абонентский пункт, соединенный с ЭВМ посредством канала связи.

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

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

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


ОС UNIX

Компоненты ОС UNIX

Операционная система UNIX имеет 4 основных компонента:

  •  Ядро – это программа, которая образует ядро операционной системы; она координирует внутренние функции компьютера (такие как размещение системных ресурсов). Ядро работает невидимо для вас;
  •  shell – это программа, которая осуществляет связь между вами и ядром, интерпретируя и выполняя ваши команды. Так как она читает ваш ввод и посылает вам сообщения, то описывается как интерактивная;
  •  commands – это имена программ, которые компьютер должен выполнить. Пакеты программ называются инструментальными средствами. Система UNIX обеспечивает инструментальными средствами для таких заданий как создание и изменение текста, написание программ, развитие инструментария программного обеспечения, обмен информацией с другими посредством компьютера;
  •  file system – файловая система – это набор всех файлов, возможных для вашего компьютера. Она помогает вам легко сохранять и отыскивать информацию.

Ядро ОС UNIX

Как и в любой другой многопользовательской операционной системе, обеспечивающей защиту пользователей друг от друга и защиту системных данных от любого непривилегированного пользователя, в ОС UNIX имеется защищенное ядро, которое управляет ресурсами компьютера и предоставляет пользователям базовый набор услуг.

Следует заметить, что удобство и эффективность современных вариантов ОС UNIX не означает, что вся система, включая ядро, спроектирована и структурирована наилучшим образом. ОС UNIX развивалась на протяжении многих лет (это первая в истории операционная система, которая продолжает завоевывать популярность в таком зрелом возрасте – уже больше 25 лет). Естественно, наращивались возможности системы, и, как это часто бывает в больших системах, качественные улучшения структуры ОС UNIX не поспевали за ростом ее возможностей.

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

По причине наибольшей распространенности в этом подразделе мы в основном обсуждаем ядро UNIX System V (можно считать его традиционным).

Общая организация традиционного ядра ОС UNIX

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

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

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

Машинно-зависимая часть традиционного ядра ОС UNIX включает следующие компоненты:

  •  раскрутка и инициализация системы на низком уровне (пока это зависит от особенностей аппаратуры);
  •  первичная обработка внутренних и внешних прерываний;
  •  управление памятью (в той части, которая относится к особенностям аппаратной поддержки виртуальной памяти);
  •  переключение контекста процессов между режимами пользователя и ядра;
  •  связанные с особенностями целевой платформы части драйверов устройств.

Основные функции

К основным функциям ядра ОС UNIX принято относить следующие:

  1.  Инициализация системы – функция запуска и раскрутки. Ядро системы обеспечивает средство раскрутки (bootstrap), которое обеспечивает загрузку полного ядра в память компьютера и запускает ядро.
  2.  Управление процессами и нитями – функция создания, завершения и отслеживания существующих процессов и нитей ("процессов", выполняемых на общей виртуальной памяти). Поскольку ОС UNIX является мультипроцессной операционной системой, ядро обеспечивает разделение между запущенными процессами времени процессора (или процессоров в мультипроцессорных системах) и других ресурсов компьютера для создания внешнего ощущения того, что процессы реально выполняются в параллель.
  3.  Управление памятью – функция отображения практически неограниченной виртуальной памяти процессов в физическую оперативную память компьютера, которая имеет ограниченные размеры. Соответствующий компонент ядра обеспечивает разделяемое использование одних и тех же областей оперативной памяти несколькими процессами с использованием внешней памяти.
  4.  Управление файлами – функция, реализующая абстракцию файловой системы, – иерархии каталогов и файлов. Файловые системы ОС UNIX поддерживают несколько типов файлов. Некоторые файлы могут содержать данные в формате ASCII, другие будут соответствовать внешним устройствам. В файловой системе хранятся объектные файлы, выполняемые файлы и т.д. Файлы обычно хранятся на устройствах внешней памяти; доступ к ним обеспечивается средствами ядра. В мире UNIX существует несколько типов организации файловых систем. Современные варианты ОС UNIX одновременно поддерживают большинство типов файловых систем.
  5.  Коммуникационные средства – функция, обеспечивающая возможности обмена данными между процессами, выполняющимися внутри одного компьютера (IPC – Inter-Process Communications), между процессами, выполняющимися в разных узлах локальной или глобальной сети передачи данных, а также между процессами и драйверами внешних устройств.
  6.  Программный интерфейс – функция, обеспечивающая доступ к возможностям ядра со стороны пользовательских процессов на основе механизма системных вызовов, оформленных в виде библиотеки функций.

Основные понятия ОС UNIX

Одним из достоинств ОС UNIX является то, что система базируется на небольшом числе интуитивно ясных понятий. Однако, несмотря на простоту этих понятий, к ним нужно привыкнуть. Без этого невозможно понять существо ОС UNIX.

Пользователь

С самого начала ОС UNIX замышлялась как интерактивная система. Другими словами, UNIX предназначен для терминальной работы. Чтобы начать работать, человек должен «войти» в систему, введя со свободного терминала свое учетное имя (account name) и, возможно, пароль (password). Человек, зарегистрированный в учетных файлах системы, и, следовательно, имеющий учетное имя, называется зарегистрированным пользователем системы. Регистрацию новых пользователей обычно выполняет администратор системы. Пользователь не может изменить свое учетное имя, но может установить и/или изменить свой пароль. Пароли хранятся в отдельном файле в закодированном виде.

Файловая система

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

Имени файла предшествует указание пути поиска, который описывает место расположения файла в иерархической структуре файловой системы. Имя пути поиска состоит из компонент, разделенных между собой наклонной чертой (/); каждая компонента представляет собой набор символов, составляющих имя вершины (файла), которое является уникальным для каталога (предыдущей компоненты), в котором оно содержится. Полное имя пути поиска начинается с указания наклонной черты и идентифицирует файл (вершину), поиск которого ведется от корневой вершины дерева файловой системы с обходом тех ветвей дерева файлов, которые соответствуют именам отдельных компонент.

Каталоги похожи на обычные файлы в одном отношении; система представляет информацию в каталоге набором байтов, но эта информация включает в себя имена файлов в каталоге в объявленном формате для того, чтобы операционная система и программы, могли их обнаружить.

Каждому зарегистрированному пользователю соответствует некоторый каталог файловой системы, который называется "домашним" (home) каталогом пользователя. При входе в систему пользователь получает неограниченный доступ к своему домашнему каталогу и всем каталогам и файлам, содержащимся в нем. Пользователь может создавать, удалять и модифицировать каталоги и файлы, содержащиеся в домашнем каталоге. Потенциально возможен доступ и ко всем другим файлам, однако он может быть ограничен, если пользователь не имеет достаточных привилегий.

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

Для пользователя система UNIX трактует устройства так, как если бы они были файлами. Устройства, для которых назначены специальные файлы устройств, становятся вершинами в структуре файловой системы. Обращение программ к устройствам имеет тот же самый синтаксис, что и обращение к обычным файлам; семантика операций чтения и записи по отношению к устройствам в большой степени совпадает с семантикой операций чтения и записи обычных файлов. Способ защиты устройств совпадает со способом защиты обычных файлов: путем соответствующей установки битов разрешения доступа к ним (файлам). Поскольку имена устройств выглядят так же, как и имена обычных файлов, и поскольку над устройствами и над обычными файлами выполняются одни и те же операции, большинству программ нет необходимости различать внутри себя типы обрабатываемых файлов.

Интерфейс пользователя

Традиционный способ взаимодействия пользователя с системой UNIX основывается на использовании командных языков (правда, в настоящее время все большее распространение получают графические интерфейсы). После входа пользователя в систему для него запускается один из командных интерпретаторов. Обычно в системе поддерживается несколько командных интерпретаторов с похожими, но различающимися своими возможностями командными языками. Общее название для любого командного интерпретатора ОС UNIX – shell (оболочка), поскольку любой интерпретатор представляет внешнее окружение ядра системы.

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

Командные языки, используемые в ОС UNIX, достаточно просты, чтобы новые пользователи могли быстро начать работать, и достаточно мощны, чтобы можно было использовать их для написания сложных программ. Последняя возможность опирается на механизм командных файлов (shell scripts), которые могут содержать произвольные последовательности командных строк. При указании имени командного файла вместо очередной команды интерпретатор читает файл строка за строкой и последовательно интерпретирует команды.

Привилегированный пользователь

Ядро ОС UNIX идентифицирует каждого пользователя по его идентификатору (UID – User IDentifier), уникальному целому значению, присваиваемому пользователю при регистрации в системе. Кроме того, каждый пользователь относится к некоторой группе пользователей, которая также идентифицируется некоторым целым значением (GID – Group IDentifier). Значения UID и GID для каждого зарегистрированного пользователя сохраняются в учетных файлах системы и приписываются процессу, в котором выполняется командный интерпретатор, запущенный при входе пользователя в систему. Эти значения наследуются каждым новым процессом, запущенным от имени данного пользователя, и используются ядром системы для контроля правомочности доступа к файлам, выполнения программ и т.д.

Понятно, что администратор системы, который, естественно, тоже является зарегистрированным пользователем, должен обладать большими возможностями, чем обычные пользователи. В ОС UNIX эта задача решается путем выделения одного значения UID (нулевого). Пользователь с таким UID называется суперпользователем (superuser) или root. Он имеет неограниченные права на доступ к любому файлу и на выполнение любой программы. Кроме того, такой пользователь имеет возможность полного контроля над системой. Он может остановить ее и даже разрушить.

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

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

Программы

ОС UNIX одновременно является операционной средой использования существующих прикладных программ и средой разработки новых приложений. Новые программы могут писаться на разных языках (Фортран, Паскаль, Модула, Ада и др.). Однако стандартным языком программирования в среде ОС UNIX является язык C (который в последнее время все больше заменяется на C++). Это объясняется тем, что, во-первых, сама система UNIX написана на языке C, а, во-вторых, язык Си является одним из наиболее качественно стандартизованных языков.

Поэтому программы, написанные на языке C, при использовании правильного стиля программирования обладают весьма высоким уровнем мобильности, т.е. их можно достаточно просто переносить на другие аппаратные платформы, работающие как под управлением ОС UNIX, так и под управлением ряда других операционных систем (например, DEC Open VMS или MS Windows NT).

Заметим, что многие неудобства интерфейсов традиционных инструментальных средств ОС UNIX связаны с тем, что они ориентированы на использование и алфавитно-цифровых, и графических терминалов. Поэтому обычно эти средства поддерживают старомодный строчный интерфейс даже при наличии графического терминала. Естественно, в современных вариантах ОС UNIX все новые инструментальные средства поддерживают оконный графический интерфейс (и, следовательно, их невозможно использовать при наличии алфавитно-цифровых терминалов).

Команды

Любой командный язык семейства shell фактически состоит из трех частей: служебных конструкций, позволяющих манипулировать с текстовыми строками и строить сложные команды на основе простых команд; встроенных команд, выполняемых непосредственно интерпретатором командного языка; команд, представляемых отдельными выполняемыми файлами.

Процессы

Процесс в ОС UNIX – это программа, выполняемая в собственном виртуальном адресном пространстве. Когда пользователь входит в систему, автоматически создается процесс, в котором выполняется программа командного интерпретатора. Если командному интерпретатору встречается команда, соответствующая выполняемому файлу, то он создает новый процесс и запускает в нем соответствующую программу, начиная с функции main. Эта запущенная программа, в свою очередь, может создать процесс и запустить в нем другую программу (она тоже должна содержать функцию main) и т.д.

Перенаправление ввода/вывода

Механизм перенаправления ввода/вывода является одним из наиболее элегантных, мощных и одновременно простых механизмов ОС UNIX. Цель, которая ставилась при разработке этого механизма, состоит в следующем. Поскольку UNIX – это интерактивная система, то обычно программы вводят текстовые строки с терминала и выводят результирующие текстовые строки на экран терминала. Для того, чтобы обеспечить более гибкое использование таких программ, желательно уметь обеспечить им ввод из файла или из вывода других программ и направить их вывод в файл или на ввод другим программам.

Реализация механизма основывается на следующих свойствах ОС UNIX:

Во-первых, любой ввод/вывод трактуется как ввод из некоторого файла и вывод в некоторый файл. Клавиатура и экран терминала тоже интерпретируются как файлы (первый можно только читать, а во второй можно только писать).

Во-вторых, доступ к любому файлу производится через его дескриптор (положительное целое число). Фиксируются три значения дескрипторов файлов. Файл с дескриптором 1 называется файлом стандартного ввода (stdin), файл с дескриптором 2 – файлом стандартного вывода (stdout), и файл с дескриптором 3 – файлом стандартного вывода диагностических сообщений (stderr).

В-третьих, программа, запущенная в некотором процессе, "наследует" от породившего процесса все дескрипторы открытых файлов.


ОС
Linux

Системные характеристики

Linux - это полная многозадачная многопользовательская операционная система (точно также как и другие версии UNIX). Это означает, что одновременно много пользователей могут работать на одной машине, одновременно выполнять много программ.

Linux достаточно хорошо совместим с рядом стандартов для UNIX (насколько можно говорить о стандартизации UNIX) на уровне исходных текстов, включая IEEE POSIX.1, System V и BSD. Он создавался имея в виду такую совместимость. Поэтому, скорее всего, вы найдете в Linux черты, присущие многим UNIX-системам. Большинство свободно распространяемых по сети Internet программ для UNIX может быть откомпилировано для LINUX практически без особых изменений. Кроме того, все исходные тексты для Linux, включая ядро, драйверы устройств, библиотеки, пользовательские программы и инструментальные средства распространяются свободно.

Другие специфические внутренние черты Linux включают контроль работ по стандарту POSIX (используемый оболочками, такими как csh и bash), псевдотерминалы (pty), поддержку национальных и стандартных клавиатур динамически загружаемыми драйверами клавиатур.

Linux также поддерживает виртуальные консоли (virtual consoles), которые позволяют "переключать экраны" на консоли в текстовом режиме.

Ядро может само эмулировать команды 387-FPU, так что системы без сопроцессора могут выполнять программы, на него рассчитывающие (т.е. с плавающей точкой).

Linux поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы, такие как файловая система ext2fs, были созданы специально для Linux. Поддерживаются также другие типы файловых систем, такие как Minix-1 и Xenix. Реализована также файловая система MS-DOS, позволяющая прямо обращаться к файлам MS-DOS на жестком диске. Поддерживается также файловая система ISO 9660 CD-ROM для работы с дисками CD-ROM.

Linux обеспечивает полный набор протоколов TCP/IP для сетевой работы. Это включает драйверы устройств для многих популярных карт Ethernet, SLIP (Serial Line Internet Protocol, обеспечивающие вам доступ по TCP/IP при последовательном соединении), PLIP (Parallel Line Internet Protocol), PPP (Point-to-Point Protocol), NFS (Network File System), и так далее. Поддерживается весь спектр клиентов и услуг TCP/IP, таких как FTP, telnet, NNTP и SMTP.

Ядро Linux поддерживает загрузку только нужных страниц. То есть с диска в память загружаются те сегменты программы, которые действительно используются. Возможно использование одной страницы, физически один раз загруженной в память, несколькими выполняемыми программами.

Для увеличения объема доступной памяти Linux осуществляет также разбиение диска на страницы: то есть на диске может быть выделено до 256 Мбайт "пространства для свопинга" (swap space). (Swap space не совсем подходящее имя, в Linux в область своппинга выгружается не весь процесс, а только отдельные его части, в которых нет необходимости). Когда системе нужно больше физической памяти, то она с помощью свопинга выводит неактивные страницы на диск. Это позволяет выполнять более объемные программы и обслуживать одновременно больше пользователей. Однако свопинг не исключает наращивания физической памяти, поскольку он снижает быстродействие, увеличивает время доступа.

Ядро также поддерживает универсальный пул памяти для пользовательских программ и дискового КЭШа. При этом для КЭШа может использоваться вся память, и наоборот, кэш уменьшается при работе больших программ.

Выполняемые программы используют динамически связываемые библиотеки, т.е. выполняемые программы могут совместно использовать библиотечную программу, представленную одним физическим файлом на диске (иначе, чем это реализовано в механизме разделяемых библиотек SunOS). Это позволяет выполняемым файлам занимать меньше места на диске, особенно тем, которые многократно используют библиотечные функции. Есть также статические связываемые библиотеки для тех, кто желает пользоваться отладкой на уровне объектных кодов или иметь "полные" выполняемые программы, которые не нуждаются в разделяемых библиотеках. В Linux разделяемые библиотеки динамически связываются во время выполнения, позволяя программисту заменять библиотечные модули своими собственными.

Для обеспечения отладки ядро Linux выдает дампы памяти для "посмертного" анализа. Использование дампа и динамических отладчиков позволяет определить причины краха программы.

Linux против Windows

Возможно, Windows XP вас вполне устраивает. Но все - таки продуктам Microsoft свойственны всякого рода недостатки, начиная от несовместимости новой операционной системы с более старыми программами и кончая хорошо известными проблемами с безопасностью, что вызывает немалое раздражение пользователей. А Windows XP к тому же еще унижает их, заставляя просить у Microsoft новый ключ, если надо модернизировать более одного - двух главных компонентов. И какая же всему этому альтернатива? Может быть, операционная система Linux? Два года назад она была еще шероховатой. Сегодня тоже не скажешь, что Linux превосходит Windows по всем статьям, однако пингвин стал более зрелым.

ОС Windows часто довольно трудно заставить работать так, как вам нужно, а иногда кажется, что это в принципе невозможно, в то время как Linux - настоящий апофеоз настраиваемости всего и вся. Вы можете полностью изменить Рабочий стол, если вам не нравится, как он устроен и функционирует. Linux также обеспечивает большую безопасность по сравнению с Windows-системами и работает на большем количестве оборудования: от 486-х процессоров до новейших Pentium 4, в том числе есть версии Linux и для Мейнфреймов. Во многих отношениях Linux представляет собой скорее некий набор допускающих бесконечно разнообразную аранжировку строительных элементов для построения операционных систем, нежели единую ОС.

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

А кому, собственно, она нужна?

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

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

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

Сравните!

Windows

Linux

Много пользователей на одном ПК

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

ОС Linux обладала такими способностями изначально - она всегда поддерживала многопользовательскую работу и возможность одновременной регистрации нескольких пользователей.

Изобилие панелей управления.

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

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

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

Настраиваемый графический интерфейс

Windows - это система с одним ГИП на все случаи жизни: никакое приложение Windows, даже командная строка, не будет работать вне громоздкого ГИП Windows, чем исключается возможность использования Windows XP на более старых и медленных машинах.

Большинство версий Linux позволяют делать выбор из нескольких различных графических интерфейсов пользователя (ГИП), включая два наиболее популярных, KDE и GNOME. Оба они имеют черты, знакомые пользователям Windows, - такие, как «пусковая кнопка» в одном из углов экрана, с помощью которой можно запускать программы, и значок мусорной корзины на Рабочем столе, где можно найти удаленные файлы. На более старом оборудовании можно использовать Linux вообще без ГИП или с каким-либо функционально облегченным ГИП.

Пять причин ненавидеть Linux

Пять причин любить Linux

Приходится быть знатоком.

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

Даром, даром, даром.

Хотя дистрибуторы Linux и могут пополнять свои версии программами установки, обеспечивать техническую поддержку и издавать инсталляционные наборы со многими компакт- или DVD-дисками за определенную стоимость, они также раздают Linux и бесплатно.

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

Отстающая поддержка оборудования.

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

Высокая адаптивность.

Дистрибуторы Linux вольны всячески преобразовывать свои версии Linux с прицелом на специфические типы пользователей. Программисты могут модифицировать исходный код «под себя» и бесплатно распространять программное обеспечение дальше. Результатом является полностью настраиваемая под нужды пользователя ОС, свободная от ограничений, которые вынуждают вас делать что-либо лишь одним определенным способом.

Второсортное программное обеспечение.

Для Linux можно получить любые мыслимые утилиты, причем по большей части бесплатно, но многие из них не могут сравниться с лучшими приложениями для Windows или для Mac.

Наипервейшие приложения для Linux - такие, как StarOffice, Evolution или The GIMP, - все еще обладают лишь некоторым подмножеством тех черт, которые можно найти в Microsoft Office, Microsoft Outlook или Adobe Photoshop.

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

Безопасность.

Linux нечасто становится жертвой всякого рода опасностей, с которыми сопряжена работа в сети и для которых уязвимы другие ОС.

Когда такое случается, легионы программистов, работающих с кодами Linux, обычно выдают «заплатки», позволяющие справиться с проблемой, в течение 24 часов - хотя, конечно, пользователям эти «заплатки» надо еще списать и применить.

Важной мишенью для создателей вирусов Linux не стала - пока.

Путаница с версиями.

Поскольку Linux - продукт бесплатный, то любой может упаковать эту операционную систему и продавать собственные дистрибуции. Если вы решили остановиться на Linux, то нужно еще определить, какая из этих дистрибуций для вас подходит: Mandrake, Red Hat, SuSE или какая-либо из десятков других.

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

Изобилие онлайновых справочных материалов.

Вы не смогли найти ответ на какой-то относящийся к Linux вопрос в прилагающейся к вашей версии документации?

Что же, в Web вы найдете сотни «ЧАВО?» с ответами на них, множество всяких практических советов и досок объявлений с сообщениями.

Техническая поддержка отнюдь не бесплатна.

Люди жалуются на стоимость технической поддержки Microsoft - 35 долл. за каждое обращение. Так вот, за немногими исключениями услуги дистрибуторов Linux обойдутся не дешевле; в случае SuSE бесплатная поддержка инсталляции жестко лимитирована.

Так что если вы начинающий пользователь Linux и планируете обращаться по телефону за помощью и советом, то поду- майте об установке Mandrake Linux, где звонок обходится в 15 долл. (или меньше при большом количестве звонков).

ОС на любой компьютер.

Linux в той или иной разновидности будет работать на чем угодно: от используемого в качестве подставки 486-го компьютера с 8 Мбайт оперативной памяти (попробуйте-ка сделать это с Windows XP) и до кластеров высокоскоростных серверов.

Не обязательно, конечно, одна и та же версия Linux будет выполнять одни и те же приложения, но вообще Linux хорошо подходит для тех случаев, когда компания Microsoft отправляет машины в прошлое своими постоянно растущими минимальными системными требованиями для работы Windows.


Начнем?...

В общих чертах установка SuSE Linux не слишком отличается от Windows. Собственно инсталляция занимает от 30 минут до часа, что сравнимо с установкой Windows от нуля. Но требуется настройка вручную несколько большего количества параметров, причем с помощью таких вариантов, которые могут сбить с толку тех, чей уровень компьютерной компетенции ниже среднего.

Гораздо проще устанавливать Linux, если ваш компьютер не старше четырех-пяти лет и допускает загрузку с дисковода компакт-дисков или DVD. Иначе вам придется загружаться с дискет.

На начальных этапах установка Linux очень похожа на установку Windows 2000 или XP: происходит запуск инсталляционного диска, после чего программа автоматически определяет большую часть имеющегося у вас оборудования, загружает подходящие драйверы и осведомляется о ваших пожеланиях относительно разбиения жесткого диска на разделы.

Непосредственно перед началом копирования файлов на жесткий диск Linux необходимо снабдить разделами с ее собственными файловыми системами. Как и в Windows, в любой версии Linux программа установки поможет вам в этом деле, однако имейте в виду, что место на жестком диске, выделенное для Linux, Windows в дальнейшем использовать не сможет. В зависимости от конкретной версии (точнее, дистрибуции) и выбранных вами опций, понадобится около 800 Мбайт свободного дискового пространства под базовую установку с графическим интерфейсом пользователя и офисным программным комплектом - примерно столько же, сколько для Windows 2000 или XP с приложениями.

Еще один важный шаг - это выбор графического интерфейса пользователя (ГИП). Их много, но два наиболее «продвинутых», KDE и GNOME, работают и выглядят очень похоже на Windows - у них аналогичные системные меню, панели задач и элементы управления окнами. KDE кажется несколько перегруженной и беспорядочной, но зато она буквально набита всякими инструментами. GNOME же напоминает MacOS X компании Apple. Если вам не нравится стиль интерфейса, можете списать себе другие или же выбрать определенный интерфейс для своего сеанса. А программы, которые поставляются с одним ГИП, прекрасно работают и с другими.

Наконец, нужно решить, какие приложения, утилиты и инструменты устанавливать. SuSE предлагает набор Default system («Система по умолчанию») - аналог «Типичной установки» Windows. У новых пользователей Linux может голова пойти кругом от изобилия бесплатных программ. Однако, с другой стороны, способ получения программ Microsoft, состоящий в том, что вас хватают за бумажник и тащат в компьютерный магазин для того, чтобы вы там купили дорогостоящую копию Microsoft Office, вряд ли лучше.

О регистрациях и Linux

Создание пользовательских учетных записей - еще один важный шаг, незнакомый любителям Windows 9x; эти учетные записи - некий в общем-то малозначительный довесок. А вот в Linux (равно как и в Windows XP/2000/NT) операционная система требует, чтобы за любое действие, осуществленное с ней, отвечал конкретный человек. Вы закончите установку по меньшей мере с двумя пользовательскими записями - администраторской (в Linux она называется «root», т. е. «корень») и еще одной - созданной для повседневной работы.

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

Windows XP Home (к Professional это не относится), с другой стороны, непростительно пренебрегает безопасностью во имя удобства: все пользователи этой системы получают привилегии, аналогичные тем, которые обеспечивает «корневой» статус в Linux. И в этом отношении Linux, безусловно, стоит выше.

Жизнь в Linux-пространстве

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

Если повезет, ваша установочная программа Linux создаст на Рабочем столе ярлыки для заданных в Windows разделов диска. Однако если дистрибуция Linux окажется несовместимой с используемой в Windows XP версией файловой системы NTFS, то вы не сможете брать файлы из папки «Мои документы» или каких-либо иных «карманов» Windows.

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

Установить соединение с Интернетом в Linux иногда ничуть не сложнее, чем в Windows, если не проще. Когда вы запускаете Linux в сети, подключение к локальной сети и к Интернету, скорее всего, заработает сразу после установки - вам нужно будет только выбрать имя главного компьютера. Если для вашей сетевой платы имеется Linux-драйвер, вы немедленно выйдете в Сеть. Но так называемые Win-модемы, которые существенным образом опираются на Windows, могут и не заработать в среде Linux.

Чем хороша Windows, так это простотой подключения к сетевым принтерам. Linux, используя специальную программу Samba, делает этот процесс почти столь же незамысловатым.

Linux также поддерживает многие USB-устройства, но вот Linux-драйвера для некоторых фотокамер и сканеров не существует. Если интересующего вас драйвера нет у производителя оборудования, когда для какого-то необходимого вам продукта нет Linux-поддержки, лучше продолжать использовать Windows (или, в крайнем случае, систему с двойной загрузкой).

Приложения в Linux

Мир Linux наполнен бесплатными программами - порой фантастическими, а порой и такими, о которых смело можно забыть. Вообще говоря, в этом мире имеется достаточно хороший эквивалент для любого из основных программных пакетов Windows. Пользователи Windows редактируют изображения в Adobe Photoshop, а поклонники Linux обращаются к графическому редактору The GIMP. Приложения Microsoft из программного комплекта Office - редактор текстов, рабочая таблица, презентационный пакет - очень близко к оригиналу воспроизведены в таких приложениях Linux, как OpenOffice и StarOffice. Причем по большей части офисные комплекты для Linux представляют собой аккуратные, профессионально выглядящие программы с поддержкой многих распространенных файловых форматов Windows.

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

Если не удается найти «родное» Linux-приложение, которое удовлетворяло бы ваши нужды, то всегда под рукой программа Wine (эмулятор Windows), которая поставляется почти со всеми версиями Linux. Wine способна выполнять многие распространенные приложения Windows прямо в Linux, но для того, чтобы заставить Wine работать, порой приходится затратить некоторые усилия. Поэтому компания CodeWeavers (www.codeweavers.com) предлагает за 55 долл. свою программу CrossOver Office, осуществляющую предварительное конфигурирование Wine для выполнения приложений Word, Excel, PowerPoint и Outlook популярных версий для Microsoft Office 97 и 2000.

Wine может оказаться удобным инструментом, однако это не панацея: ни Wine, ни CrossOver Office не обещают полной совместимости с приложениями Windows. Новейшие игры при использовании этих средств нуждаются в подстройке, а некоторые программы и вовсе отказываются работать. CrossOver Office выполняет некоторые приложения Microsoft Office, но с Microsoft Access вообще не способна управляться, равно как и ни с одной программой из состава Office XP.

Безопасность в Linux

Система ASPLinux, построенная на базе Red Hat Linux и поддерживающая стандарт IEEE POSIX (Portable Operating System Interface), обеспечивает многоуровневую систему приоритетов с вытесняющей многозадачностью, виртуальную организацию памяти и полную сетевую поддержку. Различные дистрибутивы операционной системы Linux, в частности ASPLinux, установленные на Интернет-серверы в сочетании с антивирусными программами, гарантируют максимальную безопасность внутренней сети предприятия. ОС ASPLinux, практически не поддающаяся атакам вирусов и обладающая встроенными средствами защиты от посторонних вторжений, например от хакерских, - надежное решение для построения сервера безопасности.

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

По данным Вирусной лаборатории, в настоящее время существует ни много ни мало семь вирусов, способных внедриться в Linux. Возникает закономерный вопрос: почему для Windows и ее приложений вирусы появляются чуть ли не ежедневно, а в случае с Linux этого не происходит?

Во-первых, Linux - многопользовательская система.

Во-вторых, вследствие классического построения Linux как «кирпичного здания», где каждый «кирпичик» - отдельная программа, имеющая свой путь развития, свои версии, достоинства и недостатки, вероятность распространения вируса снижается, поскольку он должен обладать некоторым «интеллектом», чтобы распознавать бреши в системе безопасности тех или иных программ.

В-третьих, при распространении в Сети вирусы часто используют почтовое ПО, самостоятельно запускающее исполняемые файлы.

В-четвертых, у Linux, как и у любой другой системы семейства UNIX-подобных, существует брандмауэр (межсетевой экран, firewall), при правильной настройке которого значительно снижается риск получить вирус через программу, работающую сервисом в локальной сети.

В-пятых, открытость исходных текстов способствует высокой защищенности Linux. Аудит кода производится тысячами программистов во всем мире, поэтому уязвимые места, как правило, достаточно быстро удаляются.

В-шестых, Linux переняла многое из программного обеспечения, разработанного ранее на старых ОС, где количество «дыр» значительно ниже в силу их возраста.

Конечно, здесь приведен далеко не полный список преимуществ Linux в сфере безопасности. Рассмотрим подробнее, как они влияют на распространяемость вирусов в сетях.

Вирусы условно можно разделить на несколько видов:

Boot-вирусы, поражающие загрузочные секторы жесткого диска. При работе в Linux и других UNIX-подобных ОС их функционирование невозможно из-за отсутствия прямого доступа к физическим секторам жестких дисков.

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

Вирусы-троянцы, автоматически запускаемые фоновым процессом и производящие вредоносные действия - порчу информации или передачу конфиденциальных данных злоумышленнику. Данный механизм практически неосуществим в Linux из-за того, что системный администратор может ежесекундно контролировать любой процесс, происходящий в данный момент в системе. В фоновом режиме, запущенном от имени рядового пользователя, невозможно прочитать ни одного важного файла, открывающего доступ к файлам других пользователей. Существует еще одно препятствие к запуску такого вируса в Linux: при разработке троянской программы для любой UNIX-подобной системы злоумышленнику требуется точно знать конфигурацию системы и состав входящих в нее библиотек, иначе программа просто не запустится или будет выполнять совсем не то, что было задумано автором.

Скриптовые вирусы, распространяемые в файлах закрытого формата (*.DOC, *.XLS). Они не способны активизироваться, даже если принесены на UNIX-подобную ОС, поскольку зачастую пишутся специально под продукты Microsoft. При импорте из формата файлов Microsoft в такие программы, как StarOffice/OpenOffice.org, gnumeric, KOffice, AbiWord, данные макросы обезвреживаются.

Вирусы, приходящие вместе с электронной почтой. Практически все перечисленные выше вирусы могут спокойно распространяться таким образом. Известные почтовые клиенты для Windows-систем используют стандартное API, чтобы открывать файлы, присланные во вложении к электронному письму. Поэтому файлы с расширениями .exe, .com, .pif, .bat, .dll при попытке открытия такого письма зачастую будут запущены операционной системой без предупреждения пользователя, а вирус получит полный доступ к файловой системе и дисковым накопителям компьютера.

В среде Linux подобное невозможно, поскольку ни одна почтовая программа не будет автоматически исполнять ни один файл (как известно, в UNIX-подобных системах признаком исполняемости файла является наличие не определенного расширения .com, .exe, .pif, ..., а специального атрибута файла, не передающегося через почтовые сообщения). На сервере с установленным антивирусом eSafe или AVP Каперского подобные вирусы можно обезвреживать на этапе обработки письма почтовым роботом, что обеспечивает защищенность входящих в локальную сеть рабочих станций с различными версиями Windows.

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

Еще один немаловажный момент обеспечения безопасности любой ОС - ее стойкость к хакерским атакам. Для защиты от нападений такого рода и строят межсетевые экраны. Как дополнительное средство обеспечения безопасности все системы на базе Linux имеют развитую схему фильтрации пакетов (statefull firewall), которая позволяет защититься от распространения вирусов напрямую, в обход почтовых и файловых серверов с поддержкой проверки антивирусными программами, а также обезопасить компьютеры от несанкционированного доступа к ресурсам, на которых установлена ОС Windows, и от атак типа DoS (Deny-of- Service - отказ от обслуживания), рассчитанных на блокирование предоставления какого-либо сервиса, а также на использование уязвимых мест в известных общеупотребимых сервисах.

Хакеры довольно часто нападают на различные сервисы, работающие от имени суперпользователя, к примеру на ftpd, pop3, imap, ntp, sshd и др., которым необходима авторизация пользователей или прямой доступ к сетевым интерфейсам. Такие атаки производятся с помощью эксплоитов. Эксплоиты - специальные хакерские программы, использующие ошибку в каком-либо конкретном ПО. Они нужны для получения доступа к компьютеру через слабые места в программах, запущенных суперпользователем. Разные эксплоиты делают разные гадости, эксплуатируют разные ошибки и потому не универсальны. Чаще всего они вызывают аварийную остановку программы. Эти эксплоиты посылают специальные последовательности символов, переполняющие внутренние буфера программы, и выполняют код, содержащийся в посланной последовательности. В ASPLinux существует встроенная защита от атак типа buffer overflow (переполнение буфера).


Unix в стиле BSD

Последнее время вокруг операционной системы Linux такое количество разговоров, что только ленивый не пробовал устанавливать ее на свой компьютер. Пользователи ходят по реальным и виртуальным магазинам и покупают Red Hat, Mandrake, ASP, ALT... Компании, выпускающие все новые и новые версии дистрибутивов с периодичностью чуть ли не раз в месяц, все как одна утверждают, что их дистрибутив самый универсальный и самый «дружественный к пользователю». И как-то незаслуженно в тени остались классические Unix-системы. Что вы слышали о FreeBSD? Что это за система и какие у нее преимущества перед Linux?

Семейство BSD

Примечателен тот факт, что разработку финансировало Министерство обороны США. BSD-системы развивались значительно дольше, чем Linux, и это заметно: все клоны хорошо отлажены. На сегодняшний день целесообразно говорить о трех самых популярных: FreeBSD, OpenBSD и NetBSD. Несмотря на схожесть названий, это три совершенно разные системы с разными ядрами (да и цели у разработчиков были совсем не одни и те же), хотя отличий в ПО, поставляемом в комплектах, не так уж и много. FreeBSD разрабатывалась специально для архитектуры i386, а потом, когда приобрела популярность, была портирована на другие платформы: Alpha, IA64, Spare... Разработчики OpenBSD следовали тому принципу, что система должна быть максимально безопасной по умолчанию (secure by default). Что ж, им это удалось: сейчас OpenBSD -самая «непробиваемая» по части безопасности сетевая ОС. Ее место на серверах. А вот целью проекта NetBSD было обеспечение работоспособности системы везде, где только возможно. Текущая версия NetBSD способна работать на 53 (!) различных аппаратных платформах, включая игровые приставки Sony Playstation 2 и Sega Dreamcast. Мы подробно рассмотрим именно FreeBSD, так как она наиболее универсальна.

FreeBSD

Ядро FreeBSD происходит от ядра классического BSD Unix, созданного в Клифорнийском университете в Беркли. Сразу хочется отметить, что неподготовленному пользователю вот так просто взять и установить эту систему вряд ли удастся. Привыкшим к «дружественным» дистрибутивам Windows и Linux будет очень нелегко. FreeBSD - ОС для серьезного и грамотного пользователя. Впрочем, если вы имели хотя бы небольшой опыт работы в Slackware или Gentoo, то многое здесь покажется знакомым. Например, утилита установки FreeBSD - sysinstall (которая, в свою очередь, является еще и универсальным конфигуратором) очень напоминает инсталлятор Slackware.

Под управлением FreeBSD работает огромное количество веб-серверов: Yahoo, Microsoft Hotmail, Nokia, Wall Street Journal. В связи с этим бытует мнение, что удел FreeBSD -лишь серверы, однако мне кажется, что это в корне неверно. FreeBSD, если ее грамотно настроить, очень удобна для повседневного использования. Во всяком случае, она уж точно не хуже, чем «дружественные к пользователю» дистрибутивы Linux. Разработкой FreeBSD занимается сравнительно небольшая группа первоклассных специалистов. И разрабатывают они не просто ядро, а именно законченную систему. Новые стабильные версии FreeBSD выходят примерно раз в полгода.


О версиях

На официальном сайте FreeBSD (http://www.freebsd.org) представлены две ветви: стабильная и текущая (для разработчиков). Ко времени подготовки статьи последними были версии 4.9 и 5.2.1 соответственно. Стабильную ветвь разработчики рекомендуют устанавливать на серверы. Хочется отметить, что ветвь 4.x отточена и отлажена до предела, в то время как работы над версией 5.x были начаты не слишком давно - около двух лет назад. Вы, наверное, заметили, что стабильную версию от нестабильной можно отличить по второй цифре в номере версии. Для стабильных она нечетная, для нестабильных - четная. И еще: если у вас не самое новое «железо», то не стоит гнаться за последней версией, ваш выбор в этом случае - 4.9, так как ее можно без труда установить даже на компьютер с процессором класса i486.

Что нового в пятой версии?

Самым заметным нововведением, как мне кажется, стала поддержка новой файловой системы UFS2, которая «понимает» разделы размером свыше одного терабайта. Если такое нововведение сейчас может показаться лишним, вспомните, каким был объем жестких дисков три-четыре года назад, и сравните его с сегодняшним (80-160 Гбайт). UFS2 - нежурналируемая файловая система, поэтому ее следует проверять после аварийных перезагрузок, вызванных, например, сбоями в сети. И тут очень пригодится bgfsck - новое средство для проверки файловой системы в фоновом режиме. Еще в пятой версии значительно улучшилась поддержка кириллицы и нестандартного оборудования. Наконец-то появилась полная поддержка Bluetooth и IEEE 1394, а также IPv6. Весь список нововведений можно посмотреть на сайте http://www.freebsd.org/releases/ 5.2.1 R/relnotes-i386.html.

Минусы

Начну именно с минусов, поскольку их не очень много, причем некоторые крайне неоднозначны. Один из главнейших недостатков FreeBSD - отсутствие официальных драйверов от производителей некоторых устройств, например видеокарты от ATI, всю мощь которых можно получить только в Windows или Linux. Хотя, например, nVidia выпускает драйверы для FreeBSD так же исправно, как и для Linux. Еще одним минусом FreeBSD является то, что эта система не так популярна, как Linux, поэтому документации и интернет-ресурсов, посвященных FreeBSD, на русском языке значительно меньше.

Плюсы

В первую очередь отмечу отсутствие конфликтов различных версий системных библиотек при сборке программ из исходных текстов, что так раздражает пользователей Linux. Внутреннее устройство FreeBSD гораздо нагляднее, чем у Linux. Так, например, инициализацией системы управляет один-единственный скрипт. FreeBSD имеет мощную систему установки/удаления программ, называющуюся системой портов. Установка приложений во FreeBSD выглядит примерно следующим образом: пользователь в директории /usr/ports/ выбирает программу, заходит в ее каталог, набирает команду make. В ответ система сама загрузит исходные тексты программы (и дополнительные библиотеки, если они потребуются) с одного из ftp-серверов и откомпилирует ее. После этого пользователю остается ввести команду make install. Для переустановки программы вместо make install следует выполнить make reinstall, a для удаления - make deinstall. Пользователям Gentoo Linux такая система установки/обновления приложений хорошо знакома, поскольку идея присутствующей в этой ОС системы портежей явно позаимствована из FreeBSD.

К несомненным плюсам FreeBSD относится громадное количество приложений: в список приложений для FreeBSD (называемый древом портов) входят порты всех программ, написанных под Linux или абстрактный Unix, распространяющихся с открытыми исходными текстами. Это значит, что во FreeBSD можно пользоваться привычными KDE, Gnome, Mozilla, Evolution, OpenOffice, XMMS и Mplayer. Если вы работаете в каком-либо коммерческом приложении, написанном специально для Linux, его запуск также возможен, так как ядром системы FreeBSD предусмотрена совместимость с бинарными файлами Linux, NetBSD, 386BSD.

Итог

FreeBSD для начинающего «линуксоида» все же сложновата. Однако если вы знакомы со Slackware или Gentoo, обязательно попробуйте эту систему. Ваше рабочее окружение не изменится (KDE/OpenOffice/XMMS), зато вы получите операционную систему, максимально отлаженную, безопасную и свободную от конфликтов библиотек, да еще и с великолепным механизмом установки/обновления программ.

Как получить систему? Разработчики рекомендуют заказывать ее на http://www.freebsdmall.com/, однако мне кажется, что это неприемлемо для граждан СНГ, ведь для покупки требуется наличие кредитной карты Visa/Discover. Я бы порекомендовал заказать FreeBSD на www.linuxshop.ru, www.inuxcenter.ru или www.nixp.ru/cdrom/, тем более что и цены здесь невысокие.


Производительность системы

Коэффициент готовности

Время ответа

Пропускная способность

исунок 2. Факторы производительности системы

Системная виртуальная машина

Слой Windows API

Низкоуровневые компоненты операционной системы

Виртуальные машины MS DOS

32-разрядные приложения Windows

Общее адресное пространство

16-разрядные приложения Windows

Интерфейс пользователя (Проводник или Диспетчер программ)

Виртуальная машина MS DOS

Модули

KERNEL.EXE и KERNEL32.DLL

Модули

GDI.EXE и

GDI32.DLL

Модули

USER.EXE и

USER32.DLL

Подсистема управления файлами

Сетевые компоненты

Службы операционной системы

Диспетчер виртуальных машин

Драйверы устройств и модель драйверов WDM

Кольцо 3

Кольцо 0

Рисунок 17. Архитектура Windows 98

Система программного обеспечения мейнфрейма (ЕС ЭВМ)

Пакеты прикладных программ

Операционные

системы

Комплексы программ технического обслуживания

Рисунок 18. Структура системы программного обеспечения мейнфрейма

Операционная система

Управляющая программа

Обрабатывающие программа

Программа начальной загрузки

Супервизор

Программа

инициализации

ядра

Программы управления данными

Программы управления восстановлением

Управление заданиями

Супервизор прерываний

Супервизор

задач

Супервизор оверлейных программ

Супервизор

памяти

Супервизор ввода-вывода

Супервизор

времени

Программа

загрузки

Диспетчер

Супервизор прерываний

Супервизор прерываний

Последовательная организация данных

Индексно-последовательная организация данных

Прямая организация данных

Библиотечная организация данных

Трансляторы:

Ассемблер,

АЛГОЛ,

ФОРТРАН,

КОБОЛ,

РПГ,

PL1

Программное обеспечение телеобработки данных

Программное обеспечение машинной

графики

Редактор связей

Загрузчик

Программы сортировки
неё ионной системыеяванияки данных

Тестовый транслятор (ТЕСТРАН)

Графический метод доступа

Программы

графического

программирования

Обеспечение

работы дисплея в качестве консоли оператора

Рисунок 19 Структура операционной системы мейнфрейма


 

А также другие работы, которые могут Вас заинтересовать

16662. АВТОМОБИЛЬ КАК ОБЪЕКТ ПРАВА СОБСТВЕННОСТИ ГРАЖДАНИНА 107.84 KB
  АВТОМОБИЛЬ КАК ОБЪЕКТ ПРАВА СОБСТВЕННОСТИ ГРАЖДАНИНА Материал подготовлен с использованием правовых актов по состоянию на 14 июля 1998 года В.А. БЕЛОВ В.А. Белов доцент кафедры гражданского права юридического факультета МГУ им. М.В. Ломоносова кандидат юридиче
16663. УСТУПКА ТРЕБОВАНИЙ ПО ДОГОВОРУ БАНКОВСКОГО СЧЕТА: ТЕОРИЯ И ПРАКТИКА 50.06 KB
  УСТУПКА ТРЕБОВАНИЙ ПО ДОГОВОРУ БАНКОВСКОГО СЧЕТА: ТЕОРИЯ И ПРАКТИКА В.А. БЕЛОВ В.А. Белов доцент кафедры гражданского права юридического факультета МГУ кандидат юридических наук. Договор банковского счета отличается рядом специфических качеств от других гр...
16664. СОДЕРЖАНИЕ И ДЕЙСТВИЕ ДОГОВОРА УСТУПКИ ТРЕБОВАНИЯ 43.51 KB
  СОДЕРЖАНИЕ И ДЕЙСТВИЕ ДОГОВОРА УСТУПКИ ТРЕБОВАНИЯ Материал подготовлен с использованием правовых актов по состоянию на 29 ноября 2000 года В.А. БЕЛОВ Белов Вадим Анатольевич доцент кафедры гражданского права юридического факультета МГУ им. М.В. Ломоносова кан...
16665. ИНСТИТУТ ПРЕИМУЩЕСТВЕННОЙ ПОКУПКИ В РОССИЙСКОМ И ЗАРУБЕЖНОМ ПРАВЕ 88.4 KB
  ИНСТИТУТ ПРЕИМУЩЕСТВЕННОЙ ПОКУПКИ В РОССИЙСКОМ И ЗАРУБЕЖНОМ ПРАВЕ /Хозяйство и право N 10 2003/ К. СКЛОВСКИЙ М. СМИРНОВА К. Скловский доктор юридических наук. М. Смирнова магистр частного права. В российском законодательстве закреплено право преимущес
16666. О ПРАВЕ НА ОТЧУЖДЕНИЕ ИМУЩЕСТВА БЕЗ ПЕРЕДАЧИ ВЛАДЕНИЯ 43.13 KB
  О ПРАВЕ НА ОТЧУЖДЕНИЕ ИМУЩЕСТВА БЕЗ ПЕРЕДАЧИ ВЛАДЕНИЯ К. СКЛОВСКИЙ К. Скловский партнер адвокатского бюро Барщевский и партнеры доктор юридических наук. Поскольку гражданский оборот спонтанно разлучает собственность и владение приходится признать что соб...
16667. О ВОЗМЕЩЕНИИ ВРЕДА, ПРИЧИНЕННОГО В РЕЗУЛЬТАТЕ ТЕРРОРИСТИЧЕСКОЙ АКЦИИ 60.97 KB
  О ВОЗМЕЩЕНИИ ВРЕДА ПРИЧИНЕННОГО В РЕЗУЛЬТАТЕ ТЕРРОРИСТИЧЕСКОЙ АКЦИИ К. СКЛОВСКИЙ М. СМИРНОВА К. Скловский адвокат доктор юридических наук. М. Смирнова магистр частного права. Терроризм представляет собой одну из актуальнейших проблем современности ко...
16668. ПРИМЕНЕНИЕ НОРМ О ДОБРОЙ СОВЕСТИ В ГРАЖДАНСКОМ ПРАВЕ РОССИИ 76.13 KB
  ПРИМЕНЕНИЕ НОРМ О ДОБРОЙ СОВЕСТИ В ГРАЖДАНСКОМ ПРАВЕ РОССИИ К. СКЛОВСКИЙ К. Скловский доктор юридических наук партнер Адвокатского бюро Барщевский и партнеры. Во время дискуссии происходившей три года назад в Центре частного права один из наших ведущих ци...
16669. ВОПРОС О ПРЕДЕЛАХ ВМЕШАТЕЛЬСТВА ГОСУДАРСТВА В ЧАСТНУЮ СОБСТВЕННОСТЬ В СУДЕБНОЙ ПРАКТИКЕ 40.14 KB
  ВОПРОС О ПРЕДЕЛАХ ВМЕШАТЕЛЬСТВА ГОСУДАРСТВА В ЧАСТНУЮ СОБСТВЕННОСТЬ В СУДЕБНОЙ ПРАКТИКЕ К. СКЛОВСКИЙ К. Скловский адвокат партнер адвокатского бюро Барщевский и партнеры доктор юридических наук. В 2001 году заметно обозначился интерес отечественных юристо...
16670. МЕХАНИЗМ ПЕРЕХОДА ПРАВА И ПОСЛЕДСТВИЯ ЦЕССИИ 36.33 KB
  МЕХАНИЗМ ПЕРЕХОДА ПРАВА И ПОСЛЕДСТВИЯ ЦЕССИИ К. СКЛОВСКИЙ К. Скловский доктор юридических наук. Гражданский оборот можно представить как оборот прав вещных и обязательственных. Но если квалификация оборота вещей не вызывает больших теоретических затруднений...