Что входит в состав системного программного обеспечения? Назначение и основные функции операционных систем. Состав операционной системы

» [Экзамен по информатике][Билет №8]

Назначение и состав операционной системы компьютера. Загрузка компьютера.

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

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

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

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

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

  1. Ядро – переводит команды с языка программ на язык «машинных кодов», понятный компьютеру.
  2. Драйверы – программы, управляющие устройствами.
  3. Интерфейс – оболочка, с помощью которой пользователь общается с компьютером.

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

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

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

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

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

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

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

Запуск компьютера

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

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

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

Затем BIOS начитает поиск программы-загрузчика операционной системы. Программа-загрузчик помещается в ОЗУ и начинается процесс загрузки файлов операционной системы.

Файлы операционной системы хранятся во внешней, долговременной памяти (на жестком диске, на CD …). Однако программы могут выполнятся, только если они находятся в ОЗУ, поэтому файлы ОС необходимо загрузить в оперативную память.

Диск, на котором находятся файлы операционной системы и с которого происходит загрузка, называют системным. Если системные диски в компьютере отсутствуют, на экране монитора появляется сообщение "Non system disk" и компьютер «зависает», т. е. загрузка операционной системы прекращается и компьютер остается неработоспособным.

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

Компьютеры без операционных систем

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

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

Первые дисковые операционные системы

Серьезная необходимость в операционных системах возникла, когда к персональным компьютерам стали подключать дисководы. Дисковод отличается от магнитофона тем, что это устройство свободного доступа, а магнитофон - устройство последовательного доступа. Для загрузки программы с ленты надо было перемотать кассету, после чего компьютер загружал первую встретившуюся программу.
На диске есть свобода выбора. На музыкальном диске можно включить воспроизведение любой песни. С магнитного диска можно загрузить любую программу. Поэтому команды загрузки стали очень сложными. Надо было указывать номер дорожки и номер сектора, в котором находится то, что надо загрузить. Например, для загрузки игры Посадка на Луну приходилось давать команду типа: LOAD *d* 29:37, 31:14

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

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

Неграфические операционные системы

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

Вместе с развитием жестких и гибких дисков происходило увеличение оперативной памяти компьютера, менялись также процессоры. Каждая новая операционная система все лучше использовала оперативную память и могла работать со все более мощными процессорами.
Для компьютеров IВМ РС основной операционной системой с 1981 г. по 1995 г. была так называемая система МS-DOS. За эти годы она прошла развитие от версии МS-DOS 1.0 до МS-DOS 6.22.

Программы-оболочки

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

Когда-то МS-DOS выступила «посредником» между человеком и компьютером и помогла превратить сложные команды обращения к дискам в более простые и понятные, но по мере развития сама «обросла» изобилием команд и стала сдерживать работу с компьютером. Так возникла необходимость в новом посреднике - тогда появились так называемые программы-оболочки. Оболочка - это программа, которая запускается под управлением операционной системы и помогает человеку работать с этой операционной системой. Одна из самых известных и распространенных во всем мире программ-оболочек называется Norton Comander. Ее разработал известнейший американский программист Питер Нортон, получивший всемирное признание за то, что упростил работу с компьютером для миллионов людей. Программа-оболочка наглядно показывает на экране всю файловую структуру компьютера: диски, каталоги и файлы. С такой программой не надо набирать сложные команды МS-DOS в командной строке. Файлы можно разыскивать, копировать, перемещать, удалять, сортировать, изменять (редактировать, править) запускать, пользуясь всего лишь нескольким клавишами. Просто, понятно и удобно. Сегодня Norton Comander все еще используют на многих компьютерах, особенно на тех, которые работают в системе МS-DOS. Правда, она все-таки устарела. Сейчас для работы с принято использовать более современные средства

Графические оболочки

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

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

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

Работы над графической операционной системой для IВМ РС в компании Microsoft начались еще в 1981 г., но впервые такая система вышла в свет только в 1995 г. под названием Microsoft Windows 95. До появления Microsoft Windows 95 компьютеры IВМ РС работали с неграфической системой МS-DOS, но для нее были сделаны несколько графических оболочек Windows 1.0, Windows 2.0, Windows 3.0, Windows 3.1, Windows 3.11.

