Операционные системы и среды 2И

ЗАНЯТИЕ 20. «ВВОД И ВЫВОД ИНФОРМАЦИИ»

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

ЗАНЯТИЕ 20. «ВВОД И ВЫВОД ИНФОРМАЦИИ» Читать полностью »

ЗАНЯТИЕ 19. «Реализация потоков»

16.1. Реализация потоков в пользовательском пространстве Есть два основных места реализации набора потоков: в пользовательском пространстве и в ядре. Это утверждение носит несколько спорный характер, поскольку возможна еще и гибридная реализация. А теперь мы опишем эти способы со всеми их достоин­ствами и недостатками. Первый способ — это поместить весь набор потоков в поль­зовательском пространстве. И …

ЗАНЯТИЕ 19. «Реализация потоков» Читать полностью »

ЗАНЯТИЕ 18. «Классификация потоков »

15.1. Классическая модель потоков Разобравшись в пользе потоков и в порядке их использова¬ния, давайте рассмотрим их применение более пристально. Модель процесса основана на двух независимых понятиях: группировке ресурсов и выполнении. Иногда их полезно отделить друг от друга, и тут на первый план выходят потоки. Сначала будет рассмотрена классическая модель потоков, затем изучена модель потоков, ис¬пользуемая …

ЗАНЯТИЕ 18. «Классификация потоков » Читать полностью »

ЗАНЯТИЕ 17. «Потоки»

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

ЗАНЯТИЕ 17. «Потоки» Читать полностью »

ЗАНЯТИЕ 16. «Реализация процессов»

13.1 Реализация процессов Для реализации модели процессов операционная система ведет таблицу (состоящую из массива структур), называемую таб¬лицей процессов, в которой каждая запись соответствует какому-нибудь процессу. (Ряд авторов называют эти записи блоками управления процессом.) Эти записи содержат важную информацию о состоянии процесса, включая счетчик команд, указатель стека, распределение памяти, состояние открытых им файлов, его учет¬ную и …

ЗАНЯТИЕ 16. «Реализация процессов» Читать полностью »

ЗАНЯТИЕ 15. «Состояния процессов»

Несмотря на самостоятельность каждого процесса, наличие собственного счетчика команд и внутреннего состояния, процессам зачастую необходимо взаимодействовать с другими процессами. Один процесс может генерировать выходную информацию, ис¬пользуемую другими процессами в качестве входной информации. В команде оболочки cat chapter1 chapter2 chapter3 | grep tree первый процесс, запускающий программу cat, объединяет и выдает на выходе содержимое трех файлов. …

ЗАНЯТИЕ 15. «Состояния процессов» Читать полностью »

ЗАНЯТИЕ 14. «Иерархии процессов»

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

ЗАНЯТИЕ 14. «Иерархии процессов» Читать полностью »

ЗАНЯТИЕ 13. «Создание и завершение процесса»

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

ЗАНЯТИЕ 13. «Создание и завершение процесса» Читать полностью »

ЗАНЯТИЕ 12. «Процессы»

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

ЗАНЯТИЕ 12. «Процессы» Читать полностью »

ЗАНЯТИЕ 8. «Микроядерная архитектура»

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

ЗАНЯТИЕ 8. «Микроядерная архитектура» Читать полностью »