Рефераты. Лекции по Основам ВТ p> Процесс – отдельно выполняемая программа – интерпретатор команд, приклад. Или вторичная, запускаемая приложением для выполнения дополнит.

Ф-ций. Кажд.сеанс OS/2 может находиться т-ко в 2 –ух режимах: активном и фоновом. Если несколько программ сеанса выполняются параллельно и одновременно выводят данные на экран, то нет механизмов для предотвращения пересечений и накладки данных. Когда сеанс выходит из активного состояния вфонов. Режим, то содержимое экрана сохраняется в специальном внутреннем буфере. Когда сеанс активизируется, содержимое буфера восстанавливается на физическом экране, т.о. программе нет необходимости следить являются ли выводимые данные видимыми, она просто посылает данные на виртуальный экран, к-ый высвечивает их на физическом экране при активизации сеанса. Все сеансы OS/2 выполняются параллельно.

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

В структуре многозадачности OS/2 имеется ещё 1 слой: подобно сеансу, состоящему из нескольких параллельных витков – выполнений серии инструкций программы. Время процесса распределяется между всеми активными витками, т.о. несколько секций программы могут выполняться параллельно. В целом компоненты многозадачности OS/2 представляют собой

3 –х уровневую иерархию, причем все элементы иерархии могут выполняться параллельно.

Осн. Понятия OS/2. --Сеанс состоит из набора сеансов. –Сеанс – один виртуальный экран, виртуальная клавиатура и виртуальная мышь.

-–Переключение между сеансами с пом. ALT+Escp. –Процесс – выполнение отдельной програмы, в совокуп. С выделенными под это ресурсами. –Сами процессы могут создавать и запускать процессы. –Степень вложенности неограначена. –Процесс состоит из 1 –го или нескольких витков.(Виток- выполнение последовательности инструкций внутри программы. Витки не запускаются пользователем, они создаются при выполнении самой программы).

Сеанс реального режима. Для выполнения станд. Прилож. MS-DOS в реальн. реж. OS/2 представляется отдельный сеанс – сеанс реальн.режима (сеанс совместимости), что означает тождественность с MS-DOS. Сеанс реальн.

Режима необязателен и его можно отменить при запуске OS/2. Также можно назначить размер памяти для сеанса реальн. Реж. И изменить др. параметры. а от сеанса Отличия данного сеансзащищенного режима: --у OS/2 может быть т-ко 1 сеанс реального режима, в то время как сеансов защищенного режима несколько. –Когда сеанс совместимости активен все сеансы защищенного режима выполняются. Если активен сеанс защищенного режима, то сеанс совместимости приостанавливается. Т.е. сеанс реального режима выполняется только после его активизации. Программы, работающие в реальном режиме не могут использовать свойство OS/2 –режим многозадачнсти, вирт. Адресное пространство и т.д., т.е. реальн. Реж.

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

Фоновые программы. Под управлением OS/2 могут выполняться программы защищенного режима, к-ые будут постоянно находиться в фоне. Эти настоящие фоновые программы ни к одному из запущенных сеансов. (Нельзя переключиться на фоновую программу с пом. ALT+Escp. Т.о. фоновая программа – спец. Сеанс, к-ый не может быть приравнен к обычному сеансу защищенного режима. Фонов. Программы обычно не взаимодействуют с пользователем, а ведут учет ресурсов, следят за появлением вирусов.

UNIX.

Ю спроектирован как инструментальная система для разработки П.О. Она имеет простой, но мощный командный язык и независимую от устройств файловую систему. Ю изначально спроектир. С 65 по 69г. Bell laboratories и General Electric. 1-ая версия возникла в США в Масачусецком уневерситете. В 72г. на яз. Си написал Ритчи – 2-ая версия. Она стала более надежной, любимой, а программы были совместимы и понятны.

Цели проекта. Своей уникальностью Ю обязан: 1.Нулевая версия была создана 2-мя идеологами за минимальное кол-во чел*лет. 2.Люди, создававшие систему были её главными пользователями.

Внутренняя согласованность и встроенность является следствием этих 2- ух обстоятельств, как и яз. Паскаль, созд. Виртом.

Управлние процессами. Центральная часть – ядро (около 25000 строк на

Си и 2500 строк на Ассемблере). Большая часть ассемблерного текста относится к аппаратным ф-циям, к-ые трудно программировать на Си.

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

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

В современных версиях – это оптимизатор процесса.

Образ памяти делится на 3 логических сегмента: --СРП-сегмент реентерабельных процедур (начиная с нулевого адреса в виртуальном адресном пространстве). –СД-сегмент данных. –СС-сегмент стека.

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

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

Таблица процесса – когда процесс не активен, в ней хранится информация о процессе. Она содержит: --имя процесса –расположение его сегментов

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

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

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

Синхронизация процессов осуществляется при помощи механизма событий.

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

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

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

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

Процессы вталкивания и выталкивания. Процессы могут выталкиваться

(выкачиваться) во вторичную память и вталкиваться (подкачиваться). Как в первичной, так и во вторичной памяти выделяется стратегия свободного пространства, имеющего общее название (если процессу требуется дополнительная память он её запрашивает непосредственно у ядра). Ему выделяется новая, большая секция памяти, чтобы вместить процесс и всё содержимое старой памяти копируется в новую область памяти вместе с процессом, а старая область освобождается. Завершение процессов может происходить аварийно (преднамеренно) при помощи примитива EXEC (выход) или непреднамеренно, как результат запрещенных действий (для О.С. сигналы или ловушки предписанные пользователем). Ловушки, связанные с ошибками к программе, т.е. обращаться к некорректным адресам памяти или попытка выполнить программу с несуществующим кодом операции. Для снятия процесса в Ю используются директивы: interrubt – процедура прерывания, quit – увольнение.

Файловая система UNIX. Файл – это множество символов с произвольным доступом, его размер – число содержащихся в нём символов, на физическом уровне до 1000000000 символов. В файле содержатся произвольные данные и не имеет другой структуры, кроме наложенной пользователем.

Диск разбивается на 4 блока: 1.Неиспользуемый блок. 2.Управляющий

(суперблок) – содержит размер диска и др. областей. 3.i-список, состоящий из описания файлов, наз. i-узлами. 4.Область для хранения содержимого файла.

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

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

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

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

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

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.