рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

КУРС ЛЕКЦИЙ по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ

КУРС ЛЕКЦИЙ по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ - раздел Науковедение, Государственное Бюджетное Образовательное Учреждение Среднего Профес...

Государственное бюджетное образовательное учреждение

среднего профессионального образования

«Краснодарский гуманитарно-технологический колледж»

Краснодарского края

 

 

КУРС ЛЕКЦИЙ

 

по дисциплине

 

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

 

Для специальности 230115 Программирование в компьютерных системах

 

 

Составил: преподаватель Шкуро П.И.

 

г.Краснодар, 2012

 

 

Оглавление

Лекция 4: Понятие операционной системы (ОС), цели ее работы. Классификация компьютерных систем... 2

Расцвет ОС в 2000-х гг.. 2

Понятие операционной системы и цели ее работы... 3

Компоненты компьютерной системы... 4

Общая картина функционирования компьютерной системы... 5

Классификация компьютерных систем... 6

Классификация компьютерных архитектур.. 8

Основные компоненты операционной системы... 10

Ключевые термины... 10

Краткие итоги.. 12

Лекция 5: История ОС. Отечественные ОС. Диалекты UNIX. Режимы пакетной обработки, мультипрограммирования, разделения времени.. 13

Введение.. 13

История ОС.. 13

Диалекты UNIX.. 16

Отечественные операционные системы... 17

Особенности операционных систем для компьютеров общего назначения (mainframes) 19

Распределение памяти в однозадачной ОС с пакетной обработкой заданий.. 20

ОС пакетной обработки с поддержкой мультипрограммирования.. 20

Режим разделения времени и особенности ОС с режимом разделения времени.. 22

Ключевые термины... 23

Краткие итоги.. 24

Набор для практики.. 25

Лекция 6: Особенности ОС для различных классов компьютерных систем. ОС реального времени. ОС для облачных вычислений.. 26

Введение.. 26

Особенности ОС для персональных компьютеров.. 26

Параллельные компьютерные системы и особенности их ОС. 28

Распределенные компьютерные системы и особенности их ОС.. 30

Виды серверов в клиент-серверных компьютерных системах.. 31

Кластерные вычислительные системы и их ОС.. 32

Системы и ОС реального времени.. 32

Ключевые термины... 36

Краткие итоги.. 38

Набор для практики.. 39

Лекция 7: Архитектура компьютерной системы... 41

Введение.. 41

Архитектура ввода-вывода.. 46

Таблица состояния устройств.. 47

Структура памяти.. 49

Аппаратная защита адресов памяти в системах с теговой архитектурой.. 56

Организация аппаратной защиты памяти и процессора.. 57

Набор для практики.. 61

Лекция N 8 Концепции процесса.. 63

Лекция N 9 Управление памятью.... 68

Лекция N 10 Управление вводом-выводом данных в ЭВМ... 73

Лекция N 11 Система управления данными (файловая система) 78

Лекция N 12 Оценка производительности вычислительной системы (ВС) 83

Лекция N 13 Локальные вычислительные сети.. 88

Лекция N 14 Общие принципы функционирования операционной системы MS DOS. 98

Лекция N 15 Режимы работы ЭВМ IBM PC с центральным процессором (ЦП) 80386 и выше 103

Список использованной литературы... 107

 

Лекция 4: Понятие операционной системы (ОС), цели ее работы. Классификация компьютерных систем

Расцвет ОС в 2000-х гг

Бесспорным лидером в данной области является корпорация Microsoft, выпустившая менее чем за 10 недавних лет целую серию ОСсемейства Windows: Windows… РазвиваютсятакжедиалектыОС Linux (Red Hat, Fedora, Mandrake, Ubuntu, SuSE… Фирма Sun (в 2010 г. вошедшая в состав фирмы Oracle) разрабатывает и выпускает ОС Solaris – одну из наиболее…

Понятие операционной системы и цели ее работы

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

Компоненты компьютерной системы

Девизом фирмы Sun Microsystems еще в 1982 г., при ее создании, стал афоризм "The network is the computer" (Сеть – это компьютер). Эту…

Общая картина функционирования компьютерной системы

 

 

Рис. 1.1. Общая картина функционирования компьютерной системы

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

Классификация компьютерных систем

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

Суперкомпьютеры (super-computers) –мощные многопроцессорные компьютеры, наиболее современные из которых имеют производительность до нескольких petaflops(1015 вещественных операций в секунду; аббревиатура flopsрасшифровывается как floating-point operations per second). Пример – суперкомпьютер "Ломоносов", установленный в МГУ. Суперкомпьютеры используются для вычислений, требующих больших вычислительных мощностей, сверхвысокой производительности и большого объема памяти. В реальной практике это прежде всего задачи моделирования – например, моделирования климата в регионе и прогнозирования на основе построенной модели погоды в данном регионе на ближайшие дни. Особенностью суперкомпьютеров является их параллельная архитектура – как правило, все они являются многопроцессорными. Соответственно, ОС для суперкомпьютеров должны поддерживать распараллеливание решения задач и синхронизацию параллельных процессов, одновременно решающих подзадачи некоторой программы.

Многоцелевые компьютеры, или компьютеры общего назначения (mainframes)– традиционное историческое название для компьютеров, распространенных в 1950-х – 1970-х гг., еще до эпохи всеобщего распространения персональных компьютеров. Именно для mainframe-компьютеров создавались первые ОС. Типичные примеры таких компьютеров: IBM 360/370; из отечественных – М-220, БЭСМ-6. На таких компьютерах решались все необходимые задачи – от расчета зарплаты сотрудников в организации до расчета траекторий космических ракет. Подобный компьютер выглядел достаточно неуклюже и громоздко и мог занимать целый большой зал. Вспомните, например.огромный компьютер HAL на космическом корабле в фантастическом фильме 1960-х гг. Стэнли Кубрика "Космическая одиссея 2001 г." Но никакие фантасты не смогли предвидеть прогресса компьютерной техники XXI века – прежде всего, того, что мощный компьютер будет не занимать целую комнату, а помещаться в небольшом ящике. Параметры ранних mainframe-компьютеров были весьма скромными: быстродействие - несколько тысяч операций в секунду, оперативная память – несколько тысяч ячеек (слов). Недостаточно удобным был пользовательский интерфейс (интерактивное взаимодействие с компьютерами было реализовано гораздо позже, в 1960-х гг.). Тем не менее, на таких компьютерах решались весьма серьезные задачи оборонного и космического назначения. С появлением персональных и портативных компьютеров классические mainframe-компьютеры ушли в прошлое. Однако следует подчеркнуть, что в именно в операционных системах для mainframe-компьютеров были реализованы все основные методы и алгоритмы, рассмотренные в данном курсе, которые впоследствии были использованы в ОС для персональных, карманных компьютеров и мобильных устройств.

Кластеры компьютеров (computer clusters)– группы компьютеров, физически расположенные рядом и соединенные друг с другом высокоскоростными шинами и линиями связи. Кластеры компьютеров используются для высокопроизводительных параллельных вычислений. Наиболее известны в мире компьютерные кластеры, расположенные в исследовательском центре CERN (Швейцария) – том самом, где находится большой адронный коллайдер. Как правило, компьютерные кластеры располагаются в исследовательских институтах и в университетах, в том числе, например, в Петродворцовом учебно-научном комплексе СПбГУ они используются в Петродворцовом телекоммуникационном центре (ПТЦ), на нашем математико-механическом и на физическом факультетах. Операционная система для кластеров должна, помимо общих возможностей, предоставлять средства для конфигурирования кластера, управления компьютерами (процессорами), входящими в него, распараллеливания решения задач между компьютерами кластера и мониторинга кластерной компьютерной системы. ПримерамитакихОСявляютсяОСфирмы Microsoft – Windows 2003 for clusters; Windows 2008 High-Performance Computing (HPC).

Настольные компьютеры (desktops)– это наиболее распространенные в настоящее время компьютеры, которыми пользуются дома или на работе все люди, от школьников и студентов до домашних хозяек. Такой компьютер размещается на рабочем столе и состоит из монитора, системного блока, клавиатуры и мыши. Параметры современного (2010 г.) настольного компьютера, наиболее приемлемые для использования современных ОС: быстродействие процессора 1 – 3 ГГц, оперативная память – 1 – 8 гигабайт и более, объем жесткого диска (hard disk drive – HDD) – 200 Гб – 1 Тб и более (1 терабайт, Тб = 1024 Гб). Все разнообразие современных операционных систем (Windows, Linux и др.) – к услугам пользователей настольных компьютеров. При необходимости на настольном компьютереможно установить две или более операционных системы, разделив его дисковую память на несколько разделов (partitions) и установив на каждый из них свою операционную систему, так что при включении компьютера пользователю предоставляется стартовое меню, из которого он выбирает нужную операционную систему для загрузки.

Портативные компьютеры (laptops, notebooks– дословно "компьютеры, помещающиеся на коленях"; "компьютеры-тетрадки") – это миниатюрные компьютеры, по своим параметрам не уступающие настольным, но по своим размерам свободно помещающиеся в небольшую сумку или рюкзак или, например, на коленях пользователя, летящего в самолете в командировку и не желающего терять времени даром. Ноутбуки стоят обычно в несколько раз дороже, чем настольные компьютеры с аналогичными характеристиками. На ноутбукахиспользуются те же операционные системы, что и для настольных компьютеров (например, Windows или MacOS). Характерными чертами портативных компьютеровявляются всевозможные встроенные порты и адаптеры для беспроводной связи: Wi-Fi (официально IEEE 802.11) – вид радиосвязи, позволяющая работать в беспроводной сети с производительностью 10-100 мегабит в секунду (используется обычно на конференциях, в гостиницах, на вокзалах, аэропортах – т.е. в зоне радиусом в несколько сотен метров от источника приема-передачи); Bluetooth – также радиосвязь на более коротких расстояниях (10 – 100 м для Bluetooth 3.0), используемая для взаимодействия компьютера с мобильным телефоном, наушниками, плейером и др. Внешние устройства(дополнительные жесткие диски, принтеры, иногда даже DVD-ROM) подключаются к ноутбуку через порты USB. Еще лет 10 назад на ноутбуках активно использовались инфракрасные порты(IrDA), которые, однако, неудобны, так как требуют присутствия "ответного" IrDA – порта другого устройства на расстоянии 20-30 см от порта ноутбука, при отсутствии между ними препятствий. Другая характерная черта ноутбуков – это наличие кард-ридеров – портов для чтения всевозможных карт памяти, используемых в мобильных телефонах или цифровых фотокамерах; обеспечивается также интерфейс FireWire (официально – IEEE 1394) для подключения цифровой видеокамеры; таким образом, ноутбуки хорошо приспособлены для ввода, обработки и воспроизведения обработки мультимедийной информации. Ныне портативный компьютер имеется почти у каждого студента, что они и используют для подготовки к ответу на экзамене, либо для решения задач практикума, иногда прямо в университетском буфете. Один из критических параметров ноутбука – время работы его батарей без подзарядки; очень хорошо, если это время составляет порядка 10 часов, что пока сравнительно редко; на компьютерах, используемых автором, это время составляет не более 5 часов. Популярная разновидность ноутбука ныне – это ноутбук- ноутбук, предназначенный для работы в сети, обычно менее мощный и поэтому более дешевый, а также более миниатюрный.

Карманные портативные компьютеры и органайзеры (КПК, handhelds, personal digital assistants – PDA)– это "игрушки для взрослых" в виде миниатюрного компьютера, помещающегося на ладони или в кармане, но по своему быстродействию иногда не уступающего ноутбуку. При всей привлекательности, серьезные недостатки КПК, с точки зрения автора, - это неудобство ввода информации (приходится пользоваться палочкой-стилусом, - ведь не носить же с собой еще и громоздкую клавиатуру, - либо микроскопической выдвижной клавиатурой, на которой фактически тем же стилусом только и можно работать), а также неудобство чтения информации на маленьком экране. Автор уже "наигрался" в подобные КПК, - например, типа PalmPilot, - предпочитает пользоваться ноутбуками, а самым надежным органайзером считает ... небольшой бумажный блокнот. Однако молодежь приглашается к этой увлекательной интересной игре – через все в жизни нужно пройти. Современные КПК имеют фактически те же порты и адаптеры, что и ноутбуки – Wi-Fi, Bluetooth, IrDA, USB. Операционные системы для КПК аналогичны ОС для ноутбуков, но все же учитывают более жесткие ограничения КПК по объему оперативной памяти. В настоящее время для КПК широко используется ОС Windows Mobile – аналог Windows для мобильных устройств. До недавнего времени была также широко распространена PalmOS для органайзеров типа PalmPilot фирмы 3COM. Разумеется, для КПК имеется аппаратура и программное обеспечение для подключения к ноутбуку или настольному компьютеру с целью синхронизации данных, что обеспечивает дополнительную надежность.

 

Мобильные устройства (mobile intelligent devices – мобильные телефоны, коммуникаторы)– это устройства, которыми каждый из нас пользуется постоянно для голосовой связи, реже – для записи или обработки какой-либо информации или для выхода в Интернет. С точки зрения автора, наиболее важные параметры мобильного устройства – это по-прежнему качество голосовой связи и время автономной работы батареи. Однако все большее значение приобретают встроенные в них цифровые фото- и видеокамеры. Операционные системы для мобильных устройств отличаются большей компактностью, ввиду более жестких ограничений по памяти (например, собственная память, не расширенная SmartMedia-картой, у используемого автором с 2006 г. мобильного телефона Nokia 3230, кстати, с неплохой встроенной фотокамерой – всего 30 мегабайт). Эпоха доминирования на рынке мобильных телефонов операционных систем типа Symbian, видимо, заканчивается, и они уступают место более современным и обеспечивающим лучший пользовательский интерфейс ОС Google Android и Microsoft Windows Mobile. Для мобильных устройств, как и для КПК, весьма важная характеристика ОС – это ее надежность, в частности, сохранность данных после переполнения памяти, возникающего, например, в результате приема большого числа SMS-сообщений, интенсивной фото- или видеосъемки. К сожалению, ОС Symbian, по опыту автора, ведет себя в этом отношении недостаточно надежно: при приеме "лишнего" SMS-сообщения, не помещающегося в память телефона, он ... блокируется с жалобным сообщением "Memory full", после чего приходится вручную отключать и включать телефон и таким образом перезагружать ОС (к сожалению, SMS-ка, переполнившая чашу терпения ОС, при этом пропадает). С этой точки зрения, ОС для мобильных устройств нуждаются в дальнейшем совершенствовании. Что касается прочего программного обеспечения для мобильных телефонов (игр, утилит, прикладных программ и др.), то при их разработке доминирует Java-технология – одна из постоянных областей научных интересов автора. Изучить основы Java Вы можете, например, по книге автора "Введение в Java-технологию" или по его Интернет-курсу, опубликованному на русском сайте Sun / Oracle. В мобильных телефонах используется платформа ("издание") JME – Java Micro Edition, и любой мобильный телефон, выпускаемый вот уже более 10 лет, поддерживает Java. Программы на Java для мобильных телефонов называются мидлетами(от аббревиатуры MID – Mobile Intelligent Device).

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

Распределенные системы (distributed systems)– это системы, состоящие из нескольких компьютеров, объединенных в проводную или беспроводную сеть. Фактически, таковы ныне все компьютерные системы (вспомните девиз "Сеть – это компьютер"). Все операционные системы должны, таким образом, поддерживать распределенный режим работы, средства сетевого взаимодействие, высокоскоростную и надежную передачу информации через сеть. Все эти вопросы подробно рассмотрены в данном курсе.

Системы реального времени (real-time systems) –вычислительные системы, предназначенные для управления различными техническими, военными и другими объектами в режиме реального времени. Характеризуются основным требованием к аппаратуре и программному обеспечению, в том числе к операционной системе: недопустимость превышения времени ответасистемы, т.е. ожидаемого времени выполнения типичной операции системы. Для ОС требования реального времени накладывают весьма жесткие ограничения – например, в основном цикле работы системы недопустимы прерывания (так как они приводят к недопустимым временным затратам на их обработку). Системы реального времени – особая весьма серьезная и специфическая область, изучение которой выходит за рамки данного курса.

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

Классификация компьютерных архитектур

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

CISC (Complicated Instruction Set Computers – компьютеры с усложненной системой команд) –исторически первый подход к компьютерной архитектуре, суть которого в том, что в систему команд компьютера включаются сложные по семантике операции, реализующие типовые действия, часто используемые при программировании и при реализации языков – например, вызов рекурсивных процедур и автоматическое обновление дисплей-регистров, групповые операции пересылки строк и массивов и др. Типичными представителями CISC-компьютеров были: из зарубежных компьютерных систем – машины серии IBM 360/370,из отечественных – многопроцессорные вычислительные комплексы (МВК) "Эльбрус". В IBM 360, например, была реализована команда MVC (move characters), которая выполняла пересылку массива символов (строки) из одной области памяти в другую, причем адреса источника, получателя и длина пересылаемой строки задавались в регистрах. В "Эльбрусе" был аппаратно реализован в общем виде вход в процедуру с передачей через стек параметров, обновлением дисплей-регистров, указывающих на доступные процедуре области локальных данных. Другой пример – в "Эльбрусе" команда считывания в стек значения по заданному адресу осуществляла автоматический проход "косвенной цепочки" заранее не известной длины – если значение оказывалось также адресом, то происходило считывание в стек значения по нему и т.д., до тех пор, пока считанная в стек величи на не окажется значением, а не адресом. С одной стороны, понятно стремление авторов CISC-архитектур сделать аппаратуру как можно более "умной". С другой стороны, жесткое "вшивание" сложных алгоритмов выполнения команд в "железо" приводило к тому, что аппаратура исполняла каждый раз некоторый общий алгоритм команды, требовавший десятков или даже сотен тактов процессора, но как-либо оптимизировать выполнение этих команд с использованием конкретной информации о длине строки, косвенной цепочки и т.д. возможности не было. Другой недостаток CISC-архитектур в том, что подобные групповые операции на время их выполнения фактически останавливали работу конвейера (pipeline)- реализованной в любой компьютерной архитектуре аппаратной оптимизации, параллельного выполнения нескольких соседних команд при условии их независимости друг от друга по данным.

 

RISC (Reduced Instruction Set Computers – компьютеры с упрощенной системой команд) –упрощенный подход к архитектуре компьютеров, предложенный в начале 1980-х гг. профессором Дэвидом Паттерсоном (университет Беркли, США) и его студентом Дэвидом Дитцелом (впоследствии – крупным ученым, руководителем компании Transmeta). Примеры семейств RISC-компьютеров: SPARC, MIPS, PA-RISC, PowerPC. Принципы данного подхода: упрощение семантики команд, отсутствие сложных групповых операций (которые могут быть реализованы последовательностями команд, содержащими циклы); одинаковая длина команд (32 бита – архитектура была разработана в расчете на 32-битовые процессоры); выполнение арифметических операций только в регистрах и использование специальных команд считывания из памяти в регистр и записи из регистра в память; отсутствие специализированных регистров (например, дисплей-регистров для адресации доступных областей локальных данных в стеке); использование большого набора регистров (регистрового файла) общего назначения– 512, 1024, 2048 регистров и т.д., в зависимости от конкретной модели процессора; передача при вызове процедур параметров через регистры. Подобная архитектура дает широкий простор для оптимизаций, выполняемых компиляторами, что и демонстрируют компиляторы Sun Studio разработки фирмы Sun / Oracle для ОС Solaris и Linux. RISC-архитектура до сих пор используется при разработке новых компьютеров.

VLIW (Very Long Instruction Word – компьютеры с широким командным словом) –подход к архитектуре компьютеров, сложившийся в 1980-х – 1990-х гг. Основная идея данного подхода – статическое планирование параллельных вычислений компиляторомна уровне отдельных последовательностей команд и подкоманд. При данной архитектуре каждая команда является "широкой" (long) исодержит несколько подкоманд, выполняемых параллельно за один машинный такт на нескольких однотипных устройствах процессора – например, в таком компьютере может быть два устройства сложения, два логических устройства, два устройства для выполнения переходов и т.д. Задачей компилятора является оптимальное планирование загрузки всех этих устройств в каждом машинном такте и генерация таких (широких) команд, которые позволили бы оптимально загрузить на каждом такте каждое из устройств. Достоинством такой архитектуры является возможность распараллеливания вычислений, недостатком – сложность (по сравнению с RISC-архитектурой). Примеры компьютеров таких архитектур: из зарубежных – компьютеры Cray X/MP, Cray Y/MP и др., разработанные компьютерным гением Сеймуром Креем (Cray) и его фирмой Cray Research; из отечественных – многопроцессорный вычислительный комплекс "Эльбрус-3".

EPIC (Explicit Parallelism Instruction Computers – компьютеры с явным распараллеливанием) –по архитектуре аналогичны VLIW, но с добавлением ряда важных усовершенствований: например, спекулятивныхвычислений – параллельного выполнения обеих веток условной конструкции с вычислением условия. Подход сложился и используется с 1990-х гг. Примеры процессоров данной архитектуры - Intel IA-64, AMD-64.

Multi-core computers (многоядерные компьютеры) –получившая наиболее широкую популярность в настоящее время архитектура компьютеров, при которой каждый процессор имеет несколько ядер (cores),объединенных в одном кристалле и параллельно работающих на одной и той же общей памяти, что дает широкие возможности для параллельных вычислений. В настоящее время известны многоядерныепроцессоры фирмы Intel (Core 2 Duo, Dual Core и др.), а также мощные многоядерныепроцессоры фирмы Sun / Oracle: Ultra SPARC-T1 ("Niagara")- 16-ядерный процессор; Ultra SPARC-T2 ("Niagara2")– 32-ядерный процессор. Все ведущие фирмы мира заняты разработкой и выпуском все более мощных многоядерныхпроцессоров. Соответственно, создатели операционных систем для таких компьютеров разрабатывают базовые библиотеки программ, позволяющие в полной мере использовать возможности параллельного выполнения на многоядерныхпроцессорах.

Hybrid processor computers (компьютеры с гибридными процессорами)– новый, все шире распространяющийся подход к архитектуре компьютеров, при котором процессор имеет гибриднуюструктуру – состоит из (многоядерного)центрального процессора (CPU)и (также многоядерного) графического процессора (GPU – Graphical Processor Unit). Такая архитектура была разработана, в связи с необходимостью параллельной обработки графической и мультимедийной информации, что особенно актуально для компьютерных игр, просмотре на компьютере высококачественного цифрового видео и др. Гибридная архитектура является новым "интеллектуальным вызовом" для разработчиков компиляторов, которым необходимо разработать и реализовать адекватный набор оптимизаций как для центральных, так и для графических процессоров. Примерами таких архитектур являются новые процессоры фирмы AMD, а также графические процессоры серии Tesla фирмы NVidia.

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

Ядро (kernel) –низкоуровневая основа любой операционной системы, выполняемая аппаратурой в особом привилегированном режиме(подробно о нем речь в… Подсистема управления ресурсами (resource allocator)– часть операционной… Управляющая программа (control program, supervisor) –подсистема ОС, управляющая исполнением других программ и…

Ключевые термины

EPIC (Explicit Parallelism Instruction Computers – компьютеры с явным распараллеливанием команд) –подход к архитектуре компьютера, аналогичный VLIW,… RISC (Reduced Instruction Set Computer – компьютер с упрощенной системой… VLIW (Very Long Instruction Word – компьютеры с широким командным словом) –подход к архитектуре компьютеров,…

Внешние устройства- см. Устройства ввода-вывода

Инициатива по надежным и безопасным вычислениям (trustworthy computing initiative)– инициатива корпорации Microsoft (2002), целью которой является… Карманный портативный компьютер (КПК, органайзер)- миниатюрный компьютер,… Кластеры компьютеров– группы компьютеров, физически расположенные рядом и соединенные друг с другом высокоскоростными…

Краткие итоги

По мнению Дэвида Проберта (менеджера Microsoft по развитию Windows), Знание ОС способствует становлению зрелого мышления программиста и хорошему… Операционная система (ОС) – общее системное программное обеспечение,… Цели работы ОС – обеспечение удобства, эффективности, надежности и безопасности выполнения пользовательских программ,…

Темы для курсовых работ, рефератов

Краткий обзор современных операционных систем (реферат).

  1. Классификация современных компьютерных систем (реферат).
  2. Обзор современных компьютерных архитектур (реферат).

 

 

Лекция 5: История ОС. Отечественные ОС. Диалекты UNIX. Режимы пакетной обработки, мультипрограммирования, разделения времени

Введение

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

История ОС

Разумеется, подобный способ взаимодействия с компьютером был очень неудобен. Требовалась хотя бы минимальная автоматизация. Для этого в 1950-х –… В 1960-х – 1970-х гг. были разработаны классические операционные системы,… Разработка каждой операционной системы для каждой новой модели компьютера требовала многих лет напряженной…

Диалекты UNIX

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

Среди передовых оригинальных отечественных разработок в области компьютерной аппаратуры и ОС 1960-х – 1970-х гг. следует выделить прежде всего ЭВМ… Другой передовой отечественной разработкой 1970-х – 1980-х гг. была разработка… Были и другие интересные отечественные разработки новых архитектур компьютеров и их операционных систем, прежде всего…

Распределение памяти в однозадачной ОС с пакетной обработкой заданий

Рис. 2.1. Распределение памяти в простой системе пакетной обработки Оно очень простое: операционная система занимает постоянно смежную область…

ОС пакетной обработки с поддержкой мультипрограммирования

  Рис. 2.2. Распределение памяти в системе пакетной обработки с поддержкой… В такой системе ОС занимает по-прежнему смежную область памяти по меньшим адресам, однако вслед за областью ОС…

Режим разделения времени и особенности ОС с режимом разделения времени

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

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

Откачка и подкачка (swapping) -загрузка заданий с диска в память и их выгрузка из памяти на диск. В системе с разделением времени возможна ситуация, когда какое-либо задание, управляемое с терминала, неактивно (например, выполняет ввод-вывод, либо система ожидает ответа от пользователя, у которого в данный момент перерыв в работе). В этом случае ОС может принять решение о временной выгрузке (swap out)образа памяти задания из оперативной памяти на диск, с целью освобождения памяти для других заданий. При повторной активизации задания оно (при возможности) вновь загружается в память (swapped in). Подобная стратегия называется откачкой и подкачкой.

Поддержка диалогового взаимодействия между пользователем и системой. Когда ОС завершает исполнение пользовательской команды, она выполняет поиск следующего управляющего оператора (control statement),введенного с пользовательской клавиатуры.

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

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

Режим разделения времени, наряду с пакетным режимом, был основным в операционных системах 1960-х – 1970х- гг.

Ключевые термины

UNIX -первая мобильная ОСдля миникомпьютеров, разработанная в 1970 г. Б. Керниганом и Д. Ритчи на новом языке программирования Си. Буферизация вывода (spooling)– хранение для каждого задания буфера его вывода… ДИСПАК– отечественная операционная система для ЭВМ БЭСМ-6.

Краткие итоги

В 1960-х гг. были разработаны диспетчеры – упрощенные варианты ОС, осуществлявшие поочередный пропуск пользовательских заданий. Для классических ОС 1960-х – 1970-х гг. (ATLAS, MULTICS, OS IBM 360) были… Первой мобильной ОС, использованной на нескольких аппаратных платформах, стала система UNIX, первая версия которой…

Набор для практики

Вопросы

Темы для курсовых работ, рефератов, эссе

  1. История зарубежных операционных систем (реферат).
  2. История отечественных операционных систем (реферат).
  3. История и диалекты операционной системы UNIX (реферат).
  4. Поддержка мультипрограммирования и разделения времени в операционных системах (реферат).

 

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

Введение

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

Особенности ОС для персональных компьютеров

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

Параллельные компьютерные системы и особенности их ОС.

Среди параллельных компьютеров выделяются тесно связанные (tightly coupled) системы, в которых процессоры разделяют общую память и таймер (такты);… О параллельных компьютерах архитектур Very Long Instruction Word (VLIW) и… Многоядерные (multi-core) компьютеры(см. также "Понятие операционной системы (ОС), цели ее работы.Классификация…

Симметричные и асимметричные мультипроцессорные системы

Асимметричная мультипроцессорная система (asymmetric multiprocessing) –это многопроцессорная компьютерная система, в которой процессоры специализированы по своим функциям. Каждому процессору дается специфическое задание; главный процессор (master processor)планирует работу подчиненных процессов (slave processors).В такой системе ОС, как правило, выполняется на одном определенном, закрепленном за ней, центральном процессоре. Подобная архитектура более типична для очень больших систем. Пример – система "Эльбрус", которая имела в своем составе, в зависимости от конфигурации, от одного до 10 центральных процессоров, от одного до четырех специализированных процессоров ввода вывода (ПВВ),от одного до четырех процессоров передачи данных (ППД).

Схема организации SMP-архитектуры компьютеров приведена на рис. 3.1.

 


Рис. 3.1. Схема организации SMP-архитектуры компьютеров

Распределенные компьютерные системы и особенности их ОС В распределенной системе (distributed system)вычисления распределены между несколькими физическими процессорами (компьютерами), объединенными между собой в сеть. Слабо связанная система (loosely coupled system)– распределенная компьютерная система, в которой каждый процессор имеет свою локальную память, а различные процессоры взаимодействуют между собой через линии связи –высокоскоростные шины, телефонные линии, беспроводную связь (Wi-Fi, EVDO, Wi-Max и др.). Преимущества распределенных систем:
  1. Разделение (совместное использование) ресурсов: в распределенной системе различные ресурсы могут храниться на разных компьютерах. Нет необходимости дублировать программы или данные, храня их копии на нескольких компьютерах.
  2. Совместная загрузка (load sharing): каждому компьютеру в распределенной системе может быть поручено определенное задание, которое он выполняет параллельно с выполнением другими компьютерами своих заданий.
  3. Надежность: при отказе или сбое одного из компьютеров распределенной системы его задание может быть перераспределено другому компьютеру, чтобы сбой в минимальной степени повлиял или вовсе не повлиял на итоговый результат.
  4. Связь: в распределенной системе все компьютеры связаны друг с другом, так что, например, при необходимости возможен удаленный вход с одного компьютера на другой с целью использования ресурсов более мощного компьютера.
В распределенной системе компьютеры связаны в сетевую инфраструктуру, которая может быть:
  1. локальнойсетью (local area network - LAN);
  2. глобальной или региональной сетью (wide area network - WAN).
По своей организации распределенные системы могут быть клиент-серверными (client-server) или одноранговыми (peer-to-peer) системами. В клиент-сервернойсистеме определенные компьютеры играют роль серверов, а остальные – роль клиентов, пользующихся их услугами. Подобная организация распределенных систем наиболее распространена, и мы рассмотрим ее подробнее. В одноранговойраспределенной системе все компьютеры равноправны.   Виды серверов в клиент-серверных компьютерных системах Клиент-серверная архитектура распределенных систем весьма широко распространена и поддержана операционными системами. Поэтому очень важно знать, какие виды и функции серверов предлагают современные распределенные системы. Файл-сервер (file server)– компьютер и программное обеспечение, предоставляющие доступ к подмножеству файловых систем, расположенных на дисках компьютера-сервера, другим компьютерам локальной сети (LAN). Пример – серверное программное обеспечение SAMBA (SMB –сокращение от Server Message Block)для ОС типа UNIX (Linux, FreeBSD, Solaris и т.д.), обеспечивающее доступ с Windows-компьютеров локальной сети к файловым системам UNIX-машин. Samba также реализована для платформы Macintosh / MacOS. Сервер приложений (application server)– компьютер и программное обеспечение, предоставляющее вычислительные ресурсы (память и процессор) и необходимое окружение для удаленного запуска определенных классов (как правило, больших) приложений с других компьютеров локальной сети. Примеры серверов приложений - WebSphere (IBM), WebLogic (BEA) – наилучшие из известных серверов приложений, работающих в Java Enterprise Edition (JEE). Сервер баз данных (database server) –компьютер и программное обеспечение, предоставляющее доступ другим компьютерам сети к базам данных, расположенным на компьютере-сервере. Пример: серверное программное обеспечение для доступа к базам данных Microsoft SQL Server. Веб-сервер (Web server)– компьютер и программное обеспечение, предоставляющее доступ клиентам через WWW к Web-страницам, расположенным на компьютере-сервере. Пример: свободно распространяемый Web-сервер Apache. Прокси-сервер– компьютер и программное обеспечение, являющиеся частью локальной сети и поддерживающие эффективное обращение компьютеров локальной сети к Интернету, фильтрацию трафика, защиту от внешних атак. Proxy-сервер обычно встроен в операционную систему. Сервер электронной почты –компьютер и программное обеспечение, выполняющие отправку, получение и "раскладку" электронной почты для компьютеров некоторой локальной сети. Могут обеспечивать также криптованиепочты (email encryption) – шифрование электронных писем перед отправкой адресатам из определенного сетевого домена (как правило, заказчику) и их дешифровку после получения от заказчика. Серверный бэк-энд (Server back-end) –группа (пул) связанных в локальную сеть серверных компьютеров, используемых вместо одного сервера, в целях большей надежности и предоставления большего объема ресурсов. Другой термин, близкий к этому, - центр обработки данных (data center).Эти понятия особенно актуальны в связи со все более широким распространением облачных вычислений, являющихся, с этой точки зрения, наиболее современной реализацией клиент-серверной схемы взаимодействия. Кластерные вычислительные системы и их ОС Компьютерные кластеры весьма популярны для научных вычислений. Компьютеры в кластере, как правило, связаны между собой через быструю локальную сеть. Кластеризация позволяет двум или более системам использовать общую память. Кластеризация обеспечивает высокую надежность. Различают компьютерные кластеры двух видов:
  • асимметричная кластеризация (asymmetric clustering) –организация компьютерного кластера, при которой один компьютер выполняет приложение, а остальные простаивают;
  • cимметричная кластеризация (symmetric clustering) -организация компьютерного кластера, при которой все машины кластера исполняют одновременно различные части одного большого приложения.
Различают также:
  • кластеры с высокоскоростным доступом (high-availability clusters) –компьютерные кластеры, обеспечивающие оптимальный доступ к ресурсам, предоставляемым компьютерами кластера, например, к базам данных;
  • кластеры с балансировкой загрузки (load-balancing clusters)– компьютерные кластеры, которые имеют несколько входных компьютеров, балансирующих запросы (front-ends), распределяющих задания между компьютерами серверного back-end’а (серверной фермы).
Кластеры часто используются в университетах (например, установлены на нескольких факультетах СПбГУ) и в исследовательских центрах (например, CERN, Швейцария). Операционныесистемыдлякластеров: Windows 2003 for clusters; Windows 2008 High-Performance Computing. Системы и ОС реального времени Системы реального времени часто используются как управляющие устройства для специальных приложений, - например, для научных экспериментов; в медицинских системах, связанных с изображениями; системах управления в промышленности; системах отображения (display); системах управления космическими полетами, АЭС и др. Для таких систем характерно наличие и выполнение четко определенные временные ограничения (время реакции – response time; время наработки на отказ и др.). Различаются системы реального времени видов hard real-timeи soft real-time. Hard real-time – системы –системы реального времени, в которых при нарушении временных ограничений может возникнуть критическая ошибка (отказ) управляемого ею объекта. Примеры: система управления двигателем автомобиля; система управления кардиостимулятором. В таких системах вторичная память ограничена или отсутствует; данные хранятся в оперативной памяти (RAM) или постоянном запоминающем устройстве (ПЗУ, ROM). При использовании таких систем возможны конфликты с системами разделения времени, не имеющие места для ОС общего назначения. Выражаясь более простым языком, при работе подобных систем не допускаются прерывания; все необходимые данные для основного цикла работы системы должны предварительно быть загружены в память; процесс, выполняющий код такой системы, не должен подвергаться откачке на диск. ОС для таких систем обычно упрощены, вместо виртуальной памяти выделяется физическая, все другие виды виртуализации ресурсов исключены. Популярной практикой разработки ОС реального времени является практика разработки таких ОС на основе открытых исходных кодов ОС общего назначения путем "отсечения всего лишнего". Однако при этом следует соблюдать осторожность. Автору приходилось консультировать разработчиков системы реального времени для "Эльбруса", которые использовали для своей системы низкоуровневую процедуру выделения физической памяти, но не учли ее возможных конфликтов с общей системой виртуальной памяти ОС Эльбрус; в результате выделяемая память иногда "портилась" … в результате изменения связующей информации в списке областей свободной памяти, который использовался механизмом виртуальной памяти "Эльбруса". Soft real-time – системы –системы реального времени, в которых нарушение временных ограничений не приводит к отказу управляемого ею объекта. Обычно это системы управления несколькими взаимосвязанными системами с постоянно изменяющейся ситуацией. Пример - система планирования рейсов на коммерческих авиалиниях.В случае какой-либо задержки в работе такой системы, в худшем случае, пассажирам некоторых рейсов придется немного подождать в аэропорту, но никаких фатальных последствий не будет. Подобные системы имеют ограниченную полезность для промышленных систем управления и в роботике. Они также полезны в современных приложениях (например, для мультимедиа и виртуальной реальности), требующих развитых возможностей ОС.
 
Карманные компьютеры (handhelds) и их ОС К данному классу устройств, как уже отмечалось, относятся карманные персональные компьютеры (КПК), или Personal Digital Assistants (PDA), и мобильные телефоны. Особенности и проблемы данного класса компьютеров следующие:
  • ограниченный объем памяти;
  • относительно медленные процессоры: для мобильного устройства типично ожидание выполнения простейшей команды в течение нескольких секунд, что неудобно;
  • маленький размер экрана мониторов (дисплеев), отсюда – необходимость в специализированном программном обеспечении для поддержки GUI; например, в Java Micro Edition (JME) – версии Java для мобильных устройств – невозможно использовать удобные общие пакеты AWT и Swing для разработки GUI; вместо них разработчику в JME предлагаются специализированные пакеты видаjavax.microelectronics…lcdui, несовместимые со стандартным изданием Java (JSE), что делает код зависимым от типа устройства, а иногда – и от конкретных моделей мобильных телефонов, которые имеют разные размеры экранов;
  • невысокая скорость связи через Интернет: например, GPRS-модем мобильного телефона обеспечивает связь примерно со скоростью dial-up – 3-5 килобайт в секунду;
  • связь для передачи данных осуществляется через Bluetooth или IrDA (причем последний часто отсутствует); имеются не все необходимые порты: например, часто в мобильных устройствах отсутствует порт USB, т.е. для них нельзя использовать "флэшки", что весьма неудобно, и приходится использовать специальные сверхминиатюрные диски типа SmartMedia, для которых в настольных компьютерах не всегда имеются адаптеры для чтения.
Тем не менее, современные средства коммуникации (например, Wi-Fi) и совместимые с персональными компьютерами порты и внешние модули памяти начинают использоваться и на карманных и мобильных устройствах. В операционных системах и другом системном программном обеспечении для карманных и мобильных устройств приходится учитывать все эти ограничения, в частности, ограниченный объем памяти. В связи с этим целый ряд удобных повседневных программистских возможностей приходится для мобильных устройств запрещать (например, в JME нет вещественной арифметики). Развитие концепций и возможностей ОС представлено на рис. 3.3. На схеме хорошо видны аналогичные "волны" ("витки") развития ОС - сначала для mainframe-компьютеров, затем – для миникомпьютеров, для персональных и для карманных компьютеров. Каждая волна проходит в своем развитии определенные этапы. ОС развиваются от резидентных мониторов до поддержки пакетного режима (для ранних моделей компьютеров), затем – режима разделения времени, многопользовательских и сетевых возможностей.   увеличить изображение Рис. 3.3. Развитие концепций и возможностей ОС. Вычислительные среды В современном мире ИТ имеет место тенденция к интеграции описанных выше устройств и их локальных сетей в вычислительные среды – интегрированные распределенные компьютерные системы для решения задач в различных проблемных областях. Вычислительные среды подразделяются на следующие виды:
  • традиционные вычислительные среды – локальные и региональные сети, используемые в течение нескольких десятков лет;
  • Web-ориентированные вычислительные среды – вычислительные среды на основе Web-сервисов, характерные для настоящего времени, начиная с 1990-х гг.; к этому классу относятся и среды для облачных вычислений;
  • встроенные (embedded) вычислительные среды – вычислительные среды для специализированных устройств, например, сети микропроцессоров, встроенных в элементы линии электропередач.
Все эти виды вычислительных сред должны адекватно обслуживаться операционными системами, в чем и состоят ближайшие задачи их разработки. Облачные вычисления и ОС для облачных вычислений Облачные вычисления (сloud computing) являются одним из наиболее популярных направлений развития ИТ. "Облако" (cloud) – это уже десятки лет используемая метафора для изображения сервисов, предоставляемых через Интернет или другую коммуникационную сеть (например, через ATM-сеть). Облачные вычисления – модель вычислений, основанная на динамически масштабируемых (scalable) и виртуализованных ресурсах (данных, приложениях, ОС и др.), которые доступны и используются как сервисы через Интернет и реализуются с помощью высокопроизводительных центров обработки данных (data centers)2208 С точки зрения пользователей, существует совокупность "облаков" (общедоступные, корпоративных, частных и др.), предоставляемых различными компаниями, для использования мощных вычислительных ресурсов, которых нет у индивидуального пользователя. Как правило, "облачные" сервисы платные. Из бесплатных назовем Windows Live (http://www.live.com; см. лабораторную работу номер 6). Недостаток облачных вычислений в том, что пользователь оказывается полностью зависимым от используемого им "облака" (в котором доступны используемые им данные и программы) и не может управлять не только работой "облачных" компьютеров, но даже резервным копированием своих данных. В связи с этим возникает целый ряд важных вопросов о безопасности облачных вычислений, сохранении конфиденциальности пользовательских данных и т.д.; далеко не все из них на данный момент решены. Серьезной проблемой организации облачных вычислений с точки зрения аппаратуры центров обработки данных является экономия электроэнергии и проблема распределения загрузки, так как облачные вычисления в каждом центре обработки данных имеют (или в ближайшем будущем будут иметь) миллионы удаленных пользователей. Наиболее популярная "облачная" платформа – Microsoft Windows Azure (облачная ОС) и Microsoft Azure Services Platform (реализованная на основе Microsoft.NET). Windows Azure можно рассматривать как "ОС в облаке". Пользователю нет необходимости беспокоиться о ее инсталляции на его компьютере, который может не иметь для этого необходимых ресурсов. Все, что требуется, это иметь Web-браузер и минимальный пакет надстроек (plug-ins) для запуска и использования через браузер облачных сервисов. В настоящее время все крупные компании (Microsoft, IBM, HP, Dell, Oracle и др.) разрабатывают свои системы облачных вычислений; имеется тенденция к интеграции этих корпоративных систем в единое доступное пользователю "облако".
 
 
Ключевые термины Boot loader- загрузчик одной из нескольких ОС, установленных на некотором компьютере, управляемый специальным меню при включении компьютера. Double bootable system -компьютер, на котором установлены две (или более) операционных системы, при включении которого пользователю выдается начальное меню для уточнения, какую именно ОС требуется запустить. Hard real-time –система реального времени, в которой при нарушении временных ограничений может возникнуть критическая ошибка (отказ) управляемого ею объекта. Original Equipment Manufacturer (OEM)- фирма-разработчик какого-либо внешнего устройства, обычно разрабатывающая и драйверк нему. Soft real-time –система реального времени, в которой нарушение временных ограничений не приводит к отказу управляемого ею объекта. Асимметричная кластеризация (asymmetric clustering) –организация компьютерного кластера, при которой один компьютер выполняет приложение, а остальные простаивают. Асимметричная мультипроцессорная система (asymmetric multiprocessing) –многопроцессорная компьютерная система, в которой процессоры специализированы по своим функциям; имеется главный процессор, планирующий работу подчиненных процессоров. Веб-сервер (Web server)– компьютер и программное обеспечение, предоставляющее доступ клиентам через WWW к Web-страницам, расположенным на компьютере-сервере. Вычислительная среда– интегрированная распределенная компьютерная система для решения задач в каких-либо проблемных областях. Драйвер –низкоуровневая системная программа для управления каким-либо внешним устройством (например, жестким диском). Кластеры с балансировкой загрузки (load-balancing clusters)– компьютерные кластеры, которые имеют несколько входных компьютеров, балансирующих запросы (front-ends), распределяющих задания между компьютерами серверного бэк-энда. Кластеры с высокоскоростным доступом (high-availability clusters, HAC) –компьютерные кластеры, обеспечивающие оптимальный доступ к ресурсам, предоставляемым компьютерами кластера, например, к базам данных. Клиент-серверная система –распределенная компьютерная система, в которой определенные компьютеры играют роль специализированных серверов, а остальные – роль клиентов, пользующихся их услугами. Многоядерный (multi-core) компьютер– компьютерная система, основанная на тесно связанных друг с другом процессорах (ядрах), находящихся в одном кристалле, разделяющих ассоциативную память (кэш) второго уровня и работающих на общей памяти. Облачные вычисления– модель вычислений, основанная на динамически масштабируемых (scalable)и виртуализованныхресурсах (данных, приложениях, ОС и др.), которые доступны и используются как сервисычерез Интернет и реализуются с помощью высокопроизводительных центров обработки данных (data centers). Параллельная компьютерная система– мультипроцессорная система, состоящая из нескольких непосредственно взаимодействующих процессоров. Параллельный порт,или LPT(аббревиатура от Line PrinTer) – порт для подключения устаревших моделей принтеров. Для подключения принтера через данный порт требуется предварительно отключить и принтер, и компьютер. Прокси-сервер– компьютер и программное обеспечение, являющиеся частью локальной сети и поддерживающие эффективное обращение компьютеров локальной сети к Интернету, фильтрацию трафика, защиту от внешних атак. Распределенная система (distributed system) –компьютерная система, в которой вычисления распределены между несколькими физическими процессорами (компьютерами), объединенными между собой в сеть. Сервер баз данных (database server) –компьютер и программное обеспечение, предоставляющее доступ другим компьютерам сети к базам данных, расположенным на компьютере-сервере локальной сети. Серверный бэк-энд (Server back-end) –группа (пул) связанных в локальную сеть серверных компьютеров, используемых вместо одного сервера, в целях большей надежности и предоставления большего объема ресурсов. Сервер приложений (application server)– компьютер и программное обеспечение, предоставляющее вычислительные ресурсы (память и процессор) и необходимое окружение для удаленного запуска определенных классов (как правило, больших) приложений с других компьютеров локальной сети. Сервер электронной почты –компьютер и программное обеспечение, выполняющие отправку, получение и "раскладку" электронной почты для компьютеров некоторой локальной сети. Может обеспечивать также криптование почты (email encryption). Сетевой адаптер (сетевая карта) –устройство для подключения компьютера к локальной сети. Симметричная кластеризация (symmetric clustering) -организация компьютерного кластера, при которой все машины кластера исполняют одновременно различные части одного большого приложения. Симметричная мультипроцессорная система (symmetric multiprocessing - SMP) –многопроцессорная компьютерная система, все процессоры которой равноправны и используют одну и ту же копию ОС; операционная система при этом может выполняться на любом процессоре. Слабо связанная система (loosely coupled system)– распределенная компьютерная система, в которой каждый процессор имеет свою локальную память, а различные процессоры взаимодействуют между собой через линии связи. Сканер– устройство для оцифровки бумажных изображений, например, подписанных или рукописных документов. Тесно связанная (tightly coupled) система –параллелльная компьютерная система, в которой процессоры разделяют общую память и таймер (такты); взаимодействие между ними происходит через общую память. Файл-сервер (file server)– компьютер и программное обеспечение, предоставляющие доступ к подмножеству файловых систем, расположенных на дисках компьютера-сервера, другим компьютерам локальной сети. Краткие итоги Операционные системы для персональных компьютеров, предназначенных для одного пользователя, поддерживают многозадачный режим работы, взаимодействие с широким набором внешних устройств, возможности сетевого взаимодействия и имеют удобный дружественный пользовательский интерфейс. На одном ПК могут быть установлены несколько ОС. Параллельные компьютерные системы могут быть тесно связанными (VLIW, многоядерными и др.) и слабо связанными, или распределенными. Многопроцессорные системы подразделяются на симметричные (SMP) и асимметричные. В распределенных системах компьютеры соединены через сеть. Преимущества параллельных систем – улучшенная производительность, более высокая надежность, устойчивость к ошибкам. Сетевые системы могут быть одноранговыми или клиент-серверными. Сети подразделяются на локальные, региональные и глобальные. В клиент-серверных системах клиентам предоставляются файл-серверы, серверы приложений, серверы баз данных, веб-серверы, прокси-серверы, серверы электронной почты, бэк-энды (пулы, фермы) серверов. Кластерные вычислительные системы используются для научных вычислений и подразделяются на симметричные, асимметричные, кластеры с балансировкой загрузки, кластеры с высокоскоростным доступом. Системы реального времени служат для управления различными объектами и подразделяются на hard real-time (в которых нарушение временных ограничений приводит к отказу объекта) и soft real-time (в которых нарушение временных ограничений не имеет столь фатальных последствий). Карманные и мобильные компьютерные системы широко используются, хотя и имеют целый ряд недостатков – малый объем памяти, медленные процессоры, невысокая скорость взаимодействия через Интернет, маленькие экраны, неудобство ввода информации, отсутствие традиционных портов. ОС для этих устройств должны учитывать все эти особенности. Для разработки программного обеспечения таких устройств чаще всего используется Java Micro Edition (JME). Развитие ОС для различных типов компьютеров (mainframe, миникомпьютеров, ПК, настольных и карманных компьютеров) происходит аналогичными волнами (витками), от резидентных однозадачных мониторов - к поддержке разделения времени, многозадачности и работы в сети. Интегрированные вычислительные среды подразделяются на традиционные, веб-ориентированные и встроенные. Облачные вычисления обеспечивают клиентам доступ к веб-сервисам центров обработки данных через веб и браузер, без необходимости инсталляции ПО и хранения данных на компьютере клиента. Они являются наиболее популярной моделью вычислений в настоящее время. Недостаток – полная зависимость клиента от используемого им облака. Наиболее распространенная среда и ОС для облачных вычислений – Microsoft Windows Azure. Набор для практики Вопросы
  1. Назовите основные возможности и особенности ОС для персональных компьютеров.
  2. Какие внешние устройства используются для персональных компьютеров?
  3. Чтотакое double bootable system и boot loader?
  4. Что такое мультипроцессорная система?
  5. Что такое тесно связанная компьютерная система?
  6. Как организованы многоядерные компьютеры?
  7. Каковы преимущества параллельных компьютерных систем?
  8. В чем различие между симметричными и асимметричными мультипроцессорными системами?
  9. Назовите основные разновидности компьютерных сетей.
  10. Каковы основные виды серверов в клиент-серверных системах?
  11. Назовите виды кластерных вычислительных систем.
  12. В чем отличие hard real-time систем от soft real-time систем реального времени?
  13. Каковы возможности и недостатки (ограничения) карманных и мобильных компьютерных систем и их ОС?
  14. Назовите основные этапы развития операционных систем для каждой разновидности компьютеров (mainframes, миникомпьютеры и т.д.).
  15. Назовите основные виды вычислительных сред.
  16. Что такое облачные вычисления, в чем их возможности и недостатки?
Упражнения
  1. Предложите и опишите желательную для Вас конфигурацию настольного офисного компьютера, на котором удобно было бы выполнять любые повседневные операции (объем памяти, быстродействие, объем жесткого диска, порты, внешние устройства).
  2. Предложите оптимальную конфигурацию портативного компьютера (ноутбука), удобного для поездок и максимально компактного.
  3. Имеется компьютер с четырехъядерным процессором. Предложите схему распределения его ядер для исполнения ОС, пользовательских программ, параллельных процессов и потоков.
  4. Имеется 16-процессорный компьютер. Предложите схему реализации на этом компьютере параллельного алгоритма умножения двух матриц 4*4, с параллельным вычислением столбцов матрицы-результата.
  5. В Вашем офисе для организации локальной сети имеются шесть компьютеров. Предложите распределение между ними необходимых серверных функций (файл-сервер, сервер электронной почты и др.).
  6. Опишите желаемый минимальный набор портов и адаптеров для карманной вычислительной системы, удобный для сетевого взаимодействия, использования Интернета, взаимодействия с настольным компьютером.
  7. На основе рассмотренной в лекции схемы развития ОС, попытайтесь предсказать ход развития операционных систем и инструментов для облачных вычислений – какие новые возможности появятся в них в ближайшие 3-5 лет?
Те Темы для курсовых работ, рефератов, эссе
  1. Обзор ОС для персональных компьютеров (реферат).
  2. Обзор ОС для карманных и мобильных компьютерных систем (реферат).
  3. Обзор ОС и инструментальных средств для облачных вычислений (реферат).
  4. Обзор параллельных компьютерных систем и их ОС (реферат).
  5. Обзор клиент-серверных архитектур и видов серверов в современных распределенных системах (реферат).
  6. Реализуйте локальную сеть из 6 имеющихся компьютеров с ОС Windows в офисе Вашей фирмы - практическая курсовая работа.
  7. Найдите в Интернете бесплатные облачные сервисы (например, на сайте kaavo.com), подпишитесь на них, воспользуйтесь ими для решения какой-либо простой задачи (например, вычисления скалярного произведения двух векторов) и опишите свои впечатления и выводы - практическая курсовая работа.
   

 


 

 

Лекция 7: Архитектура компьютерной системы

Введение

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

  1. функционирование компьютерной системы
  2. архитектура ввода-вывода
  3. структура памяти
  4. иерархия памяти
  5. аппаратная защита памяти
  6. общая архитектура системы.

Архитектура компьютерной системы

  увеличить изображение Рис. 4.1. Архитектура компьютерной системы. Компьютерная система имеет модульную структуру. Для каждого устройства (память, внешние устройства) в системе имеется…

Функционирование компьютерной системы

Обработка прерываний

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

Структура памяти

В качестве вторичной памяти чаще всего используются жесткие диски (hard disks).Физически они состоят из твердых пластин из металла или стекла,… Устройство жесткого диска показано на рис. 4.5.  

Аппаратная защита памяти и процессора

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

Ключевые термины

BluRay – диск– разновидность компакт-дисков большой емкости (25 – 50 ГБайт). COM (communication port, serial port, последовательный порт)– порт для… DMA (Direct Memory Access) –контроллеры с прямым доступом к оперативной памяти, минуя использование специализированной…

Краткие итоги

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

Набор для практики

Вопросы

Упражнения

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

Лекция N 9 Управление памятью

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

Лекция N 10 Управление вводом-выводом данных в ЭВМ

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

Лекция N 13 Локальные вычислительные сети

В настоящее время широкое распространение получили вычислительные сети, являющиеся эффективным средством распределенной обработки данных. Некоторым… Очевидно, что наиболее распространенными из них являются ЛВС, и поэтому именно… Как правило, данные в ЛВС передаются блоками, которые принято называть пакетами (packets) или кадрами (frames). Каждый…

Лекция N 14 Общие принципы функционирования операционной системы MS DOS

В настоящее время одной из наиболее распространенной ОС является однопользовательская и однозадачная MS DOS, используемая в ЭВМ с ЦП 8086 или 80х86,… Перечислим основные модули, входящие в состав MS DOS и расположенные в момент… 1. блок начальной загрузки (Boot Record);

Лекция N 15 Режимы работы ЭВМ IBM PC с центральным процессором (ЦП) 80386 и выше

ЭВМ IВМ РС с ЦП 8086 могла работать только в так называемом реальном режиме. Начиная с ЦП 80286 появилась возможность испозования защищенного режима… Реальный режим работы ЦП 80386  

Список использованной литературы

Основн источники:

1. Партыка, Т.Л. Операционные системы, среды и оболочки: учебное пособие / Т.Л. Партыка, И.И. Попов. - 2-е изд., испр. и доп.. - М.: Форум, 2009.- 528 с.

2. Гордеев, А.В. Операционные системы: Учебник для вузов. - 2-е издание. - СПб.: Питер, 2007.- 416 с.: ил.

3. Олифер, В.Г. Сетевые операционные системы: Учебник для вузов / В.Г. Олифер, Н.А. Олифер. - 2-е издание. - СПб.: Питер, 2009.- 669 с.: ил.

Дополнительные источники:

1. Руссинович М., Соломон Д Внутреннее устройство Microsoft Windows: Windows Server 2003, Windows XP и Windows 2000 M.: Издательско-торговый дом "Русская редакция"; СПб.: Питер, 2005

2. Карпов В.Е., Коньков К.А Основы операционных систем Издательство "Интуит.ру". 2005 г.– 2-е издание

3. Таненбаум Э. Современные операционные системы. СПб.: Питер, 2010. 1116 с.

4. Столлингс В. Операционные системы. М.: Вильямс, 2002. 848 с

5. Назаров С.В., Гудыно Л.П., Кириченко А.А. Операционные системы. Практикум 2008. 464 с.

Интернет ресурсы:

1. http://www.ict.edu.ru/catalog/index.php

2. http://artishev.com/texnologii/setevaya-os.html

3. http://inoblogger.ru/2010/03/31/operacionnaya-sistema-interneta/

http://www.tver.mesi.ru/e-lib/res/648/14/1.html

– Конец работы –

Используемые теги: курс, лекций, дисциплине, операционные, системы0.075

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: КУРС ЛЕКЦИЙ по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ

Что будем делать с полученным материалом:

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

Еще рефераты, курсовые, дипломные работы на эту тему:

Лекция 1. Тема: Операционная система. Определение. Уровни операционной системы. Функции операционных систем. 1. Понятие операционной системы
Понятие операционной системы... Причиной появления операционных систем была необходимость создания удобных в... Операционная система ОС это программное обеспечение которое реализует связь между прикладными программами и...

КУРС ЛЕКЦИЙ по дисциплине Железобетонные конструкции Курс лекций. Для специальностей «Архитектура» и «Промышленное и гражданское строительство»
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ... ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ АРХИТЕКТУРНО СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ...

Курс офтальмологии КУРС ЛЕКЦИЙ ТЕМАТИЧЕСКИЙ ПЛАН ЛЕКЦИЙ 1. Введение. Офтальмология и ее место среди других медицинских дисциплин. История офтальмологии. Анатомо-физиологические особенности органа зрения. 2. Зрительные функции и методы их исследования
Курс офтальмологии... КОРОЕВ О А...

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

Конспект лекций по курсу Операционные системы , 1 семестр , часть 1 ЗАГРУЗОЧНАЯ ДИСКЕТА DOS, ОСНОВНЫЕ КОМАНДЫ
по курсу Операционные системы семестр часть... Составитель Отрадская Т В Одесса Колледж Сервер г...

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

КОНСПЕКТ ЛЕКЦИЙ по дисциплине Операционные системы
ВОСТОЧНОУКРАИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ... Северодонецкий технологический институт... КОНСПЕКТ ЛЕКЦИЙ...

Организационный этап выполнения курсовой работы 2.1 Примерная тематика курсовой работы . 3 Основной этап выполнения курсовой работы 3.1.1 Назначение и место ученого предмета дисциплины
стр Введение... Введение Реформирование национальной системы высшего образования связанное с введением нового перечня специальностей общегосударственного классификатора...

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

0.041
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам