Информационной системой

Вид материалаДокументы

Содержание


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


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


Основной задачей ИС является удовлетворение конкретных информационных потребностей в рамках конкретной предметной области. Современные ИС де-факто немыслимы без использования баз данных и СУБД, поэтому термин «информационная система» на практике сливается по смыслу с термином «система баз данных».


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

Часть задач бывает «покрыта» одновременно несколькими ИС, часть задач - вовсе не автоматизирована. Такая ситуация получила название «лоскутной автоматизации» и является довольно типичной для многих предприятий.


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


Классификация по архитектуре


По степени распределённости отличают:


* настольные (desktop), или локальные ИС, в которых все компоненты (БД, СУБД, клиентские приложения) находятся на одном компьютере;

* распределённые (distributed) ИС, в которых компоненты распределены по нескольким компьютерам.


Распределённые ИС, в свою очередь, разделяют на:


* файл-серверные ИС (ИС с архитектурой "файл-сервер");

* клиент-серверные ИС (ИС с архитектурой "клиент-сервер").


В файл-серверных ИС база данных находится на файловом сервере, а СУБД и клиентские приложения находятся на рабочих станциях.


В клиент-серверных ИС база данных и СУБД находятся на сервере, а на рабочих станциях находятся клиентские приложения.


В свою очередь, клиент-серверные ИС разделяют на двухзвенные и многозвенные.


В двухзвенных (two-tier) ИС всего два типа "звеньев": сервер баз данных, на котором находятся БД и СУБД, и рабочие станции, на которых находятся клиентские приложения. Клиентские приложения обращаются к СУБД напрямую.


В многозвенных (multi-tier) ИС добавляются промежуточные "звенья": серверы приложений (application servers). Пользовательские клиентские приложения не обращаются к СУБД напрямую, они взаимодействуют с промежуточными звеньями.

[править] Классификация по степени автоматизации


По степени автоматизации ИС делятся на:


* автоматизированные: информационные системы, в которых автоматизация может быть неполной (то есть требуется постоянное вмешательство персонала);

* автоматические: автоматизированные ИС, в которых автоматизация является полной, то есть вмешательство персонала не требуется или требуется только эпизодически.


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


По характеру обработки данных ИС делятся на:


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

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


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


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


* Экономическая информационная система - информационная система, предназначенная для выполнения функций управления на предприятии.

* Медицинская информационная система - информационная система, предназначенная для использования в лечебном или лечебно-профилактическом учреждении.

* Географическая информационная система - информационная система, обеспечивающая сбор, хранение, обработку, доступ, отображение и распространение пространственно-координированных данных (пространственных данных).


Классификация по охвату задач (масштабности)


* Персональная ИС предназначена для решения некоторого круга задач одного человека.

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

* Корпоративная ИС в идеале охватывает все информационные процессы целого предприятия, достигая их полной согласованности, безызбыточности и прозрачности. Такие системы иногда называют системами комплексной автоматизации предприятия.


Информационные технологии


(ИТ, от англ. information technology, IT) - широкий класс дисциплин и областей деятельности, относящихся к технологиям управления и обработки данных, а также создания данных, в том числе, с применением вычислительной техники.


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


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


Основные черты современных ИТ:


* компьютерная обработка информации по заданным алгоритмам;

* хранение больших объёмов информации на машинных носителях;

* передача информации на значительные расстояния в ограниченное время.


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


Некоторые сферы применения IT:


Искусственный интеллект, Машинный перевод, Машинное зрение, Расширенное машинное познание, Безэкранные дисплеи, Голография, Робототехника, Молекулярная нанотехнология, Самовосстанавливающиеся материалы, Имплантаты и Протезирование, Нейросетевое моделирование.

Понятия операционной системы

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