Оболочки Windows запускались под управлением МS-DOS, то есть не были самостоятельными операционными системами. Но поскольку с появлением Windows открылись некоторые новые возможности, все-таки принято называть Windows не оболочкой, а средой. Вот некоторые особенности Windows, отличающие эту среду от прочих оболочек:

Графические операционные системы

Выпущенная в сентябре 1995 г. система Windows 95 стала первой графической операционной системой для компьютеров IВМ РС.

Все следующие версии операционных систем Windows (98, NT, ME, 2000, XP) являются графическими.

Производители аппаратного обеспечения изготавливают узлы и приборы так, чтобы они были совместимы с Windows . Мы можем достаточно смело приобретать новые устройства и устанавливать их в компьютер, рассчитывая на то, что все прочие устройства и программы будут работать нормально. Система Windows ввела новый стандарт самоустанавливающихся устройств (plud-and-play). Подключение таких устройств происходит автоматически. Операционная система сама «узнает», что установлено в компьютере, и настраивается на работу с новым оборудованием.

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

Операционные системы компании Microsoft:

  • DOS (Disk Operating System). Интерфейс – командная строка. Все команды приходилось набирать вручную, в командной строке ОС.
  • Windows 3.1 и 3.11. – первый графический интерфейс. Хотя многие не считали эту систему операционной, а лишь системой, расширяющей возможности DOS.
    У всех дальнейших операционных систем интерфейс графический.
  • Windows-95.
  • Семейство Windows-98 / NT / ME / 2000 / XP.

Элементы интерфейса Windows:

  • Рабочий стол.
    Название «Рабочий стол» подобрано удачно. На нем, как и на обычном рабочем столе расположены раз-личные программы и инструменты, представленные в виде значков, или иконки.
  • Значки.
    Значками в Windows обозначаются программы, документы. Запуск производится двойным щелчком кнопки мыши по значку. Программа может быть расположена непосредственно на Рабочем столе, а может быть скрыта глубоко на диске, но и в этом случае представлена на Рабочем столе своим образом – ярлыком.
  • Ярлыки.
    Ярлык программы – это не сама программа, а только ее образ, указание на то место на диске, где она находится. Двойной щелчок по ярлыку также вызывает запуск программы. Ярлыки от значков отличаются наличием небольшой стрелочки внизу слева.
  • Панель задач.
    Располагается в нижней части экрана. На ней находятся: кнопка Пуск, кнопки открытых окон, индикаторы и часы.
  • Окно.
    Окно – один из главных элементов интерфейса Windows.

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

Большинство ОС состоит из следующих основных модулей: базовая система ввода-вывода (BIOS – Basic Input Output System); загрузчик операционной системы (Boot Record); ядро ОС; драйверы устройств; командный процессор; внешние команды (файлы).

Базовая система ввода-вывода (BIOS) – это набор микропрограмм, реализующих основные низкоуровневые (элементарные) операции ввода-вывода. Они хранятся в ПЗУ компьютера и записываются туда при изготовлении материнской платы. Данная система, по сути, «встроена» в компьютер и является одновременно его аппаратной частью и частью операционной системы.

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

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

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

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

Ядро ОС реализует основные высокоуровневые услуги, загружается в ОЗУ и остается в ней постоянно. В ядре ОС выделяют несколько подсистем, каждая из которых отвечает за выполнение той или иной задачи:

— файловая система (отвечает за размещение информации на устройствах хранения);

— система управления памятью (размещает программы в памяти);

— система управления программами (осуществляет запуск и выполнение программ);

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

— система обработки ошибок;

— служба времени (предоставляет всем программам информацию о системном времени).

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

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

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

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

Операционная система (ОС) – это комплекс взаимосвязанных системных программ для организации взаимодействия пользователя с компьютером и выполнения всех других программ. ОС относятся к составу системного программного обеспечения и являются основной его частью. Операционные системы: MS DOS 7.0, Windows Vista Business, Windows 2008 Server, OS/2, UNIX, Linux.

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

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

Дополнительные функции:

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

Главные цели разработчиков операционной системы:

  1. Эффективное использование всех компьютерных ресурсов.
  2. Повышение производительности труда программистов.
  3. Простота, гибкость, эффективность и надежность организации вычислительного процесса.
  4. Обеспечение независимости прикладных программ от аппаратного обеспечения (АО).

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

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

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

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

Современные операционные системы имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером.

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

