Как операционная система управляет работой периферийных устройств компьютера

Обновлено: 07.07.2024

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

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

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

Для обмена данными компьютер и периферийное устройство (ПУ) оснащены внешнимиинтерфейсами или портами (рис. 2.1). В данном случае к понятию "интерфейс" относятся:

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

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

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

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

Рис. 2.1. Связь компьютера с периферийным устройством

Рис. 2.1. Связь компьютера с периферийным устройством

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

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

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

  1. Приложение обращается с запросом на выполнение операции печати к операционной системе. В запросе указываются: адрес данных в оперативной памяти, идентифицирующая информация принтера и операция, которую требуется выполнить.
  2. Получив запрос, операционная система анализирует его, решает, может ли он быть выполнен, и если решение положительное, то запускает соответствующий драйвер, передавая ему в качестве параметров адрес выводимых данных. Дальнейшие действия, относящиеся к операции ввода-вывода, со стороны компьютера реализуются совместно драйвером и контроллером принтера.
  3. Драйвер передает команды и данные контроллеру, который помещает их в свой внутренний буфер. Пусть, например, драйвер загружает значение некоторого байта в буфер контроллера ПУ.
  4. Контроллер перемещает данные из внутреннего буфера во внешний порт.
  5. Контроллер начинает последовательно передавать биты в линию связи, представляя каждый бит соответствующим электрическим сигналом. Чтобы сообщить устройству управления принтера о том, что начинается передача байта, перед передачей первого бита данных контроллер формирует стартовый сигнал специфической формы, а после передачи последнего информационного бита — стоповый сигнал. Эти сигналы синхронизируют передачу байта. Кроме информационных бит, контроллер может передавать бит контроля четности для повышения достоверности обмена.
  6. Устройство управления принтера, обнаружив на соответствующей линии стартовый бит, выполняет подготовительные действия и начинает принимать информационные биты, формируя из них байт в своем приемном буфере. Если передача сопровождается битом четности, то выполняется проверка корректности передачи: при правильно выполненной передаче в соответствующем регистре устройства управления принтера устанавливается признак завершения приема информации. Наконец, принятый байт обрабатывается принтером — выполняется соответствующая команда или печатается символ.

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

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

Возможно распределение функций между драйвером и контроллером (ПУ).

Функции, выполняемые драйвером:

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

Функции, выполняемые контроллером:

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

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

Модуль 7. Управление устройствами

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

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

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

Физическая организация периферийных устройств

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

  • быстродействием;
  • порцией обмена информации (1 бит, байт, слово, сектор, трек);
  • системой кодирования;
  • набором операций управления устройством.

Внешнее устройство состоит из механической и электронной компонент, и узким местом является механическая часть.

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

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

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

По способам параллельного выполнения запросов ЦП на ввод/вывод каналы ввода/вывода подразделяются на три типа:

1.Байт-мультиплексные каналы, допускающие одновременный побайтовый обмен с несколькими медленными устройствами.

2. Селекторные каналы, допускающие поочередный, быстрый обмен с ПУ блоками ввода/вывода, каждый из которых имеет свой адрес.

3. Блок-мультиплексные каналы, допускающие одновременный блочный обмен данными с несколькими устройствами.

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

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

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

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

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

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

ОС выполняет ввод-вывод, записывая команды в регистры контроллера. Например, контроллер гибкого диска IBM PC принимает 15 команд, таких, как READ, WRITE, SEEK, FORMAT и т.д. Когда команда принята, процессор оставляет контроллер и занимается другой работой. При завершении команды контроллер организует прерывание для того, чтобы передать управление процессору операционной системы, которая должна проверить результаты операции. Процессор получает результаты и статус устройства, читая информацию из регистров контроллера.

В настоящее время распространены три основные схемы организации ввода/вывода, соответствующие конфигурациям микро-, мини- и больших ЭВМ (рис. 1,2,3 соответственно).

Рис.1. Схема организации ввода/вывода для персональных ЭВМ

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

УПДП - устройство прямого доступа памяти (DMA-direct memory access) обеспечивает пересылку блоков данных независимо от ЦП и упрощает канал ввода/вывода.

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

Контроллер может иметь несколько адресов и путей доступа.

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

№ канала №контр. № устройства.

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

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

Рисунок 2. Схема организации ввода/ вывода для мини ЭВМ

Рис.10.3. Схема организации ввода/вывода для многомашинного комплекса

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

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

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

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

  1. Независимый от устройств слой операционной системы.
  2. Обработка прерываний.
  3. Драйверы устройств.
  4. Пользовательский слой программного обеспечения.

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

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

Типичными функциями для независимого от устройств слоя являются:

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

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

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

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

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

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

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

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

  • по опросу готовности;
  • по прерываниям;
  • по прямому доступу к памяти.

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

  1. Запрещает прерывания от устройства и инициирует операцию на устройстве.
  2. Переходит в состояние ожидания.
  3. Циклически проверяет завершенность операции.
  4. Дождавшись завершения операции, проверяет отсутствие ошибки при ее выполнении, разрешает прерывания и возвращает управление прерванному процессу.

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

Достоинство - простота. Недостаток - синхронный ввод/вывод, отсутствие параллелизма между вводом/выводом и обработкой.

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

  1. Инициализируется операция ввода/вывода и разрешает прерывания от устройства.
  2. Возвращает управление ЦП для выполнения других действий до момента прерывания.
  3. При прерывании происходит переход на программу обработки, в которой проверяется отсутствие ошибки ввода/вывода, и после завершения обработки осуществляется возврат на прерванную программу.

Достоинство - асинхронный ввод/вывод, то есть параллельная работа ЦП и ПУ. Используется в мультипрограммных системах.

При работе по прямому доступу к памяти (ПДП) (Direct Memory Access-DMA)действия выполняются в следующем порядке:

  1. ЦП запускает канальную программу командой "запустить канал", которая содержит адрес канала и периферийного устройства. С этого момента канал и ЦП работают параллельно.
  2. Канал выполняет свою программу, которая заканчивается нормально либо с ошибкой, либо по команде ЦП "остановить канал".
  3. В любой момент ЦП может проверить состояние канала, выполняющего канальную программу, командой "тестировать канал". Эта проверка не влияет на выполнение программы. Обработка ошибок ввода/вывода здесь осуществляется супервизором ввода/вывода.

Хотя большая часть программного обеспечения ввода-вывода находится внутри ОС, некоторая его часть содержится в библиотеках, связанных с пользовательскими программами. Системные вызовы, включающие вызовы ввода-вывода, обычно делаются библиотечными процедурами. Если программа, написанная на языке С, содержит вызов count = write (fd, buffer, nbytes), то библиотечная процедура write будет связана с программой. Набор подобных процедур является частью системы ввода-вывода. В частности, форматирование ввода или вывода выполняется библиотечными процедурами. Примером может служить функция printf языка С, которая принимает строку формата и, возможно, некоторые переменные в качестве входной информации, затем строит строку символов ASCII и делает вызов write для вывода этой строки. Стандартная библиотека ввода-вывода содержит большое число процедур, которые выполняют ввод/вывод и работают как часть пользовательской программы.

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

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

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

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

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

  • 1. Обмен данными между компьютером и различными периферийными устройствами (терминалами, принтерами, гибкими дисками, жесткими дисками и т.д.). Такой обмен данными называется "ввод/вывод данных".
  • 2. Обеспечение системы организации и хранения файлов.
  • 3. Загрузка программ в память и обеспечение их выполнения.
  • 4. Организация диалога с пользователем.

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

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

Структуру ОС составляют следующие модули:

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

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

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

дополнительные сервисные программы (утилиты) - делают удобным и многосторонним процесс общения пользователя с компьютером.

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

Первый этап загрузки ОС. В системном блоке компьютера находится постоянное запоминающее устройство (ПЗУ, постоянная память, ROM-Read Only Memory - память с доступом только для чтения), в котором содержатся программы тестирования блоков компьютера и первого этапа загрузки ОС. Они начинают выполнятся с первым импульсом тока при включении компьютера. На этом этапе процессор обращаются к диску и проверяет наличие на определенном месте (в начале диска) очень небольшой программы - загрузчика. Если эта программа обнаружена, то она считывается в ОЗУ и ей передается управление.

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

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

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

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

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

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

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

ОС обычно хранится во внешней памяти компьютера – на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ.

Этот процесс называют загрузкой ОС.

В функции ОС входит:

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

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

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

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

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

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

В каждой ОС имеется свой командный язык, который позволяет пользователю выполнять те или иные действия:

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

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

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

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

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

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

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

Существуют несколько наиболее распространенных ОС.

Например, MS-DOS расшифровывается как дисковая операционная система. Разработчиком MS-DOS является Корпорация Microsoft.

Краткая история создания MS-DOS

Первой разработкой MS-DOS можно считать операционную систему для персональных ЭВМ, созданную фирмой Seattle Computer Products в 1980 г. В конце 1980 г. система, первоначально названная QDOS, была модифицирована и переименована в 86-DOS. Право на использование операционной системы 86-DOS было куплено Корпорацией Microsoft, заключившей контракт с фирмой IBM, обязуясь разработать операционную систему для новой модели персональных компьютеров, выпускаемых фирмой. Когда в конце 1981 г. новый компьютер IBM PC приобрел широкую популярность, его операционная система представляла собой модифицированную версию системы 86-DOS, названную PC-DOS, версия 1.0.

