Операционная система — это комплекс взаимосвязанных системных программ, назначение которого — организация взаимодействия пользователя с компьютером и выполнение всех других программ.
Операционная система выполняет роль связующего звена между аппаратурой компьютера, с одной стороны, и выполняемыми программами, а также пользователем, с другой стороны.
Операционная система обычно хранится во внешней памяти компьютера — на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ .
Этот процесс называется загрузкой операционной системы.
В функции операционной системы входит:
- осуществление диалога с пользователем;
- ввод-вывод и управление данными;
- планирование и организация процесса обработки программ;
- распределение ресурсов (оперативной памяти и кэша, процессора, внешних устройств);
- запуск программ на выполнение;
- всевозможные вспомогательные операции обслуживания;
- передача информации между различными внутренними устройствами;
- программная поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).
Классификация ОС
Вопросы реализации файловых систем
Операционные системы можно разделить на группы (классифицировать) по следующим признакам:
- По количеству пользователей: однопользовательская ОС (обслуживает только одного пользователя); многопользовательская (работает со многими пользователями)
- По числу процессов: однозадачные (обрабатывают только одну задачу — уже не используются); многозадачные (располагает в оперативной памяти одновременно несколько задач, которые попеременно обрабатывает процессор)
- По типу средств вычислительной техники: однопроцессорные, многопроцессорные (задачи могут выполняться на разнызх процессорах; серверы, как правило, многопроцессорные), сетевые (обеспечивают совместное использование ресурсов всеми выполняемыми в сети задачами).
о типу интерфейса (способа взаимодействия с пользователем) операционные системы делятся на 2 класса: ОС с интерфейсом командной строки и ОС с графическим интерфейсом .
Первые операционные системы (CP/M, MS-DOS, Unix) вели диалог с пользователем на экране текстового дисплея. Это был в полном смысле слова диалог, в ходе которого человек и компьютер по очереди обменивались сообщениями: человек вводил очередную команду, а компьютер, проверив ее, либо выполнял, либо отвергал по причине ошибки. Такие системы в литературе принято называть ОС с интерфейсом командной строки. Типичный пример возможного фрагмента сеанса работы приведен на следующем рисунке.
Пользователь последовательно набрал две команды вывода каталога дисков, причем первую компьютер выполнил нормально, и на экране появился требуемый список файлов, а вторую «отказался» делать, поскольку оператор ошибочно указал имя несуществующего диска.
Очевидно, что подобный способ общения не очень удобен для человека, поскольку требует постоянно держать в голове жесткий синтаксис всех допустимых команд и очень внимательно их вводить. Поэтому почти сразу же стали появляться сервисные системные программы, тем или иным способом облегчающие работу с ОС. Наиболее ярким примером таких программ-оболочек может служить широко известный Norton Commander (ср. FAR), который был настолько распространен, что многие пользователи искренне считали его частью операционной системы.
Что такое файловая система
Развитие графических возможностей дисплеев привело к коренному изменению принципов взаимодействия человека и компьютера. Командная строка была безвозвратно вытеснена графическим интерфейсом, когда объекты манипуляций в ОС изображаются в виде небольших рисунков, а необходимые действия тем или иным образом выбираются из предлагаемого машиной списка — так называемого меню. При подобном методе диалога набор текста полностью отсутствует и вполне достаточно всего нескольких клавиш.
Существенным дополнением к графическому способу ведения диалога явилось появление нового устройства ввода информации в компьютер — манипулятора «мышь», без которого сейчас просто невозможно представить современный компьютер. Примерами операционной системы c графическим интерфейсом служат довольно похожие ОС для компьютеров «Macintosh» (MAC OC) и «IBM PC» — OS/2 и Windows. Последняя система в нашей стране распространена необычайно широко.
В различных моделях компьютеров используют операционные системы с разной архитектурой и возможностями. Для их работы требуются разные ресурсы. Они предоставляют разную степень сервиса для программирования и работы с готовыми программами.
Операционная система для персонального компьютера, ориентированного на профессиональное применение, должна содержать следующие основные компоненты:
- программы управления вводом/выводом;
- программы, управляющие файловой системой и планирующие задания для компьютера;
- процессор командного языка, который принимает, анализирует и выполняет команды, адресованные операционной системе.
Каждая операционная система имеет свой командный язык, который позволяет пользователю выполнять те или иные действия:
- обращаться к каталогу
- выполнять разметку внешних носителей;
- запускать программы;
- … другие действия.
Анализ и исполнение команд пользователя, включая загрузку готовых программ из файлов в оперативную память и их запуск, осуществляет командный процессор операционной системы.
Для управления внешними устройствами компьютера используются специальные системные программы — драйверы. Драйверы стандартных устройств образуют в совокупности базовую систему ввода-вывода (BIOS), которая обычно заносится в постоянное ЗУ компьютера.
Порядок начальной загрузки ОС
В момент включения компьютера в ОЗУ нет осмысленной информации. Поэтому особый интерес представляет вопрос о том, как операционная система загружается. Процесс этот в заметно упрощенном виде выглядит так.
При включении компьютера (или при нажатии кнопки сброса) счетчик процессора аппаратно устанавливается на начальный адрес ПЗУ, и стартует выполнение программы начальной загрузки. Прежде всего, ищется и тестируется установленное оборудование. Современные компьютеры в основном используют внешние устройства «plug and play» (переводится —«включил и работай»), поэтому они способны сообщить процессору свои основные характеристики и условия работы. Опрос внешних устройств и проверка их работоспособности занимают достаточно длительное время, несмотря на высокое быстродействие компьютера.
В случае если все оборудование функционирует нормально, происходит переход к следующему этапу —поиску начального загрузчика операционной системы. Он может находиться на жестком диске, на дискете, на CD-ROM и даже быть получен с помощью сетевой платы. Поэтому компьютер опрашивает перечисленные устройства по очереди, в определенном порядке, до тех пор, пока не обнаружит требуемую информацию (в скобках заметим, что порядок поиска при наличии достаточных навыков и знаний может быть легко изменен).
Итак, загрузчик, представляющий собой не что иное, как программу дальнейшей загрузки, обнаружен и прочитан в память. Дальнейшие действия машины уже определяются тем, что введено извне. Поскольку начальный загрузчик очень мал, то он умеет очень немного —найти и прочесть первый файл ОС с фиксированным именем и передать ему управление. И только после этого будет загружена в ОЗУ остальная часть операционной системы и машина сможет, наконец, нормально общаться с пользователем.
Примечание. Несколько слов для тех, кого удивила сложность описанного процесса. Почему загрузка ОС такая многоступенчатая и почему, например, нельзя просто записать начальный загрузчик в то же самое ПЗУ? Технически это не представляет никакого труда, но все дело в том, что тогда мы сможем пользоваться только одной(!) операционной системой, а именно той, загрузчик для которой жестко «зашили» в ПЗУ.
Из истории Windows
История Windows (разработка фирмы Microsoft) берет свое начало в 1986 году, когда появилась первая версия системы, но популярность она завоевала далеко не сразу — в 1990 году, когда вышла версия Windows 3.0. Популярность новой версии Windows объяснялась несколькими причинами.
Графический интерфейс позволяет работать с объектами вашего компьютера не с помощью команд, а с помощью наглядных и понятных действий над значками, обозначающими эти объекты. Возможность одновременной работы с несколькими программами значительно повысила удобство и эффективность работы. Кроме того, удобство и легкость написания программ для Windows привели к появлению все больше разнообразных программ, работающих под управлением Windows. Наконец, лучше была организована работа с разнообразным компьютерным оборудованием, что также определило популярность системы. Последующие версии Windows были направлены на повышение надежности, а также поддержку средств мультимедиа (версия 3.1) и работу в компьютерных сетях (версия 3.11).
Процесс развития операционных систем не стоит на месте, и в 1995 появилась система Windows 95, ставшая новым этапом в истории Windows: значительно изменился интерфейс, выросла скорость работы программ, в состав системы был включен браузер Internet Explorer.
Продолжением развития Windows 95 стала операционная система, появившаяся в 1998 году (Windows 98). При сохранившемся интерфейсе внутренняя структура была значительно переработана. Много внимания было уделено работе с Интернетом, а также поддержке современных протоколов передачи информации — стандартов, обеспечивающих обмен информацией между различными устройствами. Кроме того, особенностью Windows 98 является возможность работы с несколькими мониторами.
Следующим этапом в развитии Windows стало появление Windows 2000 и Windows Me (Millennium Edition — редакция тысячелетия). Система Windows 2000 разработана на основе Windows NT и унаследовала от нее высокую надежность и защищенность информации от постороннего вмешательства. Операционная система Windows Me стала наследницей Windows 98, но приобрела многие новые возможности. Прежде всего, это улучшенная работа со средствами мультимедиа, возможность записывать не только аудио, но и видеоинформацию, мощные средства восстановления информации после сбоев и многое другое.
ОС Windows XP
В октябре 2001 года вышла очередная версия ОС Windows — Windows XP, которая существует в нескольких вариантах, в том числе:
- Windows XP Professional Edition (разработана для предприятий и предпринимателей и содержит такие функции, как удалённый доступ к рабочему столу компьютера, шифрование файлов, центральное управление правами доступа и поддержка многопроцессорных систем
- Windows XP Home Edition — система для домашнего применения. Выпускается как недорогая «урезанная» версия Professional Editon
Некоторыми из наиболее заметных улучшений в Windows XP по сравнению с Windows 2000 являются:
- Новое оформление графического интерфейса, включая более округлые формы и плавные цвета; а также дополнительные функциональные улучшения (такие, как возможность представления папки в виде слайд-шоу в проводнике Windows).
- Возможность быстрого переключения пользователей, позволяющая временно прервать работу одного пользователя и выполнить вход в систему под именем другого пользователя, оставляя при этом приложения, запущенные первым пользователем, включёнными.
- Функция «удалённый помощник», позволяющая опытным пользователям и техническому персоналу подключаться к компьютеру с системой Windows XP по сети для разрешения проблем. При этом помогающий пользователь может видеть содержимое экрана, вести беседу и (с позволения удалённого пользователя) брать управление в свои руки. Программа восстановления системы, предназначенная для возвращения системы в определённое предшествующее состояние (эта функция является развитием аналогичной программы, включённой в Windows Me).
- Улучшенная совместимость со старыми программами и играми. С пециальный мастер совместимости позволяет эмулировать для отдельной программы поведение одной из предыдущих версий ОС (начиная с Windows 95).
- Возможность удалённого доступа к рабочей станции благодаря включению в систему миниатюрного сервера терминалов (только в издании Professional).
- Более развитые функции управления системой из командной строки. Поддержка проводником Windows цифровых фотоформатов (например, представление папки в виде слайд-шоу) и аудиофайлов (автоматическое отображение метаданных для аудиофайлов, например, тегов ID3 для MP3-файлов).
Всегда ли существовала ОС и может ли компьютер работать без нее? Как ни странно, ответ на оба вопроса отрицательный. Операционная система существовала не всегда, а возникла на стыке второго и третьего поколений.
Как видно из приведенной таблицы, существенными причинами возникновения ОС являются появление сложных внешних устройств — в первую очередь магнитных дисков, и необходимость разделения ресурсов между задачами и пользователями. Что касается работы без ОС, то теоретически можно написать такую программу, которая будет сама загружаться и работать с внешними устройствами без всякого участия ОС. На практике это чересчур сложно и никогда не делается. Даже если компьютер целыми днями работает по единственной программе (кассовый аппарат в магазине или учет переводов в сберкассе), в нем все равно обычно используется операционная система.
Источник: ronl.org
ОС автономного компьютера.
ОС автономного компьютера — комплекс программ, управляющих устройствами вычислительной системы, прикладными программами, вычислительными процессами, распределением ресурсов между вычислительными процессами и организацией надёжных вычислений. Основные семейства ОС: UNIX, Windows, QNX, MS-DOS, NetWare, Mac OS.
ОС как виртуальная машина. Реальная машина, способная выполнять небольшой набор элементарных действий, определяемых ее системой команд, превращается в виртуальную машину, выполняющую широкий набор гораздо более мощных функций, например, работа с дисковым накопителем через файловый интерфейс, а не напрямую или управление физической памятью, таймерами, принтерами. Таким образом, виртуальная машина, созданная ОС, позволяет легче работать с аппаратной частью компьютера или сетью.
Функции операционной системы автономного компьютера, называемые подсистемами, состоят в управлении процессами, памятью, файлами и внешними устройствами, а также пользовательского интерфейса, защиты данных и администрирования.
Основные задачи ОС:
• увеличение пропускной способности ЭВМ (за счет пакетной обработки и эффективного распределения ресурсов);
• уменьшение времени реакции системы на запросы пользователей и получения пользователями ответов от ЭВМ;
• упрощение работы разработчиков программных средств и сотрудников обслуживающего персонала ЭВМ (за счет предоставления им большого количества языков программирования и сервисных программ).
Функциональные компоненты ОС автономного компьютера:
— программы управления вводом/выводом;
— программы, управляющие файловой системой и планирующие задания для компьютера;
— процессор командного языка, который принимает, анализирует и выполняет команды, адресованные операционной системе.
Таким образом, современные автономные ОС – ОС, использующие файловые системы (с универсальным механизмом доступа к данным), многопользовательские (с разделением полномочий), многозадачные (с разделением времени).
Сетевые ОС.
При организации сетевой работы операционная система играет роль интерфейса, экранирующего от пользователя все детали низкоуровневых программно-аппаратных средств сети. Например, вместо числовых адресов компьютеров сети, таких как МАС-адрес и IP-адрес, операционная система компьютерной сети позволяет оперировать удобными для запоминания символьными именами (DNS).
Представители сетевых ОС: Windows NT, NetWare, Solaris, HP-UX.
В сети могут использоваться одинаковые или разные ОС, они должны иметь согласованные протоколы.
Основные функциональные компоненты сетевой ОС:
• средства управления локальными ресурсами компьютера реализуют все функции ОС автономного компьютера;
• сетевые средства, включающие:
— средства предоставления локальных ресурсов и услуг в общее пользование — серверная часть ОС;
— средства запроса доступа к удаленным ресурсам и услугам — клиентская часть ОС;
— транспортные средства ОС, организующие передачу сообщений между компьютерами сети.
Серверные ОС.
Назначение серверной операционной системы — это управление приложениями, обслуживающими всех пользователей корпоративной сети, таких как СУБД, средства управления сетями и анализа событий в сети, службы каталогов, средства обмена сообщениями и групповой работы, Web-серверы, почтовые серверы, корпоративные брандмауэры, серверы приложений, серверные части бизнес-приложений.
Основные серверные ОС:
1. Windows NT, Windows 2000, Windows Server 2003, Windows Server 2008 R2;
2. UNIX -системы: Solaris, HP-UX, AIX.
3. Linux и FreeBSD.
4. NetWare (Novell).
5. Mac OS X (Apple).
Мультипрограммирование.
Мультипрограммирование, или многозадачность, — это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются сразу несколько программ. Эти программы совместно используют не только процессор, но и другие ресурсы компьютера: оперативную и внешнюю память, устройства ввода-вывода, данные. R ритериями эффективности вычислительных систем являются:
• пропускная способность — количество задач, выполняемых вычислительной системой в единицу времени;
• удобство работы пользователей, заключающееся, в том, что они имеют возможность интерактивно работать одновременно с несколькими приложениями на одной машине;
• реактивность системы — способность системы выдерживать заранее заданные (возможно, очень короткие) интервалы времени между запуском программы и получением результата.
В зависимости от выбранного критерия эффективности ОС делятся на системы пакетной обработки, системы разделения времени, и системы реального времени. Каждый тип ОС имеет специфические внутренние механизмы и особые области применения.
При использовании мультипрограммирования для повышения пропускной способностикомпьютера главной целью является минимизация простоев всех устройств компьютера, и прежде всего центрального процессора. Такие простои могут возникать из-за приостановки задачи по ее внутренним причинам, связанным, например, с ожиданием ввода данных для обработки. В этом случае происходит переключение процессора на выполнение другой задачи, у которой есть данные для обработки. Такая концепция мультипрограммирования положена в основу пакетных систем.
Еще одна разновидность мультипрограм мирования используется в системах реального времени, предназначенных для управления от компьютера различными техническими объектами или технологическими процессами. Критерием эффективности является способность выдерживать заранее заданные интервалы времени между запуском программы и получением результата.
Повышение удобства и эффективности работы пользователя является целью другого способа мультипрограммирования — в режиме разделения времени. В системах разделения времени пользователь может интерактивно работать с несколькими приложениями. ОС принудительно периодически приостанавливает приложения, не дожидаясь, когда они добровольно освободят процессор. Всем приложениям попеременно выделяется квант процессорного времени, за счет чего достигается интерактивность.
Планирование процессов и потоков.
В настоящее время в большинстве операционных систем определены два типа единиц работы. Более крупная единица работы — процесс, требует для своего выполнения нескольких более мелких работ – поток ов, которые представляют собой последовательности (потоки выполнения) команд.
Процесс рассматривается операционной системой как заявка на потребление всех видов ресурсов, кроме процессорного времени. Этот важнейший ресурс распределяется операционной системой между другими единицами работы – потоками.
Подсистема управления процессами и потоками — занимается их созданием и уничтожением, поддерживает взаимодействие между ними, обеспечивает их необходимыми ресурсами, а также распределяет процессорное время между несколькими одновременно существующими в системе процессами и потоками.
ОС поддерживает в памяти специальные информационные структуры, в которые записывает, какие ресурсы выделены каждому процессу. Она может назначить процессу ресурсы в единоличное или в совместное с другими процессами пользование. Некоторые из ресурсов выделяются процессу при его создании, а некоторые — динамически по запросам во время выполнения.
Ресурсы могут быть приписаны процессу на все время его жизни или только на определенный период. При выполнении этих функций подсистема управления процессами взаимодействует с другими подсистемами ОС, ответственными за управление ресурсами, такими как подсистема управления памятью, подсистема ввода-вывода, файловая система. Синхронизация потоков является одной из важных функций подсистемы управления процессами и потоками.
11. Алгоритмы планирования процессов.
Планирование — обеспечение поочередного доступа процессов к одному процессору.
Планировщик — отвечающая за планирование часть операционной системы. Алгоритм планирования – порядок действий при планировании. П ланирование необходимо:
• когда создается процесс
• когда процесс завершает работу
• когда процесс блокируется на операции ввода/вывода, семафоре, и т.д.
• при прерывании ввода/вывода.
Алгоритм планирования без переключений (неприоритетный) — не требует прерывание по аппаратному таймеру, процесс останавливается только когда блокируется или завершает работу.
Алгоритм планирования с переключениями (приоритетный) — требует прерывание по аппаратному таймеру, процесс работает только отведенный период времени, после этого он приостанавливается по таймеру, чтобы передать управление планировщику.
Алгоритм планирования зависит от задач, зависящих от вида операционных систем.
Основные три системы:
• системы пакетной обработки — могут использовать неприоритетный и приоритетный алгоритм
• интерактивные системы — могут использовать только приоритетный алгоритм
• системы реального времени — могут использовать неприоритетный и приоритетный алгоритм
Планирование процессов в ОСРВ.
Планирование и диспетчеризация процессов в системах реального времени должно удовлетворять следующим требованиям:
• строгое соблюдение дисциплины планирования,
• полное исключение инверсии приоритетов между задачами (за исключением специальных планировщиков – например, невытесняющих),
• сохранение контекста задачи при вытеснении ее с процессора,
• восстановление контекста задачи при назначении ей процессора,
• минимально возможное потребление ресурсов — памяти и процессорного времени.
Существует 2 типа планировщиков задач. Простой планировщик – список готовых задач, упорядоченных по убыванию приоритета. «POSIX» планировщик поддерживает списки задач для каждого приоритета.
• невытесняющее планирование – применяется для быстрой обработки события,
• вытесняющее планирование — основной тип планирования в системах жесткого реального времени,
• круговое планирование — применяется как замена «общего цикла выполнения». ОС не влияет на вытеснение задач и на время выполнения задач,
• планирование с квантованием — похоже на круговое, но вытеснение задач происходит принудительно по истечении кванта времени (таким образом, ОС влияет на время выполнения задач),
• time-triggered scheduling — двойное и тройное исполнение задачи для сравнения результата вычислений. Жесткий (непериодический) график задач строится до исполнения (off-line). Прерывания разрешаются только в определенные моменты времени или не разрешаются во время полного цикла выполнения.
Источник: poisk-ru.ru
6.5. Что такое операционная система?
Операционная система выполняет роль связующего звена между аппаратурой компьютера, с одной стороны, и выполняемыми программами, а также пользователем, с другой стороны.
Операционная система обычно хранится во внешней памяти компьютера — на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ.
Этот процесс называется загрузкой операционной системы.
В функции операционной системы входит:
- осуществление диалога с пользователем;
- ввод-вывод и управление данными;
- планирование и организация процесса обработки программ;
- распределение ресурсов (оперативной памяти и кэша, процессора, внешних устройств);
- запуск программ на выполнение;
- всевозможные вспомогательные операции обслуживания;
- передача информации между различными внутренними устройствами;
- программная поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).
В зависимости от количества одновременно обрабатываемых задач и числа пользователей, которых могут обслуживать ОС, различают четыре основных класса операционных систем:
-
1. однопользовательские однозадачные, которые поддерживают одну клавиатуру и могут работать только с одной (в данный момент) задачей;
2. однопользовательские однозадачные с фоновой печатью, которые позволяют помимо основной задачи запускать одну дополнительную задачу, ориентированную, как правило, на вывод информации на печать. Это ускоряет работу при выдаче больших объёмов информации на печать;
3. однопользовательские многозадачные, которые обеспечивают одному пользователю параллельную обработку нескольких задач. Например, к одному компьютеру можно подключить несколько принтеров, каждый из которых будет работать на «свою» задачу;
4. многопользовательские многозадачные, позволяющие на одном компьютере запускать несколько задач нескольким пользователям. Эти ОС очень сложны и требуют значительных машинных ресурсов.
В различных моделях компьютеров используют операционные системы с разной архитектурой и возможностями. Для их работы требуются разные ресурсы. Они предоставляют разную степень сервиса для программирования и работы с готовыми программами.
Операционная система для персонального компьютера, ориентированного на профессиональное применение, должна содержать следующие основные компоненты:
- программы управления вводом/выводом;
- программы, управляющие файловой системой и планирующие задания для компьютера;
- процессор командного языка, который принимает, анализирует и выполняет команды, адресованные операционной системе.
Каждая операционная система имеет свой командный язык , который позволяет пользователю выполнять те или иные действия:
- обращаться к каталогу ;
- выполнять разметку внешних носителей;
- запускать программы;
- . другие действия.
Анализ и исполнение команд пользователя, включая загрузку готовых программ из файлов в оперативную память и их запуск, осуществляет командный процессор операционной системы. Для управления внешними устройствами компьютера используются специальные системные программы — драйверы . Драйверы стандартных устройств образуют в совокупности базовую систему ввода-вывода ( BIOS ), которая обычно заносится в постоянное ЗУ компьютера.
Источник: www.examen.ru