К основным функциям операционной системы относятся:
  1. управление ресурсами ЭВМ (процессором, оперативной памятью (ОП), внешними устройствами);
  2. обеспечение запуска и выполнение системных и пользовательских программ;
  3. организация обмена информацией между разными устройствами ЭВМ (процессор – ОП, процессор – сопроцессор и т.д.);
  4. выполнение работ по хранению информации во внешней памяти и обслуживанию дисков;
  5. обеспечение диалога пользователя (интерфейса) с ЭВМ.

Операционная система загружается при включении компьютера.

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


Состав операционных систем

Большинство ОС состоит из двух частей – ядра и оболочки.

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

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

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

Примечание

Слово каталог (в переводе с греческого) означает «список», «перечень предметов», составленный в порядке, облегчающем их нахождение. Слово папка было введено в перечень компьютерных терминов с широким распространением сначала оболочки, а затем операционной системы Windows фирмы Microsoft, которая посчитала его более уместным в графическом пользовательском интерфейсе (graphical user interface - GUI). Термин каталог точнее, т.к. в канцелярской папке хранятся сами документы, а в каталоге – именно список файлов, а не сами файлы. Обычно слова «в списке» опускают и говорят просто «файл (файлы) хранится (хранятся) в каталоге (папке)».

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

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

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

Часть ОС, отвечающая за интерфейс между ОС и пользователями, называется оболочкой. Ее назначение – осуществление взаимодействия между пользователем и машиной. Современные ОС реализуют эту задачу с помощью графического пользовательского интерфейса (graphical user interface - GUI), в котором каждый объект (файл, папка, диск) представлен пиктограммой (значком) на экране монитора. Такие системы позволяют пользователю просто указать мышью на объект и применить к нему соответствующую команду. Более старые ОС предоставляли возможность пользователю вводить текстовые команды, требовавшие строго соблюдения грамматических и синтаксических правил командного языка.

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

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

Понятие файловой структуры

Файл – это информация, которая хранится на машинном носителе информации под определенным именем.

В файлах могут храниться программы, тексты, данные.

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

Расширение показывает тип файла:

ехе, сом – выполняемые файлы, т.е. программы, написанные на одном из языков программирования;

doc – файлы, созданные в текстовом редакторе Word;

xls – файлы, созданные в табличном процессоре Excel;

mdb – файлы системы управления базами данных (СУБД) Access.

Обычно для удобства работы файлы объединяются в каталоги (папки).

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

C:\User\Письмо.docполное имя файла Письмо.doc, находящегося на диске С: в папке User.

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

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

Шаблоном называется обобщенное имя для группы файлов, в котором имеются символы: * или ?.

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

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

Например,

шаблон *.doc обозначает все файлы с расширением .doc,

шаблон Письмо?.doc обозначает все файлы с именами Письмо1.doc, Письмо3.doc, ПисьмоZ.doc, ПисьмоA.doc, и т.д.

Для хранения файлов на дисках и обеспечения доступа к ним современные дисковые ОС создают файловые системы. Принцип организации многих файловых систем – табличный.

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

Данные о том, в каком месте диска записан тот или иной файл, хранятся в системной области диска в специальных таблицах размещения файлов.

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


Первые ОС для персональных компьютеров относились к локальным ОС, т.к. они устанавливались на отдельных, несвязанных между собой компьютерах и организовывали работу одного конкретного ПК. К локальным ОС относились операционная система MS DOS, ранние версии OS/2.

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

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

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


Особое внимание в течение всего последнего десятилетия уделялось корпоративным сетевым операционным системам. Их дальнейшее развитие представляет одну из наиболее важных задач и в обозримом будущем. Корпоративная операционная система отличается способностью хорошо и устойчиво работать в крупных сетях, которые характерны для больших предприятий, имеющих отделения в десятках городов и, возможно, в разных странах. Таким сетям органически присуща высокая степень гетерогенности (неоднородности по составу) программных и аппаратных средств, поэтому корпоративная ОС должна взаимодействовать с операционными системами разных типов и работать на различных аппаратных платформах. К настоящему времени достаточно явно определились лидеры в классе корпоративных ОС – это Novell NetWare, Microsoft Windows NT и Windows 2000, Windows ХР, а также UNIX-системы различных производителей аппаратных платформ.

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

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

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

