|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Управление ресурсами в ОСРесурсы системы состоят из повторно-используемых аппаратных и программных средств, таких как: - основная и внешняя память; - блокировки (прерывания), связанные с критическими областями; - потребляемые ресурсы (межпроцессорные сообщения и управляющие сигналы, формируемые прерываниями); Критической областью в одной или нескольких программах называется группа команд или часть команды, для выполнения которых требуется использовать некоторый разделяемый ресурс. Отсутствие этого ресурса может привести к блокировке программы или её зависанию. Чтобы этого не происходило, надо иметь средства управления критическими состояниями. Состояние и стратегия выделения ресурса определяется дескриптором конкретного ресурса. Обычно дескриптор в ОС пишется в формате, распространяющемся на все ресурсы, и он имеет следующие поля: 1) указатель на список свободных устройств или сообщений; 2) указатель на список заблокированных процессов; 3) указатель на программу-распределитель данного ресурса; Заблокированные процессы организуют ссылки на дескрипторы ресурсов через дескрипторы процессов и в каждой очереди списков дескрипторов существуют программы вставки и удаления элементов. Для работы с ресурсами используются две примитивные операции: get «ресурс» и put «ресурс». Процесс, требующий ресурс R формирует вызов или запрос: Call R Get(m) где m – список параметров, т.е. кол-во необходимых устройств. R – область памяти, в которой содержится сведения о ресурсе. Запрашивающий ресурс процесс устанавливается в заблокированное состояние до тех пор пока не получит затребованный ресурс. Процедура put либо возвращает ресурс, полученный предварительно, либо формирует потребляемый ресурс (сообщение). Операции put и get выполняются планировщиком задач как единое целое. Алгоритм операций put/get. Procedure get (m); /* разрешить процедуре get быть текущим процессом ЦП – CP */ /* блокировать процесс CP и вставить данные m в блокированный процесс CP */ CP.Status = ‘ blocked’; CP.BlockData = m; call waitList_Insert(CP.List) /* связать CP со списком ожидания ресурсов */ /* вызвать распределитель ресурсов Allocator(K, PD) Allocator – это логическая функция, осуществляющая поиск среди имеющихся устройств (ресурсов), способных удовлетворить запросу; PD(i) – указывает на процессы, запросы которых уже выполнены. К – текущий номер запроса на ресурс */ if Allocator(K,PD) the n Begin <выполнить процедуру get> /* повторить текущий процесс CP */ CP.Status=’running’; /* включить текущий процесс CP в начало списка в соответствии с его приоритетом */ call ReadyList_Insert2(CP.List) End Else /*процедура get не выполняется. Найти другой процесс*/ call Schedular; /* необходимо обратиться к планировщику */ end.{get} procedure put(m) вызывает распределитель Allocator(K, PD). Затем циклически от 1 до К переводит все процессы в состояние готовности, вставляя их в конец списка, в соответствии с их приоритетом, а затем вызывает планировщик, который вызывает готовый процесс с наивысшим приоритетом. Все потребляемые ресурсы обычно связаны с направленными сообщениями, включающими в себя операции get и put. ОС UNIX Система UNIX проектировалась как инструмент. Система для разработки ПО. Общие черты UNIX систем: 1)мультипрограммная обработка в режиме разделения времени, основання на многозадачности;2)поддержка многозадачного режима, наличие средств защиты данных от несанкционированного доступа;3)использование механизма виртуальной памяти;4)иерархическая ФС, образующая единое дерево каталогов;5)унификация операций в/в, на основе расширенного использования понятия файлов; 6)великолепная переносимость системы (система написана 90% на СИ); 7)кэширование диска для уменьшения среднего времени доступа к файлу; Существуют версии UNIX для различных компьютерных платформ. UNIX – одна из самых многоплатформенных систем. В ОС UNIX можно использовать компьютер как рабочую станцию или как сервер. Также UNIX внедряется в мир КПК (Карманные ПК) и системного управления. Основные понятия ОС UNIX 1) Компьютеры выполняют 2 функции: - сервер – компьютер, который предоставляет в распор пользователей 1/несколько видов ресурсов. Различают: а) файловые серверы;б) серверы вычислений;в) серверы печати; г) серверы сети – посредством которых осуществляется доступ к Интернету и т.д. Для выполнения функций сервера компьютер должен работать непрерывно и устойчиво. ОС на сервере должна быть устойчива и надежна. - рабочая станция. Unix используется несколь пользовате, которые работают с графического терминала ЭВМ. Графический терминал – важный ресурс рабочей станции, обладает лучшими параметрами чем терминал сервера, но другие ресурсы менее мощные. На рабочей станции могут работать несколько пользователей, подключившись с других терминалов. 2) Процессы. Запуск на выполнение любой программы порождает 1/несколько процессов. ОС UNIX управляет процессами, распределяя ресурсы компьютера. Безграничными возможностями по управлению процессами обладает привилегированный пользователь, а обычный может управлять только собственными процессами. 3) Разделение времени – это способ распределения времени ЦП между пользовательскими процессами, одновременно работающими, когда процессу выделяется квант времени. 4) Файлы и файловые системы Файл – совокупность однотипных данных с именем. Имена произвольной длины. 5) Пользователь. 2 категории: - Обычный - Системный Администратор (root) - Группа пользователей Механизм пользователей и групп обеспечивает защиту. 6) Сеанс на UNIX компьютере – последовательность действий, выполняемых пользователем от входа до выхода. Допускается использование нескольких виртуальных консолей. С каждой консоли можно вести отдельный сеанс. 7) Интерпретатор команд (shell) Основная задача – считывание вводимой пользователем команд, проверки их правильности и выполнения. Он запускается сразу при входе в систему. В UNIX существуют несколько shell’ов. 8) Текстовый и графический интерфейс пользователя. Интерфейс – способ взаимодействия между пользователем и программой. Текстовый режим: подача команд и получение результатов их выполнения. X-window обеспечивает графический интерфейс – набор ПО для работы в графическом режиме. Особенность: программа выполняется на одном компьютере, а открывает графическое окно на удаленном терминале и взаимодействует с пользователем на уровне ЭВМ. 9) Сетевые возможности UNIX. Давно появились протоколы TCP/IP и различные программы для работы в сети. Пользователь работает на UNIX компьютере, включаясь в сеть. Пользователи работают на сервере, подключаясь через свои терминалы. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.011 сек.) |