Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
evm_k_dosroku.doc
Скачиваний:
8
Добавлен:
08.11.2019
Размер:
7.64 Mб
Скачать

Билет №12 Задача управления ресурсами эвм. Операционные системы и их классификация. Иерархия подсистем. Системные вызовы. Примеры реализации системных функций.

*часть аварикуса*

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

У линукса 319 системных вызовов, у фряхи – 330.

Дополнение:

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

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

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

В большинстве вычислительных систем ОС являются основной, наиболее важной (а иногда единственной) частью системного ПО. С 1990-х наиболее распространёнными операционными системами являются ОС семейства Microsoft Windows и системы класса UNIX (особенно Linux).

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

Основные функции:

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

  • Загрузка программ в оперативную память и их выполнение.

  • Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).

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

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

  • Обеспечение пользовательского интерфейса.

  • Сетевые операции, поддержка стека сетевых протоколов.

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

  • Параллельное или псевдопараллельное выполнение задач (многозадачность).

  • Эффективное распределение ресурсов вычислительной системы между процессами.

  • Разграничение доступа различных процессов к ресурсам.

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

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

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

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

Систе́мный вы́зов (англ. system call) в программировании и вычислительной технике — обращение прикладной программы к ядру операционной системы для выполнения какой-либо операции.

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]