Особенности алгоритмов управления ресурсами

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

Поддержка многопользовательского режима. По числу одновременно работающих пользователей ОС делятся на:
  • однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
  • многопользовательские (UNIX, Windows NT).

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

Вытесняющая и невытесняющая многозадачность. Важнейшим разделяемым ресурсом является процессорное время. Способ распределения процессорного времени между несколькими одновременно существующими в системе процессами (или нитями) во многом определяет специфику ОС. Среди множества существующих вариантов реализации многозадачности можно выделить две группы алгоритмов:
  • невытесняющая многозадачность (NetWare, Windows 3.x);
  • вытесняющая многозадачность (Windows NT, OS/2, UNIX).

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

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

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

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

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

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

Особенности аппаратных платформ

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

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

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

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

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

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

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

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



Особенности областей использования

Многозадачные ОС подразделяются на три типа в соответствии с использованными при их разработке критериями эффективности:
  • системы пакетной обработки (например, OC EC),
  • системы разделения времени (UNIX, VMS),
  • системы реального времени (QNX, RT/11).

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

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

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

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

Особенности методов построения

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

К таким базовым концепциям относятся:
  • Способы построения ядра системы - монолитное ядро или микроядерный подход. Большинство ОС использует монолитное ядро, которое компонуется как одна программа, работающая в привилегированном режиме и использующая быстрые переходы с одной процедуры на другую, не требующие переключения из привилегированного режима в пользовательский, и наоборот. Альтернативой является построение ОС на базе микроядра, работающего также в привилегированном режиме и выполняющего только минимум функций по управлению аппаратурой, в то время как функции ОС более высокого уровня выполняют специализированные компоненты ОС - серверы, работающие в пользовательском режиме. При таком построении ОС работает более медленно, так как часто выполняются переходы между привилегированным режимом и пользовательским, зато система получается более гибкой - ее функции можно наращивать, модифицировать или сужать, добавляя, модифицируя или исключая серверы пользовательского режима. Кроме того, серверы хорошо защищены друг от друга, как и любые пользовательские процессы.
  • Построение ОС на базе объектно-ориентированного подхода дает возможность использовать все его достоинства, хорошо зарекомендовавшие себя на уровне приложений, внутри операционной системы, а именно: аккумуляцию удачных решений в форме стандартных объектов, возможность создания новых объектов на базе имеющихся с помощью механизма наследования, хорошую защиту данных за счет их инкапсуляции во внутренние структуры объекта, что делает данные недоступными для несанкционированного использования извне, структурированность системы, состоящей из набора хорошо определенных объектов.
  • Наличие нескольких прикладных сред дает возможность в рамках одной ОС одновременно выполнять приложения, разработанные для нескольких ОС. Многие современные операционные системы поддерживают одновременно прикладные среды MS-DOS, Windows, UNIX (POSIX), OS/2 или хотя бы некоторого подмножества из этого популярного набора. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра, над которым работают различные серверы, часть которых реализуют прикладную среду той или иной операционной системы.
  • Распределенная организация операционной системы позволяет упростить работу пользователей и программистов в сетевых средах. В распределенной ОС реализованы механизмы, которые дают возможность пользователю представлять и воспринимать сеть в виде традиционного однопроцессорного компьютера. Характерными признаками распределенной организации ОС являются: наличие единой справочной службы разделяемых ресурсов, единой службы времени, использование механизма вызова удаленных процедур (RPC) для прозрачного распределения программных процедур по машинам, многонитевой обработки, позволяющей распараллеливать вычисления в рамках одной задачи и выполнять эту задачу сразу на нескольких компьютерах сети, а также наличие других распределенных служб.