Файл: Функции систем компьютеров (Теоретические основы операционных систем).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 29.03.2023

Просмотров: 73

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Системы реального времени

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

По количеству поддерживаемых процессоров операционные системы делятся на многопроцессорные и однопроцессорные.

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

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

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

Функции операционных систем

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

  1. Планирование заданий и использования процессора.
  2. Обеспечение программ средствами коммуникации и синхронизации.
  3. Управление памятью.
  4. Управление файловой системой.
  5. Управление вводом-выводом.
  6. Обеспечение безопасности.

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

Это дает основание предложить следующую трактовку определения ОС.


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

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

Системные вызовы как функция ОС

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

Системные вызовы (system calls) иногда еще называют программными прерываниями, в отличие от аппаратных прерываний, которые чаще называют просто прерываниями. Системные вызовы операционных систем (Unix, Windows, MacOS OS, и т. д.) реализуются программами пользователей с помощью интерфейса прикладного программирования API (Application Programming Interface).[3]

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

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

У большинства современных ОС, концепция, лежащая в основе интерфейса прикладного программирования практически одинакова, хотя детали могут быть различны. Примеры API операционных систем – POSIX, Windows API, Linux Kernel API.

Наиболее часто применяемые процедуры API: fork – создание нового процесса, exit – завершение процесса, open – открывает файл, close - закрывает файл, read – читает данные из файла в буфер, write – пишет данные из буфера в файл, stat – полу- чает информацию о состоянии файла, mkdir – создает новый каталог, rmdir – удаляет каталог и т.д.

В ОС Win32 API существует более 1000 системных вызовов, это связано с тем, что графический интерфейс пользователя в Windows встроен в ядро. Поэтому Win32 API имеет много вызовов для управления окнами, текстом, шрифтами т.д. Кроме того, в Win32 API отделен от процедур, непосредственно обрабатывающие системные вызовов. Это позволяет в разных версиях ОС W менять системные вызовы, не переписывая программы.


В общем виде процесс системного вызова можно описать следующим образом:

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

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

Глава 2. Развитие и характеристика операционных систем

2.1 Развитие операционных систем Microsoft в свете совершенствования архитектуры ЭВМ

ОС Windows изначально создавалась как графический интерфейс для MS-DOS. Первая версия была выпущена в 1985г. и называлась Windows 1.0. Минимальные системные требования предполагали наличие двух дискет или жесткого диска, графического адаптера и 256 К оперативной памяти.

В 1987 г. была выпущена обновленная и улучшенная версия Windows 2.0. Здесь требовался более мощный процессор 80286 с улучшенной многозадачностью и графикой.

Версия Windows/286 стала улучшенной версией Windows 2.0 с поддержкой протокола управления расширенной памятью EMS 4.0. Версия Windows/386 предоставляла уже несколько больше возможностей, используя аппаратные преимущества процессора 80386 – среда могла эмулировать расширенную память и выполнять одновременно несколько программ, работая в виртуальном 8086 режиме процессора 80386. Но даже Windows/386 с высокопроизводительным процессором, увеличенным количеством памяти и поддержкой VGA-графики не удовлетворяла запросам множества прикладных программ того времени.

Крупным шагом вперед стал выпуск в мае 1990 г. Windows 3.0. Фирма MS ввела поддержку защищенного режима процессоров 80286 и 80386, что давало прикладным программам больше памяти. Поддержка 386 расширенного режима была перенесена из Windows/386. Прикладным программам теперь отводилось до 16 М памяти.


Несколько версий Windows 3.1 выпущены между 1992 и 1994 г.г. Основное отличие этой версии ОС было в том, что установщик системы отказывался работать на DOS-системах, отличных от MS-DOS с процессором 80286 и 1 M памяти.

Windows NT (1993 г.) разработана как ОС высокого класса для ПК класса high-end. Windows NT – это принципиально новая ОС, открывающая новую линию Windows. Внешне Windows NT очень сильно похожа на Windows 3.x, но ее внутренняя структура в корне иная. Архитектура Windows NT разрабатывалась для обеспечения максимальной устойчивости и надежности ОС. Windows NT обеспечивает стабильность, вполне сравнимую с серверами UNIX. Windows NT функционирует не только на платформе Intel, но и на RISCпроцессорах: PowerPC, MIPS R4000, DEC Alpha. Windows NT может исполнять приложения DOS, Winl6, Win32, POSIX и приложения OS/2, не использующие графический интерфейс.

В 1995 г. появилась очередная ОС Windows 95, которая, в отличие от Windows 3.x, является полнофункциональной ОС, осуществляющей управление всеми ресурсами ЭВМ. Windows 95 разработана для процессора не ниже 80386, т.е. ориентирована на 32-разрядное машинное слово и защищенный режим. Основу той части Windows 95, которая работает в незащищенном режиме, составляет т.н. системная виртуальная машина, которая обеспечивает среду выполнения всех приложений, написанных для Windows 95. Функции модулей GDI, Kernel, User те же, что и в Windows 3.x (около 50% объема этих модулей просто перенесены из Windows 3.x).

Windows 95 внесла значительные улучшения в архитектуру Windows, в том числе истинно 32-разрядный интерфейс прикладного программирования (англ. Application Programming Interface, API), защищенные адресные пространства для ее собственных 32-разрядных прикладных программ, вытесняющую многозадачность, разделение прикладных программ на потоки и более широкое использование виртуальных драйверов устройств. Windows 95 обеспечивает вытесняющую многозадачность, т.е. разделение процессорного времени между двумя и более процессами и нитями. Однако, поскольку часть кода ядра ОС заимствована из Windows 3.x и является нереентерабельной, прерывания активного процесса возможны не в любой момент времени. Для совместимости с заимствованным нереентерабельным кодом в Windows 95 введены специальные модули-переходники, которые, вопервых, преобразуют 32-разрядный API в 16-разрядный, а во-вторых, блокируют совместное использование нереентерабельной части ядра.

В 1998 г. вышла OC Windows 98, преимуществами которой, по сравнению с предыдущими образцами, были: полная интеграция с Internet, более совершенное управление интерфейсом, новый процессор Pentium II, графический портал AGP (англ. Accelerated Graphics Port), ускоренный графический порт, шина USB. Другое важное отличие Windows 98 от Windows 95 заключается в расширенных возможностях управления интерфейсом. Однако самое важное – изменения во внутреннем устройстве ОС. Хотя основная «начинка» ОС осталась прежней, Windows 98 выигрывала у своей предшественницы за счет корректной работы с новыми комплектующими (процессором Pentium II, графическим портом AGP, шиной USB, новыми моделями видеокарт, материнских плат, модемов и т.д.). Параллельно с предыдущими началась разработка системы Windows XP, где окончательно будет прекращено использование 16-разрядности в ядре системы с полным переходом на 32-разрядную архитектуру.


В феврале 1999 г. Intel выпустила процессор Pentium III (архитектурный аналог Pentium II с дополнительным набором инструкций SSE (англ. Streaming SIMD Extensions, потоковое SIMD-расширение процессора), функционирующий по принципу SIMD (англ. Single Instruction, Multiple Data, одна инструкция – множество данных). Раньше был выпущен чипсет i440BX (предназначен для процессоров Pentium II 350-450 МГц и Pentium III 450- 600 МГц, иногда используется для построения систем на базе Celeron и Pentium III до 1000 МГц) и i440GX (предназначен для процессоров Pentium II Xeon и Pentium III Xeon). Эти два чипсета расширили возможности AGP, представив интерфейс AGP 2.0. Чипсет і810 или і82810 (кодовое название Whitney), построенный на базе новой hub-архитектуры, был предназначен для процессоров Intel поколения Р6 на частотах системной шины 66, 100 и 133 МГц.

Для обслуживания высокопроизводительных систем корпорация Intel выпустила чипсет і840 под кодовым названием Carmel, специально разработанный для высокопроизводительных мультипроцессорных систем на базе процессоров Intel Pentium III и Intel Pentium III Xeon. Данный чипсет имел хабовую архитектуру, сходную с архитектурой родоначальника подобных чипсетов – i810. Основные отличительные признаки чипсета i840 от традиционных наборов предусматривали использование двух микросхем, реализующих функции North Bridge и South Bridge.

Первым из чипсетов, предназначенных для обслуживания систем на основе процессора Pentium IV, поддерживающим базовою архитектуру NetBurst, был і850.

В июне 1999 г. была выпущена Windows 98 SE (англ. Second Edition). Ядро ОС практически не изменилось. В поставку ОС был включен новейший браузер Internet Explorer 5.0, умевший сохранять web-страницы со всей графической начинкой, а также поддерживавший инструкции SSE.

В 2000 г. был представлен чипсет і815. Варианты чипсетов серии і815 отличаются друг от друга типом используемого контроллера: ICH или ICH 2 и наличием интегрированной графической системы.

Выпуск чипсета і820, который поддерживал процессоры Pentium III и Celeron (Slot 1 и Socket 370) явился продолжением разработки линейки комплектов логики 800-й серии.

Windows 2000 – это ОС семейства Windows NT, предназначенная для работы на ПК с 32-битными процессорами с архитектурой, совместимой с IA32 (англ. Intel Architecture). Windows 2000 выпускалась в четырѐх изданиях: Professional (издание для рабочих станций и опытных пользователей), Server, Advanced Server и Datacenter Server (для применения на серверах). Кроме того, существовало «ограниченное издание» – Windows 2000 Advanced Server Limited Edition и Windows 2000 Datacenter Server Limited Edition, предназначенное для работы на 64-разрядных процессорах Intel Itanium (микропроцессор с архитектурой IA-64, разработанный совместно компаниями Intel и Hewlett-Packard). Вследствие наличия эффективных средств обеспечения защиты Windows 2000 была признана одной из самых безопасных ОС.