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

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

Рубрика Программирование, компьютеры и кибернетика
Вид курс лекций
Язык русский
Дата добавления 08.05.2015
Размер файла 866,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ВОЗДУШНОГО ТРАНСПОРТА

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ГРАЖДАНСКОЙ АВИАЦИИ»

Кафедра вычислительных машин, комплексов, систем и сетей

Н.И. Черкасова

ОПЕРАЦИОННЫЕ СИСТЕМЫ

Утверждено Редакционно-издательским Советом МГТУ ГА

в качестве учебного пособия

Москва - 2010

ББК 6Ф7.3 Ч48

Печатается по решению редакционно-издательского совета Московского государственного технического университета ГА

Рецензенты: канд. техн. наук, доц. Н.И. Романчева;

доц. В.Р. Соловьев

Черкасова Н.И.

Ч48 Операционные системы. Часть I: Тексты лекций. - М.: МГТУ ГА, 2010. -76 с. 12 ил., лит.: 4 наим.

ISBN 978-5-86311-764-5

Данные тексты лекций издаются в соответствии с рабочей программой учебной дисциплины «Операционные системы» по Учебному плану специальности 090106 для студентов III курса дневного обучения.

Рассмотрены и одобрены на заседаниях кафедры 11.05.10 г. и методического совета 14.05.10 г.

2404000000-039 ББК 6Ф7.3 Ц33(03)-10 Св. тем. план 2010 г. поз.39

ЧЕРКАСОВА Наталья Ивановна

ОПЕРАЦИОННЫЕ СИСТЕМЫ

Часть I

Тексты лекций

Редактор И.В. Вилкова

Подписано в печать 11.10.10 г.

Печать офсетная Формат 60х84/16 4,5 уч.-изд. л.

4,65 усл.печ.л. Заказ № 1094/ Тираж 100 экз.

Московский государственный технический университет ГА

125993 Москва, Кронштадтский бульвар, д. 20

Редакционно-издательский отдел

125493 Москва, ул. Пулковская, д.6а

ISBN 978-5-86311-764-5

© Московский государственный

технический университет ГА, 2010

Содержание

программный виртуальный память операционный

Лекция 1. Программное обеспечение ЭВМ. Основные термины и определения. Состав программного обеспечения. Операционные системы. Управляющие и обрабатывающие программы

Лекция 2. Назначение, основные функции ОС ЭВМ. Основные принципы построения ОС. Типы операционных систем

Лекция 3. Концептуальные основы ОС. Процесс. Подсистема управления процессами. Механизм диспетчирования

Лекция 4. Концептуальные основы ОС. Ресурс. Дисциплины распределения ресурсов, используемые в ОС. Концепция прерывания

Лекция 5. Средства, механизмы, подсистемы ОС. Подсистема управления вводом-выводом. Подсистема управления данными

Лекция 6. Механизмы управления процессами. Средства взаимодействия параллельных процессов. Задачи синхронизации. Семафорная техника синхронизации и упорядочения процессов

Лекция 7. Организация оперативной памяти. Структура, основные понятия и принципы виртуализации памяти. Основы логической организации виртуальной оперативной памяти

Лекция 8. Организация виртуальной оперативной памяти. Задачи управления виртуальной памятью: размещение, перемещение, преобразование адресов, замещение

Литература

Лекция 1. Программное обеспечение ЭВМ. Основные термины и определения. Состав программного обеспечения. Операционные системы. Управляющие и обрабатывающие программы

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

Размещено на http://www.allbest.ru/

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

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

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

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

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

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

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

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

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

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

Интерфейсная система обладает всеми признаками оболочки, но дополнительно к этому видоизменяет среду выполнения программ, что является исключительно прерогативой ОС. Интерфейсная система в действительности является полнофункциональной надстройкой на ОС. Ярким представителем интерфейсных систем является система Windows 3.1x, функционирующая поверх DOS. В результате получается многозадачная система, с которой пользователь взаимодействует на графической основе, а не текстовой, как было раньше.

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

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

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

текстовые редакторы;

графические редакторы;

табличные процессоры;

обучающие системы;

математические программы;

программы для моделирования;

системы автоматизированного проектирования.

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

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

Современные интегрированные системы, как правило, содержат следующие функциональные компоненты:

табличный процессор;

текстовой редактор;

систему управления базами данных;

графический модуль;

коммуникационный модуль.

Выводы

Программное обеспечение ЭВМ делится на прикладное и системное. Промежуточное положение между системными и прикладными программами занимают интегрированные системы.

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

