Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Функции операционных систем персональных компьютеров (Общие понятия операционной системы)

Содержание:

Введение

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

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

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

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

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

Общие понятия операционной системы

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

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

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

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

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

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

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

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

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

  • Ядро;
  • Вспомогательные модули.

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

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

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

Объекты ядра ОС:

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

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

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

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

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

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

Место операционной системы в общей структуре компьютера показано на рисунке 2.

рис 2 - место операционной системы в общей структуре компьютера

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

Структуру операционной системы составляют следующие модули:

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

Этапы загрузки

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

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

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

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

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

C:\Users\valevchenko\Desktop\komp24.gif

рис 2. Загрузка операционной системы

Задачи выполняющееся операционной системой

Операционная система должна выполнять следующие задачи:

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

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

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

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

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

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

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

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

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

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

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

К основным признакам классификации относятся:

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

- многозадачные и однозадачные;

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

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

- многопользовательские и однопользовательские;

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

- поддерживающие многопоточную обработку и не поддерживающие ее;

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

- многопроцессорные и однопроцессорные системы.

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

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

  • Особенности аппаратных платформ. По типу аппаратуры различают операционные системы:

- персональных компьютеров;

- миникомпьютеров;

- мейнфреймов;

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

- кластеров;

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

- сетей ЭВМ.

  • Особенностей областей использования. В зависимости от областей использования различают:

- системы пакетной обработки;

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

- системы разделения времени;

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

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

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

  • Особенности методов построения. Различают следующие методы построения операционных систем:

- способы построения ядра системы – монолитное ядро или микроядерный подход;

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

- построение операционной системы на базе объектно-ориентированного подхода;

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

- наличие нескольких прикладных сред;

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

- распределенная организация операционной системы.

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

История операционных систем

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

История

История операционной системы UNIX началась в 1969 году в одном из подразделений AT&T Bell Laboratories, когда на "малоиспользуемой" машине DEC PDP-7 Кен Томпсон (Ken Thompson), Деннис Ричи (Dennis Ritchie) и другие (прежде занимавшиеся созданием ОС Multics) начали работу над операционной системой, названной ими первоначально Unics (UNiplexed Information and Computing System). В течение первых 10 лет развитие UNIX происходило, в основном, в Bell Labs. Соответствующие начальные версии назывались "Version n" (Vn) и предназначались для ЭВМ DEC PDP-11 (16-битовая) и VAX (32-битовая). Версии Vn разрабатывались группой Computer Research Group (CRG) в Bell Labs. Поддержкой занималась другая группа, Unix System Group (USG). Разработкой также занималась группа Programmer's WorkBench (PWB), привнесшая систему управления исходным кодом sccs, именованные каналы и ряд других идей. В 1983 году эти группы были объединены в одну, Unix System Development Lab.

Современные версии операционной системы UNIX. В настоящее время (начало 2004 года - В.К.) мы имеем на платформе Intel x86 следующие основные версии UNIX:

  • FreeBSD 5.2;
  • OpenBSD 3.4;
  • NetBSD 1.6.2;
  • Linux 2.0, 2.2, 2.4, 2.6 в виде множества различных дистрибутивов;
  • Solaris 9;
  • SCO OpenServer 5.0.7 и UnixWare 7.1.3

На других платформах (основные версии):

  • Linux 2.6.x (практически все платформы);
  • NetBSD 1.6.2 (практически все платформы);
  • Mac OS X 10.3.2 (PowerPC);
  • AIX 5L v5.2 (PowerPC);
  • Solaris 9, 10 (SPARC);
  • HP-UX 11i (PA-RISC, Intel Itanium);
  • Tru64 Unix V.5.1B-1 (Alpha);
  • IRIX 6.5.23 (MIPS)

Основные характеристики

ОС UNIX имеет следующие основные характеристики:

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

Архитектура ОС UNIX

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

Основные функции ядра

Основные функции ядра UNIX включают:

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

Системные вызовы

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

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

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

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

Пользовательские процессы и процессы ядра

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

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

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

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

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

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

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

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

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

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

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

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

На смену операционной системе MS DOS с ее графическими оболочками Windows 3.1 и Windows 3.11 пришли полноценные операционные системы семейства Windows (сначала Windows 95, затем Windows 98, Windows Millennium, Windows 2000, Windows XP, Windows Vista и Windows 7). На рисунке показаны этапы развития персональных компьютеров класса РС и операционной системы Windows:

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

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

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

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

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

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

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

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

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

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

Заключение

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

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

Список литературы

    1. Мясников В. И. «Операционные системы реального времени: лабораторный практикум»
    2. Карпов В., Коньков К. «Основы операционных систем: практикум»
    3. Пахмурин Д. О. «Операционные системы ЭВМ: учебное пособие»
    4. Куль Т. П. «Операционные системы: учебное пособие»
    5. Алексеев Е.Г., Богатырев С.Д. «Информатика. Мультимедийный электронный учебник»
    6. Основы информатики

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

    1. Операционная система
    2. Электронно-вычислительная машина 
    3. ОСНОВНЫЕ ФУНКЦИИ И ВИДЫ ОПЕРАЦИОННЫХ СИСТЕМ
    4. Назначение и основные функции операционных систем. Состав операционной системы

ЧТО ТАКОЕ ОПЕРАЦИОННАЯ СИСТЕМА? ФУНКЦИИ, ИСТОРИЯ, ВИДЫ