Смекни!
smekni.com

Операционные системы, альтернативные Windows (стр. 2 из 4)

Первый шаг к облегчению общения с машиной был сделан в конце 50-х годов с изобретением пакетной обработки данных. Идея заключалась в том, чтобы собрать полный пакет заданий (колоду перфокарт), перенести их на магнитную ленту, а затем с помощью специальной программы (прообраза современных ОС) последовательно запустить их на выполнение уже без участия оператора. Такая обработка заданий значительно сократила время на вспомогательные действия организации самого процесса вычисления. Людям теперь не приходилось бегать по залу, чтобы передать результаты обработки данных: они теперь выводились на принтер в автономном режиме (т.е. без связи с главным компьютером). Однако имелся и существенный минус: из-за того, что программисты лишились непосредственного доступа к ЭВМ, времени на исправление ошибок в программах уходило гораздо больше.

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

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

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

К середине 70-х годов широкое распространение получают мини-компьютеры. Их архитектура была значительно упрощена, а ресурсы ограничены. Всё это нашло отражение и в ОС для таких компьютеров. Они стали более компактными и значительно приблизились к понятиям о современных ОС. Самой распространенной операционной системой того времени была UNIX, историю развития которой мы будем рассматривать позже.

Настоящей революцией было изобретение в начале 80-х годов кремниевых микросхем и как следствие появление первых персональных компьютеров (ПК). С точки зрения архитектуры ПК ничем не отличались от мини-компьютеров, но стоимость их была намного ниже. Это позволило приобретать их не только университетам, предприятиям или правительственным структурам, но и обычным людям. Популярная тогда ОС UNIX была чересчур сложна для использования непрофессионалами. Стояла задача создания дружественного интерфейса, т.е. предназначенного для пользователя ничего не знающего и не желающего что-либо узнать. Тут - то и появилась всем известная MS-DOS (MicroSoftDiskOperatingSystem). Следует отметить, что изначально MS-DOS имела интерфейс командной строки, который был не слишком удобен. И уже много позже была создана графическая среда для MS-DOS, названная Windows, которая впоследствии сформировалась в самостоятельную ОС. Она - то и воплотила идею графического интерфейса, состоящего из окон, значков, различных меню и мыши.

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


2. Альтернативы Windows

2.1 ОС UNIX

2.1.1 История развития

Изначально UNIX была разработана Кеном Томпсоном – сотрудником фирмы BellLaboratories в 1969 году как многозадачная система для миникомпьютеров и мэйнфреймов (огромных компьютеров размером с комнату).

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

В 1974 году UNIX была передана университетам для «образовательных целей». Причем предоставлялась она с полным комплектом исходных текстов, что предоставляла возможность владельцам без конца подправлять её. Так UNIX нашла коммерческое применение и превратилась в одну из наиболее распространенных ОС. Единственной проблемой было то, что каждый производитель добавлял свои нестандартные усовершенствования, поэтому очень долгое время не могли написать пакет программ для UNIX, чтобы их можно было запустить в любой её версии. Решением этой проблемы стало создание стандарта POSIX, который вобрал в себя наиболее общие процедуры, присущие большинству версий UNIX. Это несколько упростило ситуацию и внесло некое единство в разработку версий UNIX.

На сегодняшний день существует огромное количество клонов системы UNIX, включая Linux, MINIX, SystemV, Solaries, XENIX, но во всех этих ОС сохранены основные принципы реализации алгоритмов, структуры данных и системных вызовов.

Наиболее интересна из перечисленных ОС Linux. Особенностью этого клона UNIX является её бизнес-модель: это свободно распространяемое ПО. В отличие от Windows, Mac OS и коммерческих UNIX-подобных систем, Linux не имеет географического центра разработки. Нет и организации, которая владела бы этой системой. Программы для Linux — результат работы тысяч проектов. Многие проекты объединяют хакеров со всего света, которые знакомы только по переписке. Создать свой проект или присоединиться к уже существующему может любой и, в случае успеха, результаты работы станут известны миллионам пользователей. Пользователи принимают участие в тестировании свободных программ, общаются с разработчиками напрямую, что позволяет быстро находить и исправлять ошибки и реализовывать новые возможности. Такой подход определяет экономическую эффективность и популярность Linux. Сегодня данная ОС используется во многих устройствах, начиная от мобильных телефонов, маршрутизаторов и заканчивая беспилотными военными аппаратами.

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

2.1.2 Основные преимущества и недостатки

Основные достоинства UNIX были изначально заложены в идее, которой следовали при её создании. «Операционная система должна опираться на небольшое число не связанных с конкретной аппаратурой концепций, в совокупности обеспечивающих мобильную среду разработки и выполнения приложений».[5] Исходя из этого, можно выделить два основных «плюса» ОС UNIX: простота и мобильность. Это, пожалуй, главное, что отличает её от других ОС.

Под простотой понимается то, что UNIX, благодаря компактности ядра, нетребовательна к ресурсам компьютера (в отличие от той же самой Windows). Кроме этого, UNIX содержит значительно ряд других преимуществ.

Во-первых, упрощённую файловую модель, которая позволяет создавать неограниченное число подкаталогов на жестком диске.

Во-вторых, в ней используется всего шесть основных команд. Операция порождения "fork". Выполняя "fork", процесс создает свою точную копию. Таким образом вы получаете две идентичные копии. Порожденная копия чаще всего выполняет другой процесс - заменяет себя новой программой. Это вторая базовая операция. Оставшиеся четыре вызова - open (открыть), close (закрыть), read (читать) и write (писать) - предназначены для доступа к файлам. Эти шесть системных вызовов представляют собой простые операции, из которых и состоит Unix. Конечно же существует огромное количество других команд, но зная эти пять, вы сможете без труда выполнять основные операции в среде UNIX.

В-третьих, значительному упрощению UNIX послужило использование достаточно развитого командного языка в базовом интерфейсе системы. Даже сегодня, с появлением многочисленных графических оболочек (например, XWindowSystem), найдется немало пользователей, которые предпочитают первичный интерфейс командной строки.

Под мобильностью UNIX понимается то, что её можно использовать на разных аппаратных платформах. Кроме этого, существует возможность запуска программ сразу несколькими пользователями с одной машины, что облегчает создание сетей. Кстати, благодаря именно этому принципу многотерминальности UNIXсыграла большую роль в развитии сети Интернет.