2. Командный процессор . Специальная программа, которая запрашивает у пользователя команды и выполняет их.

3. Драйверы устройств. Специальные программы, которые обеспечивают управление работой устройств и согласование информационного обмена с другими устройствами, а также позволяют производить настройку некоторых параметров устройств. Технология «Plug ad Play» (подключай и играй) позволяет автоматизировать подключение к компьютеру новых устройств и обеспечивает их конфигурирование.

4. Графический интерфейс. Используется для упрощения работы пользователя.

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

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

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

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

Вопрос 11. Назначение и последовательность функционирования компиляторов.

Компиля́тор - программа или техническое средство, выполняющее компиляцию.

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

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

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

Некоторые компиляторы (например, Java) переводят программу не в машинный код, а в программу на некотором специально созданном низкоуровневом языке. Например, для языка Java это язык Java Virtual Machine, JVM - язык виртуальной машины Java, или так называемый байт-код Java. Для языков программирования на платформе.NET Framework (C#, Managed C++, Visual Basic .NET и другие) это так называемый MSIL (Microsoft Intermediate Language), или «Промежуточный язык фирмы Майкрософт». Но, в отличии от Java, MSIL код всегда компилируется в код целевой машины и не подлежит интерпретации. Далее программа на этом промежуточном языке подлежит интерпретации либо ещё одной компиляции в код целевой машины непосредственно перед исполнением (для Java это делает «Just-In-Time compiler» (JIT)).

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

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

Структура компилятора

Процесс компиляции состоит из следующих этапов:

  1. Лексический анализ На этом этапе последовательность символов исходного файла преобразуется в последовательность лексем.
  2. Синтаксический анализ Последовательность лексем преобразуется в семантическое дерево.
  3. Оптимизация Выполняется удаление изличших конструкций и упрощение семантического дерева.
  4. Генерация кода. Семантическое дерево преобразуется в целевой язык.

Стадии работы компилятора

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

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

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

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

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

Вопрос 12. Требования к языкам программирования и их классификация.

Основные требования, предъявляемые к языкам программирования:

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

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

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

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

однозначность - недвусмысленность записи любого алгоритма. Отсутствие ее могло бы привести к неправильным ответам при решении задач.

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

Высокое качество создаваемых программ (компактность и скорость выполнения);

Возможность использования конкретных аппаратных ресурсов;

Предсказуемость объектного кода и заказов памяти;

Для составления эффективных программ необходимо знать систему команд и особенностифункционирования данной ЭВМ;

Трудоемкость процесса составления программ (особенно на машинных языках и ЯСК), плохо защищенного отпоявления ошибок;

Низкая скорость программирования;

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

Машинно-ориентированные языки по степени автоматического программирования подразделяются на классы.

- Машинный язык

Отдельный компьютер имеет свой определенный Машинный язык (далее МЯ), ему предписывают выполнение указываемых операций над определяемыми ими операндами, поэтому МЯ является командным.

- Языки Символического Кодирования

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

- Автокоды

Есть также языки, включающие в себя все возможности ЯСК, посредством расширенного введения макрокоманд - они называются Автокоды.

Макрокоманды обеспечивают передачу фактических параметров, которые в процессе трансляции вставляются в«остов» программы, превращая её в реальную машинную программу.

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

- Макрос

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

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

Макрос одинаково может работать, как с программами, так и с данными.

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

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

-Проблемно – ориентированные языки

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

Фортран, Алгол – языки, созданные для решения математических задач;

-Универсальные языки

Универсальные языки были созданы для широкого круга задач: коммерческих, научных, моделирования и т.д.

-Диалоговые языки

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

Задачи: управление и описание алгоритмов решения задач..

Одним из примеров диалоговых языков является Бэйсик.

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

-Непроцедурные языки

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

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

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

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

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

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

Таким образом, в структуру операционной системы входят следующие модули:

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

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

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

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

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

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

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

MS - DOS (Microsoft Disk Operation System - Дисковая операционная система Microsoft ). Операционная система MS -DOS была разработана в начале 80-х годов для работы на компьютерах IBM PC /XT , созданных на базе процессора 8086 фирмы Intel . MS -DOS была наиболее распространенной операционной системой с интерфейсом командной строки, которая устанавливалась на компьютерах, созданных на базе процессоров 80 286, 80 386, 80 486, Pentium . Последней версией была MS -DOS 6.22.

Microsoft Windows (Windows 3.1, Windows 3.11, Windows 95, 2000, NT, XP) . В настоящее время более 90% персональных компьютеров реализованы на платформе Intel & Windows , т.е. в них установлен Intel -совместимый процессор (Pentium ) и инсталлирована операционная система Windows .

К основным достоинствам современных операционных систем (Windows 95 и выше) следует отнести

  • технологию «подключи и работай»,
  • многозадачность,
  • графический интерфейс.

Технология «подключи и работай» ( Plug - and - Play ) позволяет даже начинающему пользователю подключить к компьютеру новое устройство (например, принтер) и продолжить работу. Windows сама установит необходимый драйвер и выделит ресурсы.

Многозадачность предоставляет пользователю возможность загрузить в оперативную память сразу несколько приложений (например, текстовый редактор Word , электронные таблицы Excel , браузер Internet Explorer и др.). Переход от работы в одном приложении в другое происходит очень быстро и просто, посредством перехода от одного открытого «окна»Windows к другому.

Графический интерфейс реализован с использованием технологии Drag -and -Drop . Это позволяет выполнять практически любые операции с помощью мыши.

UNIX . На высокопроизводительных компьютерах, которые иногда называют «рабочие станции», широко распространена операционная система UNIX . Начало разработок этой системы относится к 1969 году, и к настоящему времени уже известно более 20 различных версий. В настоящее время достаточно большое количество серверов в Internet работают под управлением этой системы.

Особое место среди программных средств всех типов занимают операционные системы, являясь ядром .

Операционная система (ОС) – это комплекс программ, обеспечивающих:

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

ОС – операционная среда, среда обитания (для программ), имеет свои законы.

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

ОС является базовой и необходимой составляющей программного обеспечения ПК

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

ОС –набор программных инструментов, ко­торые дают возможность пользователю использовать возможности компьютера.

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

Задачи, реализуемые ОС

1 . Поддержка работы всех программ и организация их взаимодействия с устройствами ПК:

    обеспечение эффективного выполнения операций ввода и вывода информации (связь с УВВ);

    распределение памяти и организация хранения данных;

    обеспечение взаимодействие программ и данных, а также взаимодействие программ друг с другом;

    выявление различных событий, возникающих в процессе работы, и соответствующая реакция на них.

2. Предоставление пользователю возможности общего управления ПК:

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

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

Современные ОС обеспечивают:

  1. дружественность, простоту и естественность интерфейса;
  2. шифровку данных для защиты от несанкционированного доступа;
  3. автоматическое распределение мощностей по обработке данных;
  4. поддержку компьютерных сетей и средств оперативной обработки данных в режиме реального времени;
  5. возможность использования отдельных ПК в качестве «интеллектуальных» терминалов мощных компьютерных сетей;
  6. поддержку работы СУБД и других мощных прикладных программ;
  7. возможность моделирования виртуальных машин, (когда пользователь работает как бы не с самой машиной, а с ее моделью. Для этого используются эмуляторы).

Состав ОС

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

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

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

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

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

Командный процессор – специальная программа, запрашивающая и выполняющая команды пользователя.

Выполняемые функции:

  1. обеспечивает ввод команды и проводит ее анализ на правильность;
  2. обеспечивает выполнение команды, если она была введена правильно, либо дает сообщение о возникшей конфликтной ситуации.

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

Упрощенно структуру ОС можно представить в виде схемы

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

Драйверная система BIOS – базовая система ввода – вывода. Представляет собой набор специальных программ, называемых драйверами.

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

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

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

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

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

Итак, структура операционной системы состоит:

Ядро – переводит команды с языка программ на язык «машинных кодов», понятный компьютеру (командный интерпритатор).
Драйверы – программы, управляющие устройствами.
Интерфейс – оболочка, с помощью которой пользователь общается с компьютером.

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

  1. При включении ПК первой активизируется микросхема с BIOS (Basic Input / Output System ) базовая система ввода вывода . BIOS запускает программу POST, которая тестирует аппаратные средства ПК. Для установки даты и времени, а также для настройки работы железа, с помощью клавиши Del можно загрузить утилиту Setup .
  2. После тестирования BIOS начинает поиск загрузчика ОС (Master Boot Record ), обращаясь поочередно к FDD, HDD, CD-ROM.

    Найдя на системном диске программу — загрузчик она загружается в оперативную память и ей передается управление работой ПК.

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

Принципы функционирования операционных систем

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

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

Физические ресурсы реальные устройства компьютера.

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

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

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

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

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

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

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

Концепция прерываний выполнения программ является базовой при построении любой операционной системы.

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

При обработке каждого прерывания должна выполняться следующая последовательность действий:

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

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

Классификация ОС

1. По количеству одновременно работающих пользователей:

  • однопользовательские;

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

  • многопользовательские

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

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

2. По числу задач, одновременно выполняемых под управлением ОС:

  • однозадачные ;
  • многозадачные .

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

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

При многозадачном режиме:

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

Различают вытесняющую и невытесняющую многозадачность.

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

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

Многозадачные ОС подразделяются на три типа в соответствии с использованными при их разработке критериями эффективности:

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

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

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

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

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

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

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

Суть режима разделения времени состоит в следующем. Каждой программе, находящейся в оперативной памяти и готовой к исполнению, выделяется для исполнения фиксированный, задаваемый в соответствии с приоритетом пользователя интервал времени (интервал мультиплексирования). Если программа не выполнена до конца за этот интервал, ее исполнение принудительно прерывается, и программа переводится в конец очереди. Из начала очереди извлекается следующая программа, которая исполняется в течение соответствующего интервала мультиплексирования, затем поступает в конец очереди и т.д. в соответствии с циклическим алгоритмом. Если интервал мультиплексирования достаточно мал (~200 мс), а средняя длина очереди готовых к исполнению программ невелика (~10), то очередной квант времени выделяется программе каждые 2 с. В этих условиях ни один из пользователей практически не ощущает задержек, т.к. они сравнимы со временем реакции человека.

Приоритет (priority) – относительная важность или срочность.

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

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

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

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

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

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

3. По количеству используемых процессоров:

  • однопроцессорные;
  • многопроцессорные.

4. По разрядности процессора:

  • 8-разрядные;
  • 16-разрядные;
  • 32-разрядные;
  • 64-разрядные.

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

У ОС Windows — 32-бит и 64-бит, дистрибутивы делятся на x32 и x64 соответственно, x86 — обозначение 32-х битной версии.

Посмотреть разрядность в системе:

ярлык”Мой компьютер“ →ПКМ → Свойства → Тип системы

5. По типу пользовательского интерфейса:

  • командные (текстовые);
  • объектно-ориентированные (графические) .

6.По типу использования общих аппаратных и программных ресурсов:

  • сетевые;
  • локальные.

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

Все сетевые ОС делятся на две группы: одноранговые ОС и ОС с выделенными серверами .

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

Характеристики, определяющие выбор ОС:

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

Примеры ОС

  1. MS- DOS — предназначена для работы с 16- и 32-разрядными процессорами типа 80286, 80386, 80486 (Intel), 5×86 (AMD)- «дисковая ОС » (ДОС или DOS), термин сложился исторически и говорит только о том, что вся операционная система или ее основная часть расположены на внешнем носителе (винчестере, дискете или компакт-диске), откуда и должна происходить ее загрузка в оперативную память компьютера;
  2. Windows 95/98/XP, Windows Vista, Windows 7, W indows NT/2000, OS/2 Warp 4.0 — ориентированы на работу с 32- и 64-разрядными процессорами типа Pentium;
  3. UNIX — применяется для работы с 32- и 64-разрядными процессорами типа: Pentium (Intel), Alpha AXP (DEC), P6 и PowerPC (IBM и Motorola), R4300i (MIPS);
  4. System ( MacOS) — предназначена для компьютеров Macintosh фирмы Apple;
  5. Linux – клон Unix для работы на PC.
    Linux – свободно распространяемая версия ОС Unix для платформ х86, Motorola 68k, Digital Alpha, Sparc, Mips и Motorola PowerPC. В Linux не используется никаких частей программного обеспечения, принадлежащих каким-либо коммерческим организациям. По этой причине она получила достаточно широкое распространение.
    Первая версия ОС Linux была разработана в 1991 г. Т. Линусом (Финляндия), а затем в ее разработке участвовало большое количество людей из разных частей мира. Последние версии являются продуктами коллективного творчества большого числа программистов.


Просмотров