Лекция 2. Назначение, основные функции ОС ЭВМ. Основные принципы построения ОС. Типы операционных систем

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

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

Основное назначение ОС состоит в выполнении двух главных задач:

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

предоставление пользователю возможностей общего управления машиной.

Не существует единой точки зрения на определение ОС.

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

Второй подход - ограничительный.

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

Рассмотрим функции ОС с точки зрения "ограничительного метода". К ним относятся:

управление процессором путем чередования выполнения программ;

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

управление памятью путем выделения программам на время их выполнения требуемой памяти;

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

управление инициализацией программ и обеспечение межпрограммных связей;

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

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

Структура системы зависит от того, каким образом устанавливается соотношение между функциями и объектами, т.е. от стратегий реализаций функций.

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

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

Объекты

Функции

Объект типа «набор данных»

D1

F1

F2

F3

F4

F5

F6

D2

D3

Объект типа «устройство»

Y1

Y2

Y3

Объект типа «процедура»

P1

P2

P3

Рис.2. Система однозначного соответствия между функциями и объектами

Рис.3. Компоновка функции управления конкретным объектом в рамках одного модуля: а - модули системы; б - структура системы

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

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

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

В самом общем виде ОС присущи 2 функции:

создание комплекса логических ресурсов, более удобных в управлении по сравнению с физическими ресурсами аппаратуры;

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

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

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

определения среды, в которой создаются и выполняются программы;

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

построения операционных интерфейсов;

управления ресурсами системы.

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

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

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

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

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

Особенности алгоритмов управления ресурсами

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

Поддержка многозадачности

По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:

однозадачные (например, MS-DOS, MSX);

многозадачные (OC EC, OS/2, UNIX, Windows ).

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

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

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

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

Поддержка многопользовательского режима

По числу одновременно работающих пользователей ОС делятся на:

однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);

многопользовательские (UNIX, Windows NT).

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

Вытесняющая и невытесняющая многозадачность

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

невытесняющая многозадачность (NetWare, Windows 3.x);

вытесняющая многозадачность (Windows NT, OS/2, UNIX).

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

Многопроцессорная обработка

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

В наши дни становится общепринятым введение в ОС функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.

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

Асимметричная ОС целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам.

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

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

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

Особенности аппаратных платформ

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

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

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

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

Другие требования предъявляются к операционным системам кластеров. Кластер - слабо связанная совокупность нескольких вычислительных систем, работающих совместно для выполнения общих приложений, и представляющихся пользователю единой системой. Наряду со специальной аппаратурой для функционирования кластерных систем необходима и программная поддержка со стороны операционной системы, которая сводится в основном к синхронизации доступа к разделяемым ресурсам, обнаружению отказов и динамической реконфигурации системы. Одной из первых разработок в области кластерных технологий были решения компании Digital Equipment на базе компьютеров VAX. Недавно этой компанией заключено соглашение с корпорацией Microsoft о разработке кластерной технологии, использующей Windows NT. Несколько компаний предлагают кластеры на основе UNIX-машин.

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

Особенности областей использования

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

системы реального времени (QNX, RT/11);

системы, работающие в пакетном режиме (например, OC EC);

диалоговые системы (UNIX, VMS),;

сетевой доступ;

комбинированные системы;

однопрограммные (все остальные - мультипрограммные).

Внутри каждого класса ОС могут существовать достаточно большие отличия. Рассмотрим более подробно некоторые из типов ОС.

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

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

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

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

Особенности методов построения

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

К таким базовым концепциям относятся:

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

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

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

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

Наличие нескольких прикладных сред дает возможность в рамках одной ОС одновременно выполнять приложения, разработанные для нескольких ОС. Многие современные операционные системы поддерживают одновременно прикладные среды MS-DOS, Windows, UNIX (POSIX), OS/2 или хотя бы некоторого подмножества из этого популярного набора. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра, над которым работают различные серверы, часть которых реализуют прикладную среду той или иной операционной системы.

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

Выводы

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

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

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

Лекция 3. Концептуальные основы ОС. Процесс. Подсистема управления процессами. Механизм диспетчирования

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

преобразование виртуальных машин;

распределение ресурсов;

проблема защиты;

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

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

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

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

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

Рассмотрим процесс в любой момент времени. Он может быть:

продолжающимся, т.е. он или выполняется процессором, или мог бы выполняться при готовности процессора (в этом случае говорят, что процесс в состоянии готовности);

блокированным, если он не может протекать, пока не получит сигнал, сообщение или ресурс.

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

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

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

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

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

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

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