Вскоре после выпуска IBM-PC на рынке стали появляться персональные компьютеры "схожие с РС". Операционная система этих компьютеров называлась MS-DOS, версия 1.0. Корпорация Microsoft предоставила в распоряжение фирм, производящих эти машины, точную копию операционной системы PC-DOS - широко теперь применяемую MS-DOS.

С момента выпуска операционные системы PC-DOS и MS-DOS усовершенствовались параллельно и аналогичным образом. в 1982 году появились версии 1.1. Главным преимуществом новой версии была возможность использования двухсторонних дискет (версия 1.0 позволяла работать только с односторонними дискетами), а также возможность пересылки принтеровского вывода на другие устройства.

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

MS-DOS версии 3.0, выпущенная в 1984 году, предоставляла улучшенный вариант обслуживания жесткого диска и подсоединенных к компьютеру микрокомпьютеров. Последующие версии, включая 3.3 (появившуюся в 1987 году), развивались в том же направлении.

MS-DOS версии 5.0 предоставляет возможность использования памяти расположенной выше 1M.

В MS-DOS версии 6.0 расширены возможности использования памяти расположенной выше 1M, добавлена утилита оптимизации использования памяти Добавлено средство увеличения эффективного дискового пространства. В комплект поставки включены утилиты проверки и оптимизации жесткого диска.

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

Самая популярная у пользователей оболочка Norton Commander . Она обеспечивает:

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

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

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

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

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

5 Первый этап загрузки ОС. В системном блоке компьютера находится постоянное запоминающее устройство (ПЗУ, постоянная память, ROM-Read Only Memory - память с доступом только для чтения), в котором содержатся программы тестирования блоков компьютера и первого этапа загрузки ОС. Они начинают выполнятся с первым импульсом тока при включении компьютера. На этом этапе процессор обращаются к диску и проверяет наличие на определенном месте (в начале диска) очень небольшой программы - загрузчика. Если эта программа обнаружена, то она считывается в ОЗУ и ей передается управление. Второй этап загрузки ОС. Программа - загрузчик, в свою очередь, ищет на диске базовый модуль ОС, переписывает его память и передает ему управление. Третий этап загрузки ОС. В состав базового модуля входит основной загрузчик, который ищет остальные модули ОС и считывает их в ОЗУ. После окончания загрузки ОС управление передается командному процессору и на экране появляется приглашение системы к вводу команды пользователя.

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

7 "Центр справки и поддержки" Microsoft помощь по всем вопросам технической поддержки Windows, то есть по вопросам, связанным с печатью и факсимильной связью, быстродействием и обслуживанием, оборудованием и исправлением неполадок. Консоль "Управление компьютером" имеются представления "Служебные", "Хранилище" и "Службы и приложения". С помощью диспетчера устройств можно проверить установленные устройства и загрузить или обновить драйверы устройств. С помощью диспетчера диска можно просмотреть параметры настройки диска, а с помощью компонента "Службы" просмотреть выполняющиеся приложения. Средство "Сведения о системе"предоставляет параметры настройки ресурсов оборудования, компонентов, программной среды и Интернета, а также дополнительные средства диагностики неполадок. Средство "Восстановление системы" способ отказаться от вредоносных изменений в системе, внесенных в процессе установки устройства или приложения.

8 Комплект офисных приложений MS OFFICE Бухгалтерские системы Финансовые аналитические системы Интегрированные пакеты делопроизводства CAD – системы (системы автоматизированного проектирования) Редакторы HTML или Web – редакторы Браузеры – средства просмотра Web - страниц Графические редакторы Экспертные системы И так далее.

9 Инструментальное ПО или системы программирования - это системы для автоматизации разработки новых программ на языке программирования.

10 1. Текстовый редактор для создания файла с исходным текстом программы. 2. Компилятор или интерпретатор. Исходный текст с помощью программы-компилятора переводится в промежуточный объектный код. Исходный текст большой программы состоит из нескольких модулей (файлов с исходными текстами). Каждый модуль компилируется в отдельный файл с объектным кодом, которые затем надо объединить в одно целое. 3. Редактор связей или сборщик, который выполняет связывание объектных модулей и формирует на выходе работоспособное приложение – исполнимый код. 4. визуальный методы программирования

11 Borland Delphi - предназначен для решения практически любых задачи прикладного программирования Borland C++ Builder – это отличное средство для разработки DOS и Windows приложений Microsoft Visual Basic – это популярный инструмент для создания Windows-программ Microsoft Visual C++ - это средство позволяет разрабатывать любые приложения, выполняющиеся в среде ОС типа Microsoft Windows

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

Читайте также: