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

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

Содержание:

Введение

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

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

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

Тема работы: Функции операционных систем персональных компьютеров.

Цель работы: Функции операционных систем персональных компьютеров.

Задачи работы: изучить

Состав ОС

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

Функции ОС

Глава 1 Характеристика операционных систем

1.1 Функциональные характеристики ОС

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

Функциональные характеристики ОС:

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

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

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

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

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

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

Читайте также Как узнать, какая видеокарта (GPU) установлена на ПК

Операционные системы предназначены не только для ПК

Когда мы говорим, что «компьютеры» запускают операционные системы, мы не просто имеем в виду традиционные настольные ПК и ноутбуки. Ваш смартфон — это компьютер, как и планшеты, смарт-телевизоры, игровые консоли, смарт-часы и маршрутизаторы Wi-Fi. Amazon Echo или Google Home — это компьютерное устройство, работающее под управлением операционной системы.

Знакомые настольные операционные системы включают Microsoft Windows, Apple MacOS, Google Chrome OS и Linux. Основными операционными системами для смартфонов являются iOS от Apple и Android от Google.

Другие устройства, такие как маршрутизатор Wi-Fi, могут запускать «встроенные операционные системы». Это специализированные операционные системы с меньшим количеством функций, чем имеет обычная операционная система, разработанная специально для одной задачи — например, для работы с маршрутизатором Wi-Fi, навигации или управления банкоматом.

Где заканчиваются операционные системы и начинаются программы

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

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

Например, в Windows приложение File Explorer (или Windows Explorer) является неотъемлемой частью операционной системы Windows — оно даже обрабатывает отрисовку рабочего интерфейса — и приложение, работающее в этой операционной системе.

1.2 Состав ОС

  • Ядро;
  • Командный модуль;
  • Комплекс драйверов;
  • Сервисные утилиты;
  • Оболочка.

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

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

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

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

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

В чем разница между прошивкой и ОС

Многие устройства просто запускают «прошивку» — тип низкоуровневого программного обеспечения, которое обычно запрограммировано непосредственно в памяти аппаратного устройства. Прошивка — это всего лишь небольшая часть программного обеспечения, предназначенного для работы только с абсолютными основами [8].

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

Граница между прошивкой и операционной системой также может быть немного размытой. Например, операционную систему для iPhone и iPads от Apple, называемую iOS, часто называют «прошивкой». Операционная система PlayStation 4 официально называется прошивкой.

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

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

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

более надежная работа системы за счет защиты модулей ядра от сбоев в работе модулей надстройки;

простота внесения изменений и дополнений в состав надстройки за счет замены соответствующих файлов с последующим подключением на основе механизма динамической компоновки [1].

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

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

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

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

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

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

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

В качестве примера аппаратно-зависимого модуля можно привести (правда, с некоторыми оговорками) известную систему BIOS (Basic Input/Output System) для процессоров Intel. Эта система представляет собой программный код, реализующий простейшие низкоуровневые операции с основными устройствами ввода/вывода (клавиатура, мышь, монитор, диски), но на их основе можно строить более сложные подпрограммы [3].

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

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

Наконец, самый верхний уровень ядра образуют системные API-вызовы. С точки зрения разработчика ПО эти вызовы оформлены как обычные функции, часто – с передачей входных параметров и возвратом результата отработки вызова. Число таких системных вызовов может быть весьма различным. Например, набор API-функций в системах семейства Windows (Win32 API) насчитывает до 2000 вызовов, реализующих практически все аспекты функционирования систем данного класса.

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

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

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

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

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

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

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

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

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

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

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

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

Кроме того, современная операционная система может обладать разной разрядностью 32 и 64.

1.3 Как проходит работа операционной системы

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

Прерывание генерируется от внешнего устройства. Такие «Аппаратные прерывания» информируют процессор о совершении асинхронной операции. Аппаратное прерывание производится параллельно процессам обработки программного кода процессором.

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

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

1.4 Как производится загрузка ОС

Процесс от загрузки до запуска операционных систем можно разделить на три этапа:

Этап первый. ПЗУ системного блока проводит проверку да диске наличие программы-загрузчика ОС и предаёт работу ОЗУ.

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

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

Глава 2 Основные функции, которые выполняет операционная система.

2.1 Краткий список функций

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

Обязательные:

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

Дополнительные:

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

2.2 Обработка запросов

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

2.3 Обслуживание компьютера

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

Средства проверки дисков

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

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

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

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

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

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

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

Дополнительно к вышеуказанным логическим ошибкам операционные системы Windows 95 и Windows 98 определяют логические ошибки, связанные с некорректной записью даты создания файла и с представлением “короткого” имени файла для заданного “длинного” имени.

Средства “сжатия” дисков

Некоторые операционные системы предоставляют служебные средства для программного “сжатия” дисков путем записи данных на диск в уплотненном виде посредством специального драйвера (резидентного для MS DOS или работающего в фоновом режиме для Windows).

Средства управления виртуальной памятью

Ранние операционные системы ограничивали возможность использования приложений по объему необходимой для их работы оперативной памяти. Так, например, без специальных драйверов (менеджеров оперативной памяти) операционные системы MS DOS ограничивали предельный размер исполняемых программ величиной около 640 Кбайт.

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

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

Средства кэширования дисков

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

Средства резервного копирования данных

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

2.4 Управление оперативной памятью

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

Ввод и вывод информации на периферийные устройства в операционных системах обязан быть стандартизованным. Кроме того, доступ к данным на энергонезависимых носителях должен быть полностью обеспечен операционной системой в рамках поддерживаемых ею файловых систем. Например, операционная система Windows поддерживает файловые системы FAT, FAT32, NTFS и exFAT. А это значит, что стандартными способами в Windows невозможно получить доступ к носителю c файловой системой Ext2, являющейся стандартной в Linux.

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

По реализации интерфейса пользователя различают неграфические и графическиеоперационные системы. Неграфические операционные системы реализуют интерфейс командной строки. Основным устройством управления в данном случае является клавиатура. Управляющие команды вводят в поле командной строки, где их можно и редактировать. Исполнение команды начинается после ее утверждения, например нажатием клавиши Enter. Для компьютеров платформы IBM PC интерфейс командной строки обеспечивается семейством операционных систем под общим названием MS-DOS (версии от MS-DOS 1.0 до MS-DOS 6.2) [2].

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

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

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

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

2.5 Организация файловой системы

Все современные дисковые операционные системы обеспечивают создание файловой системы, предназначенной для хранения данных на дисках и обеспечения доступа к ним. Принцип организации файловой системы — табличный. Поверхность жесткого диска рассматривается как трехмерная матрица, измерениями которой являются номера поверхностицилиндра и сектора. Под цилиндром понимается совокупность всех дорожек, принадлежащих разным поверхностям и находящихся на равном удалении от оси вращения. Данные о том, в каком месте диска записан тот или иной файл, хранятся в системной области диска в специальных таблицах размещения файлов (FAT-таблицах). Поскольку нарушение FAT-таблицы приводит к невозможности воспользоваться данными, записанными на диске, к ней предъявляются особые требования надежности, и она существует в двух экземплярах, идентичность которых регулярно контролируется средствами операционной системы [4].

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

Операционные системы MS DOS, OS/2, Windows 95 и Windows NT реализуют 16-разрядные поля в таблицах размещения файлов. Такая файловая система называется FAT 16. Она позволяет разместить в FAT-таблицах не более 65 536 записей (216) о местоположении единиц хранения данных и, соответственно, для дисков объемом от 1 до 2 Гбайт длина кластера составляет 32 Кбайт (64 сектора). Это не вполне рациональный расход рабочего пространства, поскольку любой файл (даже очень маленький) полностью оккупирует весь кластер, которому соответствует только одна адресная запись в таблице размещения файлов. Даже если файл достаточно велик и располагается в нескольких кластерах, все равно в его конце образуется некий остаток, нерационально расходующий целый кластер.

Для современных жестких дисков потери, связанные с неэффективностью файловой системы, весьма значительны и могут составлять от 25% до 40% полной емкости диска, в зависимости от среднего размера хранящихся файлов. С дисками же размером более 2 Гбайт файловая система FAT 16 вообще работать не может [7].

В настоящее время только операционная система Windows 98 обеспечивает более совершенную организацию файловой системы — FAT32 с 32-разрядными полями в таблице размещения файлов. Для дисков размером до 8 Гбайт эта система обеспечивает размер кластера 4 Кбайт (8 секторов).

Обслуживание файловой структуры

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

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

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

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

Однозадачные операционные системы (например, MS DOS) передают все ресурсы вычислительной системы одному исполняемому приложению и не допускают ни параллельного выполнения другого приложения (полная многозадачность), ни его приостановки и запуска другого приложения (вытесняющая многозадачность). В тоже время параллельно с однозадачными операционными системами возможна работа специальных программ, называемых резидентными. Такие программы не опираются на операционную систему, а непосредственно работают с процессором, используя его систему прерываний [10].

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

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

Прочие функции операционных систем могут включать следующие:

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

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

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

Заключение

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

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

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

Батаев, А.В. Операционные системы и среды: Учебник / А.В. Батаев, Н.Ю. Налютин, С.В. Синицын и др. - М.: Academia, 2018. - 271 c.

Дейтел Х. М., Дейтел П. Дж., Чофнес Д. Р. Операционные системы. Часть 2. Распределенные системы, сети, безопасность; Бином-Пресс - Москва, 2011. - 704 c.

12. Дейтел Х. М., Дейтел П. Дж., Чофнес Д. Р. Операционные системы. Часть1. Основы и принципы; Бином-Пресс - Москва, 2011. - 448 c.

13. Делев Владимир Алексеевич Информатика. Ч.1. Основы Персонального Компьютера. Операционные Системы; Бином-Пресс - Москва, 2007. - 100 c.

Дроздов, С.Н. Операционные системы: Учебное пособие / С.Н. Дроздов. - Рн/Д: Феникс, 2018. - 480 c.

15. Иртегов Д. В. Введение в операционные системы; БХВ-Петербург - Москва, 2012. - 874 c.
16. Карпов В. Е., Коньков К. А. Основы операционных систем. Курс лекций. Учебное пособие; Интернет-университет информационных технологий - Москва, 2005. - 632 c.

Киселев, С.В. Операционные системы: Учебное пособие / С.В. Киселев. - М.: Academia, 2018. - 250 c.

17. Клейменов С.А., Мельников В.П., Петраков А.М. Администрирование в инофрмационных системах; Бином-Пресс - Москва, 2008. - 272 c.

21. Мартемьянов Ю. Ф., Яковлев А. В., Яковлев А. В. Операционные системы. Концепции построения и обеспечения безопасности; Горячая Линия - Телеком - , 2011. - 338 c.

24. Партыка Т. Л., Попов И. И. Операционные системы, среды и оболочки; Форум - Москва, 2010. - 544 c.

Спиридонов, Э.С. Операционные системы / Э.С. Спиридонов, М.С. Клыков, М.Д. Рукин. - М.: КД Либроком, 2015. - 350 c.

29. Столлингс Вильям Операционные системы; Вильямс - Москва, 2004. - 848 c.