использовании общего комплекса ресурсов самостоятельными программами системы. На рис. 4 представлена структурная схема совместного использования системных ресурсов независимыми программами. Программная структура более высокого уровня представлена на рисунке термином «среда».

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

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

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

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

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

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

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

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

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

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

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

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

Основное определение процесса поддерживается всеми ОС, однако в каждой системе он имеет свои особенности. Рассмотрим понятие процесса в Windows и UNIX.

В ОС Windows каждый процесс содержит один или более потоков. Каждый процесс включает следующие компоненты:

один или несколько потоков;

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

сегменты кода, включая код DLL;

сегменты данных, содержащих глобальные переменные;

переменные окружения;

память кучи;

ресурсы.

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

стек вызова процедур, прерываний, обработчиков исключений и автоматических данных;

локальная память потока;

параметр стека, полученный от потока, создавшего данный;

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

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

Процессы в Windows определяются дескриптором и идентификатором, а в UNIX дескрипторы процессов отсутствуют.

Механизм диспетчирования

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

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

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

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

сохранение информации о состоянии прерывающейся программы;

выборку очередной программы для выполнения;

определение способности программы к выполнению;

запуск программ с определенного места.

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

имя или идентификатор программы;

адрес области сохранения;

указатели на элементы системных таблиц, содержащих информацию о распределении устройств ввода-вывода;

информацию о выделенной программе области памяти;

информацию о готовности программы к выполнению;

значения приоритетов;

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

Такие управляющие блоки формируются для любого процесса.

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

завершение операции ввода-вывода;

открытие семафора;

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

завершение операций обмена.

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

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

выполняющаяся прикладная программа решает отказаться от управления и выдает команду wait, блокируя выполнение или просто отдавая управление системе;

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

происходит прерывание по времени, т.е. исчерпан временной лимит программы;

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

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

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

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

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

Выводы

1. Состояние ОС определяется как совокупность состояний всех процессов и ресурсов.

...

Подобные документы

  • Классификация компьютерной памяти. Использование оперативной, статической и динамической оперативной памяти. Принцип работы DDR SDRAM. Форматирование магнитных дисков. Основная проблема синхронизации. Теория вычислительных процессов. Адресация памяти.

    курсовая работа [1,5 M], добавлен 28.05.2016

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

    презентация [584,2 K], добавлен 02.06.2011

  • Взаимодействие процессов и потоков в операционной системе, основные алгоритмы и механизмы синхронизации. Разработка школьного курса по изучению процессов в операционной системе Windows для 10-11 классов. Методические рекомендации по курсу для учителей.

    дипломная работа [3,2 M], добавлен 29.06.2012

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

    курсовая работа [99,5 K], добавлен 02.12.2009

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

    презентация [355,2 K], добавлен 27.12.2010

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

    дипломная работа [1,0 M], добавлен 30.08.2010

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

    курсовая работа [46,8 K], добавлен 18.06.2009

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

    курсовая работа [40,9 K], добавлен 26.04.2014

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

    лабораторная работа [3,1 M], добавлен 07.04.2010

  • Функции программного интерфейса операционной системы Windows, предназначенные для работы с семафорами. Средства синхронизации Win32 АРI, основанные на использовании объектов исполнительной системы с дескрипторами. Проблемы при использовании семафоров.

    реферат [67,4 K], добавлен 06.10.2010

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

    реферат [50,5 K], добавлен 23.06.2012

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

    лекция [166,6 K], добавлен 05.02.2009

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

    статья [19,8 K], добавлен 08.12.2016

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

    курсовая работа [405,4 K], добавлен 08.02.2016

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

    дипломная работа [2,8 M], добавлен 06.03.2013

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

    курсовая работа [1,7 M], добавлен 12.01.2014

  • Применение программы-имитатора динамического распределения оперативной памяти, выполнение ее на ОС Windows 7 в интегрированной среде. Разработка приложений с графическим интерфейсом Delphi XE3. Автоматическая загрузка, исполнение и добавление процессов.

    курсовая работа [284,7 K], добавлен 12.01.2015

  • Простейшая схема взаимодействия оперативной памяти с ЦП. Устройство и принципы функционирования оперативной памяти. Эволюция динамической памяти. Модуль памяти EDO-DRAM BEDO (Burst EDO) - пакетная EDO RAM. Модуль памяти SDRAM, DDR SDRAM, SDRAM II.

    реферат [16,1 K], добавлен 13.12.2009

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

    доклад [26,7 K], добавлен 27.12.2013

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

    презентация [55,2 K], добавлен 22.02.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.