Операционная система. 7
Челябинский государственный педагогический университет |
Реферат |
на тему: «Операционная система» |
Челябинск 2011
Оглавление
Введение 2
Операционная система 3
Функции операционных систем 4
Основные функции: 4
Дополнительные функции: 4
Понятие операционной системы 6
Ядро операционной системы 9
Эволюция операционных систем и основные идеи 10
Существующие операционные системы 13
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 18
Введение
Вы когда-нибудь задумывались, как происходит в компьютере обработка команд? Почему - то или иное наше действие вызывает тот или иной результат? Как именно происходит взаимодействие между человеком и компьютером?
Верю, что задумывались. И вот теперь вам пора узнать ответ.
Операционная система— вот так называется первая и самая главная программа, благодаря которой становится возможным общение между компьютером и человеком.
Операционная система (или, более фамильярно, просто ОС) — это своего рода буфер-передатчик между компьютерным железом и остальными программами. ОС принимает на себя сигналы-команды, которые посылают другие программы, и «переводит» их на понятный машине язык. ОС управляет всеми подключенными к компьютеру устройствами, обеспечивая доступ к ним другим программам. Наконец, третья задача ОС — обеспечить удобство работы с компьютером для человека-пользователя.
Так давайте же узнаем, что такое операционная система.
Операционная система
Операцио́нная систе́ма, сокр. ОС (англ. operating system) — комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной системы и прикладными программами, а с другой стороны — предназначены для управления устройствами, управления вычислительными процессами, эффективного распределения вычислительных ресурсов между вычислительными процессами и организации надёжных вычислений. Это определение применимо к большинству современных ОС общего назначения
В логической структуре типичной вычислительной системы ОС занимает положение между устройствами с их микроархитектурой, машинным языком и, возможно, собственными (встроенными) микропрограммами — с одной стороны — и прикладными программами с другой.
Разработчикам программного обеспечения ОС позволяет абстрагироваться от деталей реализации и функционирования устройств, предоставляя минимально необходимый набор функций (см. интерфейс программирования приложений).
В большинстве вычислительных
систем ОС являются основной, наиболее
важной (а иногда единственной) частью
системного ПО. С 1990-х наиболее распространёнными
операционными системами
Функции операционных систем
Основные функции:
Выполнение по запросу программ тех достаточно элементарных (низкоуровневых) действий, которые являются общими для большинства программ и часто встречаются почти во всех программах (ввод и вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной памяти и др.).
Загрузка программ в оперативную память и их выполнение.
Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).
Управление оперативной
памятью (распределение между
Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, оптические диски и др.), организованным в той или иной файловой системе.
Обеспечение пользовательского интерфейса.
Сетевые операции, поддержка стека сетевых протоколов.
Дополнительные функции:
Параллельное или
Эффективное распределение ресурсов вычислительной системы между процессами.
Разграничение доступа различных процессов к ресурсам.
Организация надёжных вычислений (невозможности одного вычислительного процесса намеренно или по ошибке повлиять на вычисления в другом процессе), основана на разграничении доступа к ресурсам.
Взаимодействие между процессами: обмен данными, взаимная синхронизация.
Защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.
Многопользовательский режим работы и разграничение прав доступа (см. аутентификация, авторизация).
Понятие операционной системы
Существуют две группы
определений ОС: «набор программ, управляющих
оборудованием» и «набор программ,
управляющих другими
Есть приложения вычислительной
техники, для которых ОС излишни.
Например, встроенные микрокомпьютеры
содержатся сегодня во многих бытовых
приборах, автомобилях (иногда по десятку
в каждом), сотовых телефонах и
т. п. Зачастую такой компьютер постоянно
исполняет лишь одну программу, запускающуюся
по включении. И простые игровые
приставки — также
ОС нужны, если:
вычислительная система
используется для различных задач,
причём программы, решающие эти задачи,
нуждаются в сохранении данных и
обмене ими. Из этого следует необходимость
универсального механизма сохранения
данных; в подавляющем большинстве
случаев ОС отвечает на неё реализацией
файловой системы. Современные ОС, кроме
того, предоставляют возможность
непосредственно «связать»
различные программы нуждаются в выполнении одних и тех же рутинных действий. Например, простой ввод символа с клавиатуры и отображение его на экране может потребовать исполнения сотен машинных команд, а дисковая операция — тысяч. Чтобы не программировать их каждый раз заново, ОС предоставляют системные библиотеки часто используемых подпрограмм (функций);
между программами и пользователями системы необходимо распределять полномочия, чтобы пользователи могли защищать свои данные от несанкционированного доступа, а возможная ошибка в программе не вызывала тотальных неприятностей;
необходима возможность имитации «одновременного» исполнения нескольких программ на одном компьютере (даже содержащем лишь один процессор), осуществляемой с помощью приёма, известного как «разделение времени». При этом специальный компонент, называемый планировщиком, делит процессорное время на короткие отрезки и предоставляет их поочерёдно различным исполняющимся программам (процессам);
наконец, оператор должен иметь возможность так или иначе управлять процессами выполнения отдельных программ. Для этого служат операционные среды, одна из которых — оболочка и набор стандартных утилит — является частью ОС (прочие, такие, как графическая операционная среда, образуют независимые от ОС прикладные платформы).
Таким образом, современные универсальные ОС можно охарактеризовать, прежде всего, как
использующие файловые системы (с универсальным механизмом доступа к данным),
многопользовательские (с разделением полномочий),
многозадачные (с разделением времени).
Многозадачность и распределение полномочий требуют определённой иерархии привилегий компонентов самой ОС. В составе ОС различают три группы компонентов:
ядро, содержащее планировщик; драйверы устройств, непосредственно управляющие оборудованием; сетевая подсистема, файловая система;
системные библиотеки;
оболочка с утилитами.
Большинство программ, как
системных (входящих в ОС), так и
прикладных, исполняются в
В определении состава ОС значение имеет критерий операциональной целостности (замкнутости): система должна позволять полноценно использовать (включая модификацию) свои компоненты. Поэтому в полный состав ОС включают и набор инструментальных средств (от текстовых редакторов до компиляторов, отладчиков и компоновщиков).
Ядро операционной системы
Ядро — центральная часть операционной системы, управляющая выполнением процессов, ресурсами вычислительной системы и предоставляющая процессам координированный доступ к этим ресурсам. Основными ресурсами являются процессорное время, память и устройства ввода-вывода. Доступ к файловой системе и сетевое взаимодействие также могут быть реализованы на уровне ядра.
Как основополагающий элемент ОС, ядро представляет собой наиболее низкий уровень абстракции для доступа приложений к ресурсам вычислительной системы, необходимым для их работы. Как правило, ядро предоставляет такой доступ исполняемым процессам соответствующих приложений за счёт использования механизмов межпроцессного взаимодействия и обращения приложений к системным вызовам ОС.
Описанная задача может различаться в зависимости от типа архитектуры ядра и способа её реализации.
Объекты ядра ОС:
- Процессы
- Файлы
- События
- Потоки
- Семафоры
- Мьютексы
- Каналы
- Файлы, проецируемые в память
Эволюция операционных систем и основные идеи
Предшественником ОС следует
считать служебные программы (загрузчики
и мониторы), а также библиотеки
часто используемых подпрограмм, начавшие
разрабатываться с появлением универсальных
компьютеров 1-го поколения (конец 1940-х
годов). Служебные программы
В 1950—1960-х годах
Пакетный режим
Необходимость оптимального
использования дорогостоящих
Разделение времени и многозадачность
Уже пакетный режим в своём развитом варианте требует разделения процессорного времени между выполнением нескольких программ.
Необходимость в разделении
времени (многозадачности, мультипрограммировании)
проявилась ещё сильнее при
Разделение времени позволило
создать «
Разделение полномочий
Распространение многопользовательских
систем потребовало решения задачи
разделения полномочий, позволяющей
избежать возможности изменения
исполняемой программы или
Реализация разделения полномочий
в ОС была поддержана разработчиками
процессоров, предложивших архитектуры
с двумя режимами работы процессора
— «реальным» (в котором исполняемой
программе доступно всё адресное
пространство компьютера) и «защищённым»
(в котором доступность
Реальный масштаб времени
Применение универсальных компьютеров для управления производственными процессами потребовало реализации «реального масштаба времени» («реального времени») — синхронизации исполнения программ с внешними физическими процессами.
Включение функции реального масштаба времени в ОС позволило создавать системы, одновременно обслуживающие производственные процессы и решающие другие задачи (в пакетном режиме и/или в режиме разделения времени).
Файловые системы и структуры
Постепенная замена носителей с последовательным доступом (перфолент, перфокарт и магнитных лент) накопителями произвольного доступа (на магнитных дисках).
Файловая система — способ хранения данных на внешних запоминающих устройствах.
Существующие операционные системы
UNIX, стандартизация операционных систем и POSIX
К концу 1960-х годов отраслью
и научно-образовательным
Наиболее развитые ОС, такие как OS/360 (IBM), SCOPE (CDC (англ.)) и завершённый уже в 1970-х годах MULTICS (MIT и Bell Labs), предусматривали возможность исполнения на многопроцессорных компьютерах.
Эклектичный характер разработки ОС привёл к нарастанию кризисных явлений, прежде всего, связанных с чрезмерными сложностью и размерами создаваемых систем. ОС были плохо масштабируемыми (более простые не могли использовать все возможности крупных вычислительных систем; более развитые неоптимально исполнялись на малых или не могли исполняться на них вовсе) и полностью несовместимыми между собой, их разработка и совершенствование затягивались.
Задуманная и реализованная
в 1969 году Кеном Томпсоном при
участии нескольких коллег (включая
Денниса Ритчи и Брайана
простая метафорика (два ключевых понятия: вычислительный процесс и файл);
компонентная архитектура: принцип «одна программа — одна функция» плюс мощные средства связывания различных программ для решения возникающих задач («оболочка»);
минимизация ядра (кода, выполняющегося в «реальном» (привилегированном) режиме процессора) и количества системных вызовов;
независимость от аппаратной архитектуры и реализация на машиннонезависимом языке программирования (язык программирования Си стал побочным продуктом разработки UNIX);
унификация файлов.
UNIX, благодаря своему удобству
прежде всего в качестве
В конце 1970-х годов сотрудники Калифорнийского университета в Беркли внесли ряд усовершенствований в исходные коды UNIX, включая работу с протоколами TCP/IP. Их разработка стала известна под именем BSD (Berkeley Software Distribution).
Задачу разработать независимую (от авторских прав Bell Labs) реализацию той же архитектуры поставил и Ричард Столлман, основатель проекта GNU.
Благодаря конкурентности реализаций архитектура ОС UNIX стала вначале фактическим отраслевым стандартом, а затем обрела статус и стандарта юридического — ISO/IEC 9945[1].
Только ОС, отвечающие спецификации Single UNIX Specification, имеют право носить имя UNIX. К таким системам относятся AIX, HP-UX, IRIX, Mac OS X, SCO OpenServer, Solaris, Tru64 и z/OS.
ОС, следующие стандарту
POSIX или опирающиеся на него, называют
«POSIX-совместимыми» (чаще встречается
словоупотребление «UNIX-
К UNIX-подобным ОС относятся системы, основанные на последней версии UNIX, выпущенной Bell Labs (System V), на разработках университета Беркли (FreeBSD, OpenBSD, NetBSD), на основе Solaris (OpenSolaris, BeleniX, Nexenta), а также ОС GNU/Linux, разработанная в части утилит и библиотек проектом GNU и в части ядра — сообществом, возглавляемым Линусом Торвальдсом.
Стандартизация ОС гарантирует возможность безболезненной замены самой ОС и/или оборудования при развитии вычислительной системы или сети и дешёвого переноса прикладного программного обеспечения (строгое следование стандарту предполагает полную совместимость программ на уровне исходного текста; из-за профилирования стандарта и его развития некоторые изменения бывают всё же необходимы, но перенос программы между POSIX-совместимыми системами обходится на порядки дешевле, чем между альтернативными), а также преемственность опыта пользователей.
Самым заметным эффектом существования
этого стандарта стало
Пост-UNIX-архитектуры операционных систем
Коллектив, создавший ОС UNIX, развил концепцию унификации объектов ОС, включив в исходную концепцию UNIX «устройство — это тоже файл» также и процессы, и любые другие системные, сетевые и прикладные сервисы, создав новую концепцию: «что угодно — это файл». Эта концепция стала одним из основных принципов ОС Plan9 (название было позаимствовано из фантастического триллера «План 9 из открытого космоса» Эдварда Вуда-младшего), призванной преодолеть принципиальные недостатки дизайна UNIX и сменившей «рабочую лошадку» UNIX System V на компьютерах сети Bell Labs в 1992 году.
Кроме реализации всех объектов
ОС в виде файлов и размещения их
на едином и персональном для каждого
терминала вычислительной сети пространстве
(namespace), были пересмотрены другие архитектурные
решения UNIX. Например, в Plan9 отсутствует
понятие «суперпользователь», и, соответственно,
исключаются любые нарушения
режима безопасности, связанные с
нелегальным получением прав суперпользователя
в системе. Для представления (хранения,
обмена) информации Роб Пайк и Кен
Томпсон разработали
ОС, созданные на базе или идеях UNIX, такие как всё семейство BSD и системы GNU/Linux, постепенно перенимают новые идеи из Bell Labs. Возможно, эти новые идеи ждёт большое будущее и признание ИТ-разработчиков.
Новые концепции были использованы Робом Пайком в «Inferno».
На основе «Plan9» в Испании разрабатываются ОС Off++ и Plan B, носящие экспериментальный характер.
К попыткам создать пост-UNIX-архитектуру можно также отнести разработку системы программирования и операционной среды Оберон в Швейцарском федеральном технологическом институте (ETH Zurich) под руководством профессора Никлауса Вирта.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
- Герхард Франкен, Сергей Молявко "MS-DOS 6.2... для Пользователя", Киев, BHV, 1994, Москва, БИНОМ, 1994.
- "DOS 3.3. Техническое руководство". Методические материалы.
- Фигурнов В. Э. “IBM PC для Пользователя” г. Уфа, НПО “Информатика и Компьютеры” , 1993 г.
- Справочное Руководство по IBM PC. Методические материалы. Часть 1. ТПП “СФЕРА” . М. 1991 г.
- Брябрин В. М. “Программное обеспечение персональных ЭВМ” . М. “НАУКА” , 1990 г.
