Файл: Функции операционных систем персональных компьютеров. Характеристика ОС..pdf

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

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

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

Добавлен: 14.03.2024

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

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

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

2.2. Универсальный доступ к периферийным устройствам

Пример: устройства ввода-вывода.

Драйвер оборудования — это специальная компьютерная программа, которая позволяет подключаться к устройствам [12]. Обычно он состоит из интерфейса, который помогает общаться с устройством через специальные компьютерные станции или подсистемы связи, к которым устройство подключается путем передачи команд и / или получения информации об устройстве. Это специальная компьютерная программа, работающая независимо от устройств. Основная конструктивная особенность устройств - абстракция. Даже модели одного класса устройств разные. Выпускаются новые модели, которые обеспечивают более надежную и лучшую производительность, и с этими новыми моделями часто обращаются иначе. Еще одна функция оборудования - преобразование вызовов функций операционной системы в вызовы конкретных устройств. Теоретически, новое устройство, управляемое по-новому, должно нормально работать при наличии подходящего программного обеспечения. Новое программное обеспечение гарантирует, что устройство будет работать в обычном режиме.

До всех версий Windows Vista и Linux 2.6 реализация ПО была совместной, то есть если программа зацикливалась, система аварийно останавливалась. В самых последних версиях этих операционных систем ядро не позволяет программисту создавать проблемы такого рода. Ядро отделяется от процесса, пока не получит соответствующий ответ от оператора или не выдаст новые задачи.

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


Компьютер 1

Приложение

Локальная ОС

Клиент 1

Коммуника- ционные средства

Компьютер 2

Приложение

Сервер

Коммуника- ционные средства

ОС

Рисунок 13 – Передача данных через сеть

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

Многие операционные системы поддерживают соглашения с конкретными поставщиками или открытые сетевые соглашения, такие как IBM SNA, DECnet, выпущенные корпорацией Digital Equipment Corporation, и соглашения Microsoft, разработанные для Windows [7]. Определенные соглашения о доступе к файлам для определенных задач могут быть защищены через NFS. Соглашения ESound или esd могут быть легко расширены по сети для передачи голоса из локальных приложений [7].

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

Эта функция обеспечивает распределение памяти между процессами виртуальной памяти [4, 14, 15].

Странично-сегментное разделение

Без использования внешней памяти

Методы распределения памяти

Сегментное разделение

Страничное разделение

Перемещаемыми разделами

Динамическими разделами

Фиксированными разделами

С использованием внешней памяти

Рисунок 14 – Методы распределения памяти

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


2.4. Управление файловой системой

Функция использует данные в неэнергоемких источниках данных (жесткий диск, оптический привод и т. д.); в основном управляется файловой системой [12].

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

Запрос к файлу

Символьный уровень

Базовый уровень

Проверка прав доступа

Логический уровень

Физический уровень

Рисунок 15 – Общая модель файловой системы

Хотя многие операционные системы поддерживают ограниченное количество опций доступа к памяти, UNIX и Linux, например, поддерживает технологию, называемую виртуальной файловой системой (VFS) [7]. Операционные системы, такие как UNIX, поддерживают широкий спектр устройств хранения, независимо от их структуры файловых систем. Это позволяет приложениям получать доступ к устройствам, не зная о них. VFS позволяет операционной системе разрешать приложениям подключаться к неограниченному количеству устройств через специальное оборудование, такое как файловые системы.

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

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


Между файловыми системами много различий, и поддерживать их все одновременно сложно. Допустимые символы в именах файлов, прописные и строчные буквы и различные атрибуты файлов затрудняют реализацию единого интерфейса для всех файловых систем. Операционные системы рекомендуют использовать специальные файловые системы, такие как NTFS в Windows и ext3 и ReiserFS в Linux, рис. 16.

Корневой каталог

Подкаталог

Подкаталог

Подкаталог

Подкаталог

Подкаталог

Подкаталог

Подкаталог

файлы

файлы

файлы

файлы

файлы

файлы

Рисунок 16 – Файловая система

Поддержка файловых систем сильно отличается у современных операционных систем, хотя есть некоторые общие файловые системы, которые включают почти все операционные системы. В Windows каждая файловая система обычно ограничена, например, компакт-диски должны использовать ISO 9660 или UDF, а для Windows Vista NTFS является единственной файловой системой, в которой может быть установлена операционная система. Linux можно установить на несколько файловых систем [7]. В отличие от других операционных систем, Linux и UNIX позволяет использовать любую файловую систему, независимо от того, на каком носителе она хранится: жесткий диск, носитель или даже другую файловую систему [7].

2.5. Создание пользовательского интерфейса

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

Графический пользовательский интерфейс (англ. Graphical user interface, GUI) относится к тексту, изображениям и элементам пользовательского интерфейса в зависимости от способа использования компьютера или устройства, управляемого компьютером.


Графический пользовательский интерфейс включает компоненты пользовательского интерфейса (такие как окна, меню, переключатели, флажки и значки), используемые для клавиатуры в дополнение к указывающему устройству (например, мыши, сенсорной панели или трекболу). Компоненты чаще всего доступны из библиотеки пользовательского интерфейса. Эти части графического пользовательского интерфейса можно выделить с помощью термина WIMP, который обозначает окна, значки, меню и указывающие устройства (сокращение от Windows, Icons, Menus, Pointer). Появление КПК привело к так называемому дизайну пользовательского интерфейса Post-WIMP. К пользовательским интерфейсам можно применить метафоры рабочего стола или бумажные метафоры. Пользовательский интерфейс современного компьютера обычно состоит из рабочего стола и графических программ, используемых через него.

Пользовательский интерфейс

Командный

WIMP

SIKL

Однопрограммная ОС

Пакетная технология

Многопрограммная ОС

Диалоговая технология

Многопользовательская ОС

Сетевая технология

Рисунок 17 – Интерфейсы пользователя и технологии

Хотя технически графический интерфейс пользователя не является службой операционной системы, ядро операционной системы может позволить графическому интерфейсу быть более надежным, уменьшая количество изменений в контексте его функций вывода [6]. Другие операционные системы являются модульными, то есть графическая подсистема отделена от ядра операционной системы. В 1980-х годах в UNIX и многие другие системы были построены подобным образом. Так устроены GNU/Linux и macOS [7]. Начиная с новых выпусков Microsoft Windows, графическая подсистема Windows Vista в основном находится в пользовательской области. Windows 9x имела очень небольшую границу между интерфейсом и ядром [7].

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

Рисунок 18 – Классификация пользовательских интерфейсов

X Window System - одно из наиболее часто устанавливаемых приложений с GNOME или KDE Plasma 5 в UNIX или аналогичных системах.

Со временем был создан ряд графических интерфейсов пользователя на основе UNIX, многие из которых возникли в X11 [7].

Графический интерфейс пользователя со временем эволюционировал. Например, Windows пытается изменить предпочтения пользователя [7]. Каждая новая версия GUI, выпущенная для каждой версии Mac OS, претерпевает изменения и практически полностью изменилась со времен классической Mac OS, где графический интерфейс встроен в ядро.