Разбираемся, как работают операционные системы
Linux, Windows, Mac OS? Зачем они нужны? Понимание того, как работают операционные системы, поможет создавать качественные приложения.
Есть несколько причин, почему программистам стоит знать, как работают операционные системы. Одна из них – чтобы понимать, как работают программы. Представьте: вы пишете код, который кажется рабочим, но программа тормозит. Что делать? Можно попробовать разобраться с ограничениями операционной системы, но вы ведь не умеете!
Если стремитесь построить карьеру программиста, стоит понять, как работают операционные системы. Например, можно изучить курс «Введение в операционные системы» от Georgia Tech. В нем рассказывается, как работают ОС: механизмы работы, параллельное программирование (потоки и синхронизация), взаимодействие между процессами, распределённые ОС.
Осветим 10 наиболее важных принципов, о которых говорилось в курсе Udacity, и разберемся, как же работают операционные системы.
Разбор понятия
Операционная система — посредник между аппаратной частью компьютера с одной стороны и программным обеспечением — с другой. Иначе говоря, это средство управления компьютером. С ее помощью он понимает, какие задачи вы ему ставите и каким способом их выполнять.
Операцонка хранится во внешней памяти компа — на жестком диске, ну или на SSD. Когда вы запускаете железо, она считывается с памяти харда и частично размещается в оперативной.
Важные характеристики
Основные критерии современных операционок:
- Используют файловые системы, то есть владеют универсальным механизмом доступа к информации;
- Являются многопользовательскими — можно создать несколько профилей для разных людей на одном компьютере;
- Отличаются многозадачностью — понимают, как разделять время для выполнения поставленных вами задач.
Главные компоненты
Чтобы система могла разделять полномочия и обрабатывать большое количество задач, выстраивается определенная иерархия привилегий среди ее основных компонентов. В их роли выступают:
- Ядро — отвечает за выполнение процессов, распределяя на них ресурсы системы.
- Драйверы устройств — программы, помогающие системе распознавать установленные в компе девайсы и работать с ними.
- Сетевая и файловая подсистемы.
- Системные библиотеки — набор программ, тоже участвующих в выполнении задач.
- Оболочка с утилитами (ей ещё называют графическим интерфейсом) — интерфейс с определенным комплектом встроенных приложений.
Windows – это самая распространенная ОС на земле
Все ругают семейство этих операционных систем за «прожорливость» к ресурсам компьютера, низкую стабильность работы и утомляющую загрузку обновлений. Тем не менее этой ОС пользуются более 90% пользователей. И этому есть объяснение.
У Windows есть масса преимуществ перед конкурентами, приведем некоторые из них:
- надежная поддержка железа (видеокарт, аудиокарт, принтеров, видеокамер и т.д.);
- легкость в установке приложений и программ (программа скачивается, а затем устанавливается, кликнув два раза мышкой по установщику);
- дружелюбный интерфейс, использовать ОС в быту легко, освоит и ребенок (интуитивно понятный);
- большой выбор программ для windows (игры, графические и текстовые редакторы, антивирусы и т.д.).
Здесь перечислены основные достоинства, они дают объяснение, почему пользователи выбирают эту ОС.
Но существуют и некоторые минусы:
- долгая загрузка ОС;
- постоянные перезагрузки и необходимость установки обновлений (чтобы обеспечивать безопасность);
- возможная потеря данных или работоспособности компьютера при попадании вируса в систему.
Как видим, преимуществ больше, а главное заключается в удобстве.
Каждый пользователь без проблем способен в ней разобраться за пару часов, в этом секрет популярности.
Положение ОС в многоуровневой иерархии организации компьютера¶
Современный компьютер можно представить в виде иерархии уровней (от двух и более), где на каждом уровне выделяются свои абстракции и набор возможных функций.
Рис. 2. Основные уровни устройства ПК
Операционная система является одним из таких уровней и представляет собой интерфейс («прослойку») между пользователем ресурсов компьютера и самими ресурсами, управляющий взаимодействиями как между пользователь-ресурс, так и пользователь-пользователь, устройство-устройство.
В целом, общей схемой это можно отобразить так:
Рис. 3. Место ОС в компьютерной системе
- App — пользователь ресурсов;
- Hardware — оборудование;
- Proc — Процессор;
- Memory — Оперативная память;
- I/O — Устройства ввода/вывода;
Интерфейс — набор правил и средств взаимодействия двух систем. Иными словами способ взаимодействия.
Kernel space — адресное пространство ядра ОС, в котором процессы имеют привилегированный доступ к ресурсам компьютера и другим процессам.
User space — адресное пространство, отведённое для пользовательских процессов (приложений), то есть не имеющих привилегированный доступ к ресурсам.
Apple Mac OS X
Mac OS представляет собой линейку операционных систем, созданных компанией Apple. Она поставляется предустановленной на всех новых компьютерах Macintosh или Mac. Последние версии этой операционной системы известны как OS X. А именно Yosetime (выпущенный в 2014 году), Mavericks (2013), Mountine Lion (2012), Lion (2011), и Show Leopard (2009). Также есть Mac OS X Server, который предназначен для работы на серверах.
По данным общей статистики StatCounter Global Stats, процент пользователей Mac OS X составляет 9,5% рынка операционных систем, по состоянию на сентябрь 2014 года. Это намного ниже чем процент пользователей Windows (почти 90%). Одной из причин этого является то что компьютеры Apple очень дорогие.
Какую операционную систему выбрать
Итак, подведем итоги всего вышеизложенного. Вероятно, стало понятно, что такое ОС.
Операционная система — это главный компонент компьютера и любого подобного ему устройства.
Какую бы операционную систему вы не выбрали, главное, хорошо в ней разобраться, надеемся, что эта статья стала шагом на пути к полному взаимопониманию!
Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru
Эта статья относится к рубрикам:
Комментарии и отзывы (7)
Знаю только Виндовс, причем с 95 и прочими «динозавриками» вплоть до ХР даже и не сталкивался. На сегодняшний день для меня лучше «Десятки» ничего нет, так что вопрос выбора не стоит.
А вот что предшествовало Виндовс 95, я и не помню. Но уверен, что это был какой-то дикий ужас.
Помню, что когда я учился в школе, то года с 1992-93 в программе была информатика, изучали какой-то язык программирования Бейсик. В котором я был полнейший ноль и так и не понял ничего. Что интересно, в 1997-98 годах я уже учился в ВУЗе и вместо того, чтобы обучать нас тонкостям того же Виндовс — долбили этот кошмарный, допотопный Бейсик))
И вот что еще запомнилось, как-то обходились без мышек. Да! Одной клавиатурой со стрелками!
Я помню Basic и это была ничуть не операционная система, а язык программирования. Абсолютно корявый и нефункциональный. Даже на начало девяностых годов. И чего было на нем детей в школе учить, непонятно. Только пугать. Работа хоть на самом корявом виндовз по сравнению с ним. дальше сами понимаете.
Сейчас задумался — интересно, почему Россия не создает свою собственную операционную систему по типу Виндовс? Ведь в стране куча самых опытных программистов, которые уж всяко могут придумать что-то круче американских аналогов.
Ничего нового в этой статье. То, что MacOS работает только на технике Apple, знает и ребенок. Я права?
Тут задали вопрос почему Россия не создает операционную систему. Россия создает и по типу Windows, и по типу linux. Но корнем этих систем всеравно остаётся английский язык. Помните как сказал Задорнов? Английский для передачи информации, а русский передает состояние души. Так русский более эмоциональный язык чем информативный.
Так что если системе придется переводить в код такие выражения как да не-ет, страшно красива, недоперепил, да и многое другое процессор скорее всего сгорит в попытке разобраться что эти выражения обозначают.
Операционные системы для мобильных устройств
На рынке мобильных гаджетов также существует конкуренция между производителями ОС, и также здесь есть свои лидеры. Среди них три основных: Android, IOS, Widows.
Первый Android OS под названием «Astro» компания Google выпустила в 2008 году. Через время были выпущены новые версии, после чего рост популярности данной ОС не прекращался. На сегодняшний день это самая распространенная операционная система. Google Play Market является официальным магазином приложений. Большинство программ на мобильных устройствах поддерживаются именно Android. На базе данной ОС работают практически все марки телефонов, кроме Apple.
Интересные факты об операционных системах
На одном компьютере может быть установлено одновременно несколько операционных систем. В этом случае при включении компьютера вас спросят, какую операционную систему нужно загрузить.
Microsoft Windows и ядро Linux могут быть запущены одновременно на одной и той же машине с помощью специального программного обеспечения CoLinux. В windows 10 уже появилась встроенная подсистема linux.
Для обучения пользователей обращению с мышкой в Microsoft разработали и внедрили в Windows компьютерную версию игры Reversi. Таким образом пользователи привыкали использовать мышь, кликая с её помощью на фишки. Задумайтесь, для чего сделана игра «сапёр»?
На рекламу Windows 95 было потрачено более 300 миллионов долларов.
В Windows нельзя создать папку с названиями con, prn, aux, nul. Это ограничение восходит относят к временам операционной системы MS-DOS. Некоторые слова были зарезервированы для обозначения устройств ввода-вывода, поэтому нельзя создать папки с такими именами.
Линус Торвальдс использовал операционную систему Minix, однако был недоволен многими ограничениями в ней и решил написать свою систему. Когда была выпущена более-менее стабильная версия, интерес Торвальдса к проекту угас, и он был готов его забросить. Но в тот же период он случайно испортил раздел на жёстком диске, где стояла Minix, и вместо её переустановки Торвальдс решил всё-таки закончить начатое. Так благодаря случайности появилось ядро Linux и впоследствии ОС GNU/Linux.
На данный момент более 75% серверов обеспечивающие надежную работу Интернет работают под управлением Linux.
MenuetOS — самая маленькая операционная система. Написана на ассемблере и помещается на дискету.