Определение ОС. Классификация ОС. Требования, предъявляемые к ОС
ОС – обеспечивает уровень абстракции между ПО и аппаратным обеспеч. Избавляет программиста от необходимости непосредственного взаимодействия в аппаратурой. ОС обеспечивает управление всеми ресурсами компьютера, их выделение различным процессам (очередь печати). Часть ОС постоянно запущенная на компьют и реализующая основный функции в том числе о взаимодействии с аппаратным обеспечением называется ядро ОС. ОС обеспечивает управление доступом к данным различных пользователей, управления памятью и другими ресурсами с разграничением доступа к ним различными процессами. Классификация ОС: 1. однопользовательский, многопользовательский – обеспечивает защиту данных пользователя друг от друга. 2. однозадачное и многозадачное – обеспечивают разграничение доступа между задачами. 3. по целям использования: 1 .система пакетной обработки – это ОС направленная на решение вычислительных задач, не требует интерактивности в процессе работы могут не иметь многозадачности и многопользовательского режима. Критерий эффективности таких систем является пропускная способность те количество задач в единицу времени. 2. система разделения времени (интерактивные системы) – обеспечивает работу одной системы и множества задач пользователя одновременно. Каждый из них имеет иллюзию монопольного владения системой. Время отклика – промежуток времени между действием пользователя и результатом этого действия. 3. система реального времени – системы управляющие технологическими ресурсами. Критерий эффективности является необходимость выполнения задач к конкретному моменту времени. Системы делятся на 2 типа: жесткие и гибкие. В жестких системах превышение времени категорически недопустимо (управление поездом) В гибких превышение допустимо, не нежелательно. 4. смешанные системы. Требования к ОС. I. реализация возложенных функций. 1. расширяемость. Система должна иметь возможность легкого дополнения новыми функциями и это не должна нарушать целостность системы. 2. переносимость. Система должна легко переноситься с одной аппаратной платформы на другую. 3. надежность и отказоустойчивость. Система должна быть защищена от внутренних и внешних ошибок, ее действия должны быть предсказуемы. Приложения не должны наносить вред системе. 4. совместимость. ОС должна иметь средства для выполнения приложений написанных для других ОС. Совместимость бывает 2 типов. - совместимость двоичных кодов – откомпилированное приложения должны запускаться на различных системах. - совместимость исходных кодов – программы должны компилироваться и запускаться на различных системах. Для этого программы пишутся на стандартизованных языках. 5. безопасность. Система должна содержать средства защиты данных. 6. производительность. Система должна макс эффективно использовать аппаратное обеспечение компьют. 2. Основные принципы построения ОС. 1) Частотный – основан на выделении данных по частоте и создания условий для их быстрого выполнения путем хранения в ОЗУ. 2) Принцип модульности. Понимаетcя модульность ОС, прикладных программ и аппаратных средств. Под модулем понимают функциональный элемент системы, законченный и выполняемый в ее рамках и средства сопряжения с подобными элементами этой или другой системы. 3) Принцип функциональной избирательности. В ОС выбираются модули, которые хранятся в памяти и составляют ядро ОС. 4) Принцип генерации – настраивание ОС на конфигурацию выч. системы и запросы пользователя. 5) Принцип функциональной избыточности – возможность выполнения одних и тех же операций различными способами 6) Принцип по умолчанию – хранение в системе некоторые базовые значения, если они не устанавливаются 7) Принцип перемещаемости – разные модули в разных ситуациях могут загружаться по разным адресам 8) Принцип защиты – ограждение программ и данных от нежелательных взаимных влияний 9) Прницип независимости программ от внешних устройств. 10) Принцип открытости – позволяет вводить в ОС новые модули. 3 . Понятие процесса и ресурса. Иерархия процессов . Процесс (или по-другому, задача) - абстракция, описывающая выполняющуюся программу. Для операционной системы процесс представляет собой единицу работы, заявку на потребление системных ресурсов. Большинство ресурсов распределяются в режиме разделения времени. Ресурс выделяется задаче на заранее известный интервал времени, если программа не успеет за этот интервал закончить работу, то он изымается и отдается следующей задаче, а текущая задача – в конец очереди к этому ресурсу. В современных ОС: тенденция развития: многозадачность, графический интерфейс, распределенные сетевые ресурсы. Классификация процессов. 1.По принадлежности к центральному процессору: внутренние и внешние. По внешним признакам. Трасса процесса – последовательность и длительность пребывания процесса в каждом из своих состояний интервал существования процесса, время между порождением и завершением процесса. Процессы реального времени, интерактивные и пакетные. 2.По генеалогическому признаку – пораждающие и поражденные. 3. По динамическим признакам: последовательные интервалы сущ процессов не пересекаются. Если на рассматриваемом интервале времени сущ-ют одновременно 2 процесса, они параллельн. Если хотя бы одна точка, когда один проц сущ, а второй нет, то такие проц комбинированные. 4.по принадлежности к ОС: системные и пользовательские(прикладные) 5. по результативности: эквивалентные процессы – которые на одинаковых входных данных выдают одинаковые выходные данные. Причем работают АО одной или разным программам. Трассы эквивалентных процессов в общем случае не совпадают. Тождественные – эквивалентные процессы работающие по одной и той же программе, но с различными трассами. Равные – тождественные процессы с одинаковыми трассами. Все остальные процессы различны. 6.по связности. Два процесса являются взаимосвязанными, если между ними поддерживаются, с помощью системы управления процессами, функциональные пространственно-временные управляющие информационные или другие связи, иначе процессы изолированные. Изолированные со слабой связью могут влиять друг на друга. Если два взаимосвяз процесса используют вместе некоторые ресурсы, но информационно не связаны, те не обмениваются инф, то эти процессы информационно независимы. При наличии информацион связей, процессы взаимодействуют. 4. Диаграмма состояния процесса. При использовании такой абстракции все, что выполняется в вычислительных системах (не только программы пользователей, но и, возможно, определенные части операционных систем), организовано как набор процессов. Понятно, что реально на однопроцессорной компьютерной системе в каждый момент времени может исполняться только один процесс. Для мультипрограммных вычислительных систем псевдопараллельная обработка нескольких процессов достигается с помощью переключения процессора с одного процесса на другой. Пока один процесс выполняется, остальные ждут своей очереди. каждый процесс может находиться как минимум в двух состояниях: процесс исполняется и процесс не исполняется. Процесс, находящийся в состоянии процесс исполняется, через некоторое время может быть завершен операционной системой или приостановлен и снова переведен в состояние процесс не исполняется. Приостановка процесса происходит по двум причинам: для его дальнейшей работы потребовалось какое-либо событие (например, завершение операции ввода-вывода) или истек временной интервал, отведенный операционной системой для работы данного процесса. После этого операционная система по определенному алгоритму выбирает для исполнения один из процессов, находящихся в состоянии процесс не исполняется, и переводит его в состояние процесс исполняется. Новый процесс, появляющийся в системе, первоначально помещается в состояние процесс не исполняется. Это очень грубая модель, она не учитывает, в частности, то, что процесс, выбранный для исполнения, может все еще ждать события, из-за которого он был приостановлен, и реально к выполнению не готов. Для того чтобы избежать такой ситуации, разобьем состояние процесс не исполняется на два новых состояния: готовность и ожидание Всякий новый процесс, появляющийся в системе , попадает в состояние готовность. Операционная система, пользуясь каким-либо алгоритмом планирования, выбирает один из готовых процессов и переводит его в состояние исполнение. В состоянии исполнение происходит непосредственное выполнение программного кода процесса. Выйти из этого состояния процесс может по трем причинам: · операционная система прекращает его деятельность; · он не может продолжать свою работу, пока не произойдет некоторое событие, и операционная система переводит его в состояние ожидание; · в результате возникновения прерывания в вычислительной системе (например, прерывания от таймера по истечении предусмотренного времени выполнения) его возвращают в состояние готовность. Из состояния ожидание процесс попадает в состояние готовность после того, как ожидаемое событие произошло, и он снова может быть выбран для исполнения. Наша новая модель хорошо описывает поведение процессов во время их существования, но она не акцентирует внимания на появлении процесса в системе и его исчезновении. Для полноты картины нам необходимо ввести еще два состояния процессов: рождение и закончил исполнение Теперь для появления в вычислительной системе процесс должен пройти через состояние рождение. При рождении процесс получает в свое распоряжение адресное пространство, в которое загружается программный код процесса; ему выделяются стек и системные ресурсы; устанавливается начальное значение программного счетчика этого процесса и т. д. Родившийся процесс переводится в состояние готовность. При завершении своей деятельности процесс из состояния исполнение попадает в состояние закончил исполнение 5. Контекст и дескриптор процесса. Контекст процесса – информация, необходимая для возобновления выполнения процесса, включающая в себя состояние регистров, программного счетчика, режим работы CPU, указатели на открытые файлы… Дескриптор –ОС для каждого процесса создает дескриптор вида D=(I,V,T,P,R),__где I-идентификатор(имя) процесса, V – определ. виртуальную машину процесса, T – включает состояние процесса, Р –указывает на родительские и дочерние процессы, R- приоритет процесса Чтобы ОС могла управлять процессами, на каждый процесс заводится дескриптор( описатель), он содержит идентификатор процесса. PID (process identification): приоритет процесса, состояние процесса, информация о ресурсах процесса, указатель на родителя и потомки, контекст задачи (состояние процесса, если он прервется). Эти дескрипторы хранятся в виде таблицы процессов. 6. Классификация процессов. 1.По принадлежности к центральному процессору: внутренние и внешние. По внешним признакам. Трасса процесса – последовательность и длительность пребывания процесса в каждом из своих состояний интервал существования процесса, время между порождением и завершением процесса. Процессы реального времени, интерактивные и пакетные. 2.По генеалогическому признаку – пораждающие и поражденные. 3. По динамическим признакам: последовательные интервалы сущ процессов не пересекаются. Если на рассматриваемом интервале времени сущ-ют одновременно 2 процесса, они параллельн. Если хотя бы одна точка, когда один проц сущ, а второй нет, то такие проц комбинированные. 4.по принадлежности к ОС: системные и пользовательские(прикладные) 5. по результативности: эквивалентные процессы – которые на одинаковых входных данных выдают одинаковые выходные данные. Причем работают АО одной или разным программам. Трассы эквивалентных процессов в общем случае не совпадают. Тождественные – эквивалентные процессы работающие по одной и той же программе, но с различными трассами. Равные – тождественные процессы с одинаковыми трассами. Все остальные процессы различны. 6.по связности. Два процесса являются взаимосвязанными, если между ними поддерживаются, с помощью системы управления процессами, функциональные пространственно-временные управляющие информационные или другие связи, иначе процессы изолированные. Изолированные со слабой связью могут влиять друг на друга. Если два взаимосвяз процесса используют вместе некоторые ресурсы, но информационно не связаны, те не обмениваются инф, то эти процессы информационно независимы. При наличии информацион связей, процессы взаимодействуют. 7 . Понятие потока. Способы реализации. Планирование. Каждому процессу соответствует одиночный управляющий поток, представляющий из себя поток исполняемых команд. При запуске многопотокового процесса в системе с одним процессоров потоки работают поочередно. Процессор быстро переключается между потоками, создавая впечатления параллельной работы потоков. Элементы процесса Элементы потока Адресное пространство Счетчик команд Глобальные переменные Регистры Открытые файлы Стек Дочерние процессы Состояние потока Необработан. аварийные сигналы Аргументы в пользу использования потоков. 1) выполнение большинством программных приложений действий, которые могут временно блокироваться. 2) легкость создания потоков и их уничтожение, поскольку с потоком не связано никаких ресурсов. 3) Возможность совмещения во времени операций ввода – вывода или вычислений, когда в них имеется одновременная потребность. 4) концепция потоков удобна в системах с несколькими процессорами. Способы реализации потоков 3 способа реализации пакета потоков 1)В пространстве пользователя. Процесс Поток Таблица потоков Ядро Таблица процессов Ядро о потоках ничего не знает и управляет обычными однопоточными процессами. Каждому процессу необходима собственная таблица потоков для отслеживания потоков в процессе Достоинства: Переключение потоков происходит быстрее, чем между процессами. Каждый процесс имеет свой алгоритм планирования Недостатки. Проблема реализации блокир. системных запросов. Пока не обработается один поток не будет запущен другой 2) В пространстве ядра. Процесс Поток Ядро Таблица процессов Таблица потоков Достоинства Все запросы, которые блокируют поток реализуются как системные. Когда поток блокируется, ядро запускает поток из этого или другого процесса. Недостатки Все системные запросы требуют значит. больше времени так как связаны с переключением потоков 3)Смешанная Потоки Ядро Поток ядра Ядро знает только о потоке своего уровня. Некоторые из этих потоков могут содержать по несколько потоков пользовательского уровня. Потоки пользователя используют потоки ядра по очереди Планирование потоков При планировании потоков определяется поддерживание потоков на уровне пользователя или ядра. Рассмотрим процесс А с потоками (А1, А2… ) и процесс В с потоками (В1, В2…). При планировании потоков на уровне пользователя, ядро не знает о существовании потоков, выполняет обычное планирование. Выбирает процесс А и предоставляет ему квант времени. Планировщик потоков внутри процесса А выбирает поток А1. Если квант времени для процесса А (50 нс) > чем квант времени для потока А1 (5нс), то планироваться будет выполнение (А1, А2 …) При реализации потоков на уровне ядра, ядро не обязательно принимает во внимание какой поток принадлежит какому процессу. По истечении кванта времени управление передается потоку другого процесса (А1, В1, А2, В2….). 8. Планирование и диспетчеризация процессов. Стратегии планирования. Есть три уровня планирования процесса: 1.долгосрочное планирование или планирование задач – определяет в каком порядке задачи поступают в систему и будут пораждены соответствующими процессами. Этим занимается планировщик. 2. краткосрочное планирование или диспетчеризация. Этим занимается диспетчер, но иногда называют планировщик. Диспетчер выбирает из очереди готовых процессов тот, который должен поступить на выполнение. Диспетчеризация выполняется в следующем случае: 1. если система использует вытесняющее планирование и выполняющийся процесс перешел из состояния выполнения в любое другое состояние, те закончился его квант времени. 2. если выполняющийся процесс завершился. 3. если использ невытесняющ планиров. При невытесняющ – только когда заканчивается выполнение процесса или же он переходит в состояние ожидания. Краткосрочное выполняется часто. 3. среднесрочное планирование – тесно связано с управлением памяти (виртуальной). Среднесроч планир отвечает за выбор процессов которые при необходимости можно скинуть во вторичную память (жесткий диск) причем эти процессы должна быть максимально долго не нужны системе. Механизм называется swapping. Стратегии диспетчеризации. Требования: 1. главное требование справедливость выделения времени всем процессам. 2. ограниченного ожидания. Процесс не должен ожидать своей очереди бесконечно. 3. минимизация полного времени оборотов – время от поступления задачи в систему, до момента когда покинет систему. Минимизация времени ожидания в очереди waiting time. Вытесняющее и не вытесняющее планирование. Приоритетное планирование. Выбор процесса из очереди может осущ с помощью приоритета. Приоритет – число характеризующее степень процесса привилегированности перед другими процессами. Системн проц более привелег чем пользовательский. Приоритеты бывают абсолютные и относительные. В системе с абсолютным приоритетом из очереди выбирается более приоритетный процесс. При поступлении в систему более приор процесс.
Рефераты по информатикеОС – обеспечивает уровень абстракции между ПО и аппаратным обеспеч. Избавляет программиста от необходимости непосредственного взаимодействия в
Оценок: 1012 (Средняя 5 из 5)
Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.