Файл: Функции операционных систем персональных компьютеров (История операционных систем).pdf
Добавлен: 05.04.2023
Просмотров: 89
Скачиваний: 2
ВВЕДЕНИЕ
Современные компьютерные системы из множества компонентов, таких как центральный процессор, оперативная память, накопительных устройств, клавиатура, монитор, принтер, сетевой интерфейс и многих других. Написание программного обеспечения, которое бы следило за всеми компонентами, корректно использовало их и при всем это оптимально работающего, представляет собой задачу крайне трудную. Поэтому компьютерные системы оснащаются специальным уровнем программного обеспечения, которое называется операционной системой. Операционные системы предназначены для управления всеми устройствами, подключенными к компьютеру, эффективного управления ресурсами системы и предоставления пользователю удобного и понятного интерфейса для работы.
Аппаратная составляющая компьютера достаточно сложно организованна чтобы в работе с ней мог разобраться рядовой пользователь. Для работы ранних вычислительных машин требовались целый группы специалистов, в состав которых входил программисты, операторы электронных вычислительных систем и технический обслуживающий персонал, для поддержания работоспособности вычислительной машины. Операционные системы призваны скрыть всю сложность аппаратной составляющей и предоставить пользователю удобный интерфейс для работы с машиной. Поэтому среди все системных программ, с которыми приходится сталкиваться пользователю, операционные системы занимают особое место.
При включении компьютера, первой в оперативную память загружается операционная система, которая служит платформой и средой для выполнения других системных и прикладных программ. Она является обязательной составляющей современной вычислительной машины, какие бы задачи на ней не выполнялись.
Помимо пользователей компьютеров, операционный системы заметно упрощают жизнь разработчикам программного обеспечения. Она берет на себя большую часть рутинных задач, также связанных с аппаратной составляющей, предоставляя разработчикам стандартизированный интерфейс к операциям, выполняемым на уровне «железа». Таким образом многим разработчикам прикладных программ в работе не всегда необходимо думать об аппаратной составляющей компьютеров, на которых будет выполнятся их программа, пользуясь предоставляемым интерфейсом операционной системы. Что значительно упрощает и ускоряет разработку. Стоит отметить, что это не всегда относиться к разработке системных приложений.
1. Характеристика операционных систем
1.1. Определение операционной системы
Операционная система (ОС) – это совокупность программ, обеспечивающие организацию вычислительного процесса на электронно-вычислительной машине (ЭВМ).
Операционная система предназначена для того, чтобы скрыть от пользователя сложности работы ЭВМ на аппаратном уровне. Она состоит из уровня программного обеспечения, который частично избавляет от необходимости общения с аппаратурой напрямую, вместо этого предоставляя пользователю более удобную систему команд. Операционная система является посредником между приложениями, утилитами и пользователями, с одной стороны, и аппаратным обеспечением – с другой.
Операционная система предоставляет пользователю базовый набор инструментов и среду для хранения данных. Каждый пользователь ОС использует в своей работе инструменты, предоставляемые либо самой операционной системой, либо работающими под её управлением.
Выполнение заданий в большинстве ОС производится командным интерпретатором. Пользователю предоставляется некоторый интерфейс общения с командным интерпретатором, команды которого вводятся с клавиатуры, а результат выводиться на экран. Подобный интерфейс ассоциируется с понятием терминал – совокупность устройства ввода и устройства вывода. В настоящий момент более распространённым вариантом общения пользователя с ОС является графический интерфейс пользователя (GUI).
Все операционные системы обеспечивают пакетный и диалоговый режим работы.
В пакетном режиме работы операционная система автоматически исполняет заданную пользователем последовательность команд.
В диалоговом режиме работы операционная система находиться в ожидании команды пользователя, получив её, приступает к исполнению, а после завершения возвращает отклик и ждет очередной команды. Диалоговый режим работы основан на использовании прерываний. Прерыванием называется способность операционной системы прерывать выполнение текущей задачи и отреагировать на события, вызванные пользователем с помощью управляющих устройств.
1.2. История операционных систем
История развития операционных систем насчитывает уже много лет. Так как операционные системы появились и развивались в процессе конструирования компьютеров, то эти события исторически тесно связанны.
Первый цифровой компьютер был изобретен английским математиком Чарльзом Бэббиджем. Большую часть жизни он пытался создать свою «аналитическую машину», но так и не смог заставить работать её должным образом. Бэббидж понимал, что для своей машины ему необходимо программное обеспечение, поэтому он нанял математика Аду Лавлейс, она и стала первым в мире программистом.
Примерно в середине 1940-х Говард Айкен в Гарварде, Джон фон Нейман в Институте углубленного изучения в Принстоне и многие другие продолжили работу по созданию вычислительных машин. В те времена каждую отдельную машину разрабатывала, строила и программировала одна команда. Все программирование выполнялось на абсолютно машинном языке, управление основными функциями машины осуществлялось просто при помощи соединения коммутационных панелей проводами.
В середине 50-х изобретение транзисторов радикально изменило все, компьютеры стали достаточно надежны. Чтобы выполнить программу, программист должен был записать её на бумаге (на фортране или ассемблере), затем перенести на перфокарты и передать их оператору машины, для дальнейшей обработки.
В 60-х фирма IBM выпустила серию машин IBM/360. 360-е были серией программно-совместимых машин. Для этих машин была разработана операционная система OS/360, но из-за больших амбиций разработчиков и недостатка времени, она была близка к провалу. Несмотря на множество недостатки, OS/360 на самом деле неплохо удовлетворяла требования большинства клиентов.
В 70-х была разработана операционная система UNIX, оказавшая огромное влияние на развитие операционных систем. Её характерной особенностью был модельный дизайн.
В 90-х компания Microsoft выпускает первую версию операционной системы Windows NT. В её задачи входило не только использование на домашнем компьютере, в отличии от предыдущих версий Windows, но и обеспечение работы предприятий и корпоративных систем.
1.3. Типы операционных систем
Развитие компьютеров привело к появлению множества операционных систем. Для различных моделей компьютеров разрабатываться индивидуальные операционные системы, кроме того для одной модели возможно наличие нескольких различных ОС. Операционные системы различают по типам: ОС мэйнфреймов, серверные, многопроцессорные, для персональных компьютеров, реального времени, встроенные, операционные системы для смарт-карт.
Операционные системы для мэйнфреймов в основном ориентированы на обработку множества одновременных заданий, большинству из которых требуется огромное количество операций ввода-вывода. Мэйнфреймы отличаются от персональных компьютеров своими возможностями ввода-вывода. Нередко встречаются мэйнфреймы с тысячью дисков и терабайтами данных. Мэйнфреймы могут служить в качестве мощных веб-серверов, серверов для крупных электронно-коммерческих сайтов, серверов для транзакций в бизнесе и т.д. ОС мэйнфреймов должна уметь отвечать на сотни или тысячи запросов в секунду.
Серверные операционные системы работают на серверах, которые представляют собой или очень большие персональные компьютеры, или рабочие станции, или мэйнфреймы. Они должны одновременно обслуживать множество пользователей и позволять им делить между собой программные и аппаратные ресурсы. Обычно, на серверах хранятся веб-страницы или веб-приложения и обрабатываться запросы. Windows 2000 и UNIX являются типичными серверными операционными системами.
Все более часто применяемый способ увеличения мощности компьютеров заключается в соединении нескольких центральных процессоров в одной системе. В зависимости от вида соединения процессоров и разделения работы такие системы называются параллельными компьютерами, мультикомпьютерами или многопроцессорными системами. Для них требуется специальные операционные системы, но зачастую такие операционные системы представляют собой варианты серверных операционных систем со специальными возможностями связи.
Работа операционных систем для персональных компьютеров заключается в предоставлении удобного интерфейса для одного пользователя. Такие системы широко используются для работы с текстом, электронными таблицами, доступа в Интернет и других подобных задач. Наиболее яркие примеры это Windows 8, Windows 10, macOS и Linux. ОС для персональных компьютеров очень широко распространены и большинство пользователей ограничиваются работой только с ними.
Еще один вид операционной системы – это системы реального времени. Главным параметром таких систем является время. Например, в системах управления производством компьютеры, работающие в режиме реального времени, собирают данные о промышленном процессе и используют их для управления машинами на фабрике. Часто такие процессы должны удовлетворять жестким временным требованиям. Так, если автомобиль передвигается по конвейеру, то каждое действие должно быть осуществлено в строго определенный момент времени. Если некоторое действие должно произойти в конкретный момент времени, мы имеем дело с жесткой системой реального времени. Существует и другой вид: гибкая система реального времени, в которой допускается случающиеся время от времени пропуски сроков выполнения операции.
Встроенные операционные системы управляют действиями устройств, которые обычно не считаются компьютерами, например, в телевизорах, холодильниках, стиральных машинах, мобильных телефонах, смартфонах и подобных устройствах. Они часто обладают теми же самыми характеристиками, что и системы реального времени, но при этом особый размер, память и ограничения мощности, что выделяет их в отдельный тип.
Самые маленькие операционные системы работают на смарт-картах, представляющих собой устройства небольшого размера, содержащие центральный процессор. На такие операционные системы накладываются крайне жестокие ограничения по мощности процессора и памяти. Некоторые из них могут управлять только одной операцией, например, электронным платежом, но другие операционные системы на тех же смарт-картах выполняют сложные функции. Чаще всего такие устройства являются патентованными системами.
2. Предназначение и функции операционных систем
Основные функции операционной системы сводятся к управлению ресурсами компьютера, в первую очередь оперативной и энергонезависимой памятью и временем центрального процессора, но также и периферийными устройствами. Управление заключается в том, что прикладная программа запрашивает у ОС ресурсы, а система находит и предоставляет их программе – либо сообщает, что данный ресурс недоступен.
Некоторые системы останавливаются на том, что только распределяют ресурсы, т.е. отслеживают занят ресурс или свободен, и обрабатывают заявки на выделение и освобождение ресурса. Другие системы гарантируют, что пользовательская задача обращается только к выделенным ей ресурсам, а не к чужим. Обеспечение этих гарантий необходимо для защиты пользовательских программ друг от друга – как от ошибок в программах, так и от злоумышленных действий пользователей. Но в большинстве случаев такие гарантии не могут быть обеспеченны только программными средствами, они так же требуют специальной поддержки со стороны центрального процессора.
Некоторые системы также предоставляют отдельным задачам или группам задач гарантии, что эта задача всегда будет получать определенное количество ресурсов. Потребность в таких гарантиях наиболее очевидна для многопользовательских систем, совместно используемых несколькими организациями – при этом доля ресурсов, предоставляемых задачам каждой из организаций, должна быть пропорциональна доле средств, которые эта организация внесла в приобретение системы или платит за её эксплуатацию.
По современным представлениям ОС должна уметь следующее.
- Обеспечивать загрузку пользовательских программ в оперативную память и их использование.
- Обеспечивать управление памятью. В простейшем случае это указание загруженной программе адреса, на котором кончается память, доступная для использования программой, и начинается память, занятая самой операционной системой. В многопроцессных системах это сложная задача управления системными ресурсами.
- Обеспечивать работу с устройствами долговременной памяти, такими как магнитные диски, оптические диски, флэш-память и т.д. Обычно ОС управляет свободным пространством на этих носителях и структурирует пользовательские данные в виде файловой системы.
- Предоставлять стандартный доступ к различным периферийным устройствам, таким как принтеры, графические планшеты и т.д.
- Предоставлять пользовательский интерфейс. Часть операционных систем ограничивается командной строкой, в то время как другие в основном состоят из графического интерфейса. Встраиваемые системы часто не имеют никакого пользовательского интерфейса.
- Управление файловой системой. Файловая система еще одно ключевое понятие, поддерживаемое всеми операционными системами.