• II. Основные принципы и правила служебного поведения государственных гражданских служащих Федеральной налоговой службы
  • II. Основные цели и задачи Программы, срок и этапы ее реализации, целевые индикаторы и показатели
  • II. Основные этапы развития физики Становление физики (до 17 в.).
  • III.2.1) Понятие преступления, его основные характеристики.
  • История развития операционных систем насчитывает уже более половины века и неразрывно связана с техническим уровнем развития электроники, материаловедения, математического аппарата, всех тех дисциплин науки и техники, без которых немыслимо построить вычислительный комплекс. Поэтому этапы развития операционных систем тесно связаны с определенными этапами научно-технического прогресса в данной области.

    Первый период (1945 – 1955 гг.)

    Первые электронные вычислительные машины появились после второй мировой войны. В 40-х были созданы первые вычислительные устройства, основанные на лампах, и появился принцип программы, хранящейся в памяти машины (Говард Айкен из Гарвардского университета, Джон фон Нейман из Института углубленного изучения в Принстоне и другие, июнь 1945 г.). Вычислительные машины были громоздкими, занимающими несколько комнат. Их конструкция предполагала использование нескольких тысяч электронных ламп. Такой же громоздкой была и работа с вычислительной машиной. Одна группа людей одновременно выполняла их обслуживание, эксплуатацию и программирование. Такие машины вполне можно отнести к категории экспериментальных, и выполняемые на них вычисления, скорее, носили пробный (экспериментальный) характер. Программирование выполнялось исключительно на машинном языке, т.е. последовательным вводом с клавишного пульта кодов команд и данных, и ни о каком системном или прикладным программным обеспечении речи не шло. Программа загружалась в память машины с помощью коммутационной панели либо с колоды перфокарт. Существующие устройства ввода/вывода не были стандартизированы и представляли собой примитивные пульты с набором переключателей, кнопок и индикаторов. Всеми ресурсами вычислительной машины распоряжался обслуживающий ее персонал, который вручную запускал программу на исполнение, выделял ей необходимый объём памяти и визуально контролировал весь процесс вычислений. Вычислительная система выполняла одновременно только одну операцию (ввод-вывод или собственно вычисления). Отладка программ велась с пульта управления с помощью изучения состояния памяти и регистров машины. Однако уже в этот период времени были созданы библиотеки математических и служебных программ, к которым программист мог обращаться при выполнении основной программы.



    В конце этого периода появляется первое системное программное обеспечение: в 1951–1952 гг. возникают прообразы первых компиляторов с символических языков (Fortran и др.), а в 1954 г. Nat Rochester разрабатывает Ассемблер для IBM-701.

    Существенная часть времени уходила на подготовку запуска программы, а сами программы выполнялись строго последовательно. Такой режим работы называется последовательной обработкой данных. В целом первый период характеризуется крайне высокой стоимостью вычислительных систем, их малым количеством и низкой эффективностью использования. Так, ЭВМ UNIVAC I, разработанная в марте 1951 года, содержала 5000 ламп и могла работать со скоростью 1000 операций в секунду. Стоимость такой машины составляла 159000 долларов США.

    Второй период (1955 г. – начало 60-х).

    В середине 50-х годов ХХ века начался новый период в развитии вычислительной техники. На смену реле и лампам пришли полупроводниковые транзисторы. Это позволило увеличить производительность процессоров, резко возрос объём оперативной и внешней памяти, появились принципиально новые устройства сопряжения. В целом вычислительная система стала более сложной, что изменило отношение к ней со стороны операторов. Возникла необходимость в автоматизации вычислительных работ и, как следствие, упрощение самого процесса программирования. В эти годы появились первые алгоритмические языки и сопутствующее им специальное программное обеспечение – трансляторы. Среди языков того времени наибольшее распространение получили АЛГОЛ и Фортран.



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

    Понятно, что как бы быстро и надежно не работали операторы, производительность устройств вычислительной машины выше. Следовательно, часть времени машина просто простаивает в ожидании очередных действий оператора. Для решения данной проблемы были разработаны первые системы пакетной обработки, которые автоматизировали всю последовательность действий оператора по организации вычислительного процесса. Это были первые системные программы – прообразы современных операционных систем. Система пакетной обработки представляла типовой набор директив, включающий признак начала отдельной работы, вызов транслятора, вызов загрузчика, признак начала и конца исходных данных. Для удобства работы с директивами был разработан формализованный язык управления заданиями (прообраз команд DOS). Оператор составляет пакет заданий, которые последовательно запускались на исполнение специальной управляющей программой – монитором. Монитор мог самостоятельно обрабатывать аварийные ситуации и контролировать использование оперативной памяти. Пакет обычно представлял собой набор перфокарт, содержимое которых последовательно вводилось в машину с помощью специального устройства. Отметим, что устройство позволяло устанавливать в него несколько пакетов перфокарт, отсюда, собственно, и название данного набора директив – системы пакетной обработки.

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

    Компьютеры второго поколения использовались главным образом для научных и технических расчетов, таких, например, как решение дифференциальных уравнений. Программирование велось на Фортране или Ассемблере, а типичными операционными системами служили FMS (Fortran Monitor System) и IBSYS (операционная система компании IBM для компьютера IBM 7094).

    Третий период (начало 60-х – 1980 г.).

    Появление в 1965-1975 годах вычислительных машин на базе интегральных схем открыло новую страницу в развитии вычислительной техники. Новые машины имели сложную развитую архитектуру, наиболее приближённую к архитектуре современных компьютеров. К этому времени полностью определились с основным периферийным оборудованием. Типичными представителями таких машин являются серии ЭВМ IBM/360 или их отечественные аналоги – ЭВМ семейства ЕС. Так как машины этой серии имели одинаковую структуру и набор команд, то программы, написанные для одного компьютера, могли работать в принципе и на всех других. Еще одним преимуществом серии компьютеров IBM/360 было то, что данные ЭВМ могли использоваться как в научных целях (числовые вычисления для науки и техники), так и для коммерческого использования (сортировка и печать данных). Это предопределило успех фирмы IBM, которая заявила себя мировым лидером на рынке вычислительных машин. Идею семейства совместимых компьютеров стали принимать и другие производители. Операционная система OS/360 была предназначена для работы на всех компьютерах данного семейства машин независимо от того, какое предназначение было у используемого компьютера (расчет прогноза погоды или обычное копирование информации с перфокарт на магнитные ленты).

    Несмотря на то, что операционная система OS/360 была очень громоздкой и сложной (миллионы строк на ассемблере), именно в этот период были реализованы практически все основные механизмы, встраиваемые в современные операционные системы: многозадачность, поддержка многопользовательского режима, виртуальная память, файловая система и т.п. Из направления прикладной математики, связанного с программированием, выделяется отдельная отрасль - системное программирование. В условиях резко возросших вычислительных мощностей выполнение только одного задания в каждый момент времени оказалось малоэффективным. Решение было найдено в мультипрограммировании (многозадачности) – способе организации вычислительного процесса, при котором в оперативную память загружается несколько задач одновременно, но попеременно выполняющихся на одном процессоре. Мультипрограммирование было реализовано в двух вариантах: в хорошо зарекомендовавшей себя системе пакетной обработки и в системе разделения времени (разработчик – Массачусетсский технологический институт, IBM 7094), благодаря которой у каждого пользователя появился свой диалоговый терминал.

    Использование интегральных схем позволило значительно уменьшить размеры вычислительных машин. Такие ЭВМ стали называть мини-компьютеры (PDP-1, корпорация DEC, 1961 год), и, хотя стоимость их составляла порядка 120 000 долларов США, они были коммерчески успешными и имели хороший спрос. Их стоимость составляла 5% от стоимости ЭВМ IBM 7094, однако, некоторые операции компьютеры серии PDP выполняли с такой же скоростью.

    Именно для компьютеров серии PDP-7 специалист фирмы Bell Labs Кен Томпсон разработал однопользовательскую версию операционной системы MULTICS, которая позже развилась в операционную систему UNIX, у которой затем появились разновидности System V (корпорация AT&T), BSD (Калифорнийский институт Беркли) и другие. Для операционной системы UNIX Кен Томпсон и Денис Ритчи разработали язык C, который до сих пор является лидирующим в области системного программирования. В 1974 году они опубликовали статью “The UNIX Timesharing System” в журнале Commun. of the ACM, благодаря которой система UNIX стала популярной.

    ПОНЯТИЕ ОПЕРАЦИОННОЙ СИСТЕМЫ

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

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

    В программном обеспечении ВС операционная система занимает основное положение, поскольку осуществляет планирование и контроль всего вычислительного процесса. Любая из компонент программного обеспечения обязательно работает под управлением ОС.

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



    Этапы развития операционных систем

    Первый период (1945 -1955)

    Известно, что компьютер был изобретен английским математиком Чарльзом Бэбиджем в конце восемнадцатого века. Его "аналитическая машина" так и не смогла но-настоящему заработать, потому что технологии того времени не удовлетворяли требованиям по изготовлению деталей точной механики, которые были необходимы для вычислительной техники. Известно также, что этот компьютер не имел операционной системы.

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

    Второй период (1955 - 1965)

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

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

    Третий период (1965 - 1980)

    Следующий важный период развития вычислительных машин относится к 1965-1980 годам. В это время в технической базе произошел переход от отдельных полупроводниковых элементов типа транзисторов к интегральным микросхемам, что дало гораздо большие возможности новому, третьему поколению компьютеров.

    Для этого периода характерно также создание семейств программно-совместимых машин. Первым семейством программно-совместимых машин, построенных на интегральных микросхемах, явилась серия машин IBM/360. Построенное в начале 60-х годов это семейство значительно превосходило машины второго поколения по критерию цена/произ-водительность. Вскоре идея программно-совместимых машин стала общепризнанной.

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

    Однако, несмотря на необозримые размеры и множество проблем, OS/360 и другие ей подобные операционные системы машин третьего поколения действительно удовлетворяли большинству требований потребителей. Важнейшим достижением ОС данного поколения явилась реализация мультипрограммирования. Мультипрограммирование - это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются несколько программ. Пока одна программа выполняет операцию ввода-вывода, процессор не простаивает, как это происходило при последовательном выполнении программ (однопрограммный режим), а выполняет другую программу (многопрограммный режим). При этом каждая программа загружается в свой участок оперативной памяти, называемый разделом.

    Другое нововведение - спулинг (spooling). Спулинг в то время определялся как способ организации вычислительного процесса, в соответствии с которым задания считывались с перфокарт на диск в том темпе, в котором они появлялись в помещении вычислительного центра, а затем, когда очередное задание завершалось, новое задание с диска загружалось в освободившийся раздел.

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

    Базовые сетевые утилиты.

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

    В целях обеспечения безопасности при работе на удаленном компьютере стоит использовать утилиту ssh (secure shell). Конечно, пользователь должен быть зарегистрирован в той системе, где он собирается работать. В окне эмулятора терминала пользователь должен ввести команду.

    ssh user_login@host

    где login - регистрационное имя пользователя на машине host. Другой вариант таков:

    ssh host -l user_login

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

    Например, определение среднего значения пяти ячеек можно описать формулой: =(A1 + A2 + A3 + A4 + A5)/5, а можно специальной функцией СРЗНАЧ, которая сократит выражение до следующего вида: СРЗНАЧ(А1:А5). Как видите, что вместо ввода в формулу всех адресов ячеек можно использовать определенную функцию, указав ей в качестве аргумента их диапазон.

    Для работы с функциями в Excel на ленте существует отдельная закладка Формулы, на которой располагаются все основные инструменты для работы с ними

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

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

    В качестве аргумента может выступать конкретное число, самостоятельная ссылка на ячейку, целая серия ссылок на значения или ячейки, а так же диапазон ячеек. При этом у одних функций аргументы – это текст или числа, у других – время и даты.

    Многие функции могут иметь сразу несколько аргументов. В таком случае, каждый из них отделяется от следующего точкой с запятой. Например, функция =ПРОИЗВЕД(7; A1; 6; B2) считает произведение четырёх разных чисел, указанных в скобках, и соответственно содержит четыре аргумента. При этом в нашем случае одни аргументы указаны явно, а другие, являются значениями определенных ячеек.

    Так же в качестве аргумента можно использовать другую функцию, которая в этом случае называется вложенной. Например, функция =СУММ(A1:А5; СРЗНАЧ(В5:В10)) суммирует значения ячеек находящихся в диапазоне от А1 до А5, а так же среднее значение чисел, размещенных в клетках В5, В6, В7, В8, В9 и В10.

    У некоторых простых функций аргументов может не быть вовсе. Так, с помощью функции =ТДАТА() можно получить текущие время и дату, не используя никаких аргументов.

    Далеко не все функции в Ecxel имеют простое определение, как функция СУММ, осуществляющая суммирование выбранных значений. Некоторые из них имеют сложное синтаксическое написание, а так же требуют много аргументов, которые к тому же должны быть правильных типов. Чем сложнее функция, тем сложнее ее правильное составление. И разработчики это учли, включив в свои электронные таблицы помощника по составлению функций для пользователей – Мастер функций.

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

    Так же кнопку Вставить функцию вы найдете на ленте сверху в группе Библиотека функций во вкладке Формулы. Еще одним способом вызова мастера функций является сочетание клавиш Shift+F3.

    После открытия окна помощника, первое, что вам придется сделать – это выбрать категорию функции. Для этого можно воспользоваться полем поиска или ниспадающим списком.

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

    Сделав необходимый выбор, щелкните по кнопке ОК, после чего появится окно Аргументы функции.

    Диаграммы

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

    Диаграмму в Excel можно разместить либо на том же листе, где уже находится таблица, и в таком случае она называется «внедренной», либо на отдельном листе, который станет называться «лист диаграммы».

    Для создания диаграммы на основе табличных данных сначала выделите те ячейки, информация из которых должна быть представлена в графическом виде. При этом внешний вид диаграммы зависит от типа выбранных данных, которые должны находиться в столбцах или строках. Заголовки столбцов должны находиться над значениями, а заголовки строк – слева от них.\

    Затем, на ленте во вкладке Вставка в группе Диаграммы выберите нужный тип и вид диаграммы. Что бы увидеть краткое описание того или иного типа и вида диаграмм, необходимо задержать на нем указатель мыши

    В правом нижнем углу блока Диаграммы располагается небольшая кнопка Создать диаграмму, с помощью которой можно открыть окно Вставка диаграммы, отображающее все виды, типы и шаблоны диаграмм.

    Так же обратите внимание, на появление дополнительной закладки на ленте Работа с диаграммами, содержащая еще три вкладки: Конструктор, Макет и Формат.

    На вкладке Конструктор можно изменить тип диаграммы, поменять местами строки и столбцы, добавить или удалить данные, выбрать ее макет и стиль, а так же переместить диаграмму на другой лист или другую вкладку книги.

    На вкладке Макет располагаются команды, позволяющие добавлять или удалять различные элементы диаграммы, которые можно легко форматировать с помощью закладки Формат.

    Вкладка Работа с диаграммами появляется автоматически всякий раз, когда вы выделяете диаграмму и исчезает, когда происходит работа с другими элементами документа.

    Понятие операционной системы. Основные этапы развития операционных систем.

    Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

    Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

    Размещено на http://www.allbest.ru/

    Размещено на http://www.allbest.ru/

    ДЕПАРТАМЕНТ ОБРАЗОВАНИЯ АДМИНИСТРАЦИИ ВЛАДИМИРСКОЙ ОБЛАСТИ

    ГБОУ СПО ВО «Владимирский политехнический колледж»

    По предмету: «Информатика»

    На тему: «Эволюция операционных систем компьютеров различных типов»

    Выполнил: студент гр. ПКС-312

    Алексеев. О.О.

    Введение

    1. Назначение операционных систем

    2. Типы операционных систем

    3. История развития ОС

    3.1 Развитие первых ОС

    3.2 Операционные системы и глобальные сети

    3.3 Операционные системы мини-компьютеров

    3.4 Развитие операционных систем в 80-е, 90-е года

    Заключение

    Литература

    Введение

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

    1 . Назначение операционных систем

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

    Операционная система (ОС) - комплекс программ, которые обеспечивают управление аппаратурой ЭВМ, планирование эффективного использования её ресурсов и решение задач по заданиям пользователей.

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

    Ресурсом является всякий объект, который может распределяться операционной системой между вычислительными процессами в ЭВМ. Различают аппаратные и программные ресурсы ЭВМ. К аппаратным ресурсам относятся микропроцессор (процессорное время), оперативная память и периферийные устройства; к программным ресурсам - доступные пользователю программные средства для управления вычислительными процессами и данными. Важнейшими программными ресурсами являются программы, входящие в систему программирования; средства программного управления периферийными устройствами и файлами; библиотеки системных и прикладных программ; средства, обеспечивающие контроль и взаимодействие вычислительных процессов (задач).

    Операционная система распределяет ресурсы в соответствии с запросами пользователей и возможностями ЭВМ и с учетом взаимодействия вычислительных процессов. Функции ОС также реализуются рядом вычислительных процессов, которые сами потребляют ресурсы (память, процессорное время и др.) Вычислительные процессы, относящиеся к ОС, управляют вычислительными процессами, созданными по запросу пользователей.

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

    Операционная система является посредником между ЭВМ и её пользователем. Она делает работу с ЭВМ более простой, освобождая пользователя от обязанностей распределять ресурсы и управлять ими. Операционная система осуществляет анализ запросов пользователя и обеспечивает их выполнение. Запрос отражает необходимые ресурсы и требуемые действия ЭВМ и представляется последовательностью команд на особом языке директив операционной системы. Такая последовательность команд называется заданием.

    2 . Типы операционных систем

    Операционная система может выполнять запросы пользователей в пакетном или диалоговом режиме или управлять устройствами в реальном времени. В соответствии с этим различают операционные системы пакетной обработки, разделения времени и диалоговые (табл. 1).

    Таблица 1

    Операционные системы

    Характеристики операционной системы

    Характер взаимодействия пользователя с заданием

    Число одновременно обслуживаемых пользователей

    Обеспечиваемый режим работы ЭВМ

    Пакетной обработки

    Взаимодействие невозможно или ограничено

    Один или несколько

    Однопрограммный или мультипрограммный

    Разделения времени

    Диалоговый

    Несколько

    Мультипрограммный

    Реального времени

    Оперативный

    Многозадачный

    Диалоговая

    Диалоговый

    Однопрограммный

    3. История развития ОС

    3 .1 Развитие первых ОС

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

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

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

    Система прерываний позволяла синхронизировать работу различных устройств компьютера, работающих параллельно и асинхронно, таких как каналы ввода-вывода, диски, принтеры и т.п.

    3 .2 Операци онные системы и глобальные сети

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

    В 1969 году Министерство обороны США инициировало работы по объединению суперкомпьютеров оборонных и научно - исследовательских центров в единую сеть. Эта сеть получила название ARPANET и явилась отправной точкой для создания самой известной ныне глобальной сети - Интернета. Сеть ARPANET объединяла компьютеры разных типов, работавшие под управлением различных ОС с добавленными модулями, реализующими коммуникационные протоколы, общие для всех компьютеров сети.

    В 1974 году компания IBM объявила о создании собственной сетевой архитектуры для своих мэйнфреймов, получившей название SNA (System Network Architecture). Эта многоуровневая архитектура, во многом подобная стандартной модели OSI, появившейся несколько позже, обеспечивала взаимодействие типа «терминал - терминал», «терминал - компьютер» и «компьютер - компьютер» по глобальным связям. Нижние уровни архитектуры были реализованы специализированными аппаратными средствами, наиболее важным из которых является процессор телеобработки. Функции верхних уровней SNA выполнялись программными модулями. Один из них составлял основу программного обеспечения процессора телеобработки. Другие модули работали на центральном процессоре в составе стандартной операционной системы IBM для мэйнфреймов.

    В это же время в Европе велись активные работы по созданию и стандартизации сетей X.25. Эти сети с коммутацией пакетов не были привязаны к какой-либо конкретной операционной системе. После получения статуса международного стандарта в 1974 году протоколы X.25 стали поддерживаться многими операционными системами. С 1980 года компания IBM включила поддержку протоколов X.25 в архитектуру SNA и в свои операционные системы.

    3 .3 Операционные системы мини-комп ьютеров

    К середине 70-х годов широкое распространение получили мини-компьютеры, такие как PDP-11, Nova, HP. Мини-компьютеры первыми использовали преимущества больших интегральных схем, позволившие реализовать достаточно мощные функции при сравнительно невысокой стоимости компьютера.

    Многие функции мультипрограммных многопользовательских ОС были усечены, учитывая ограниченность ресурсов мини-компьютеров. Операционные системы мини-компьютеров часто стали делать специализированными, например только для управления в реальном времени (ОС RT-11 для мини-компьютеров PDP-11) или только для поддержания режима разделения времени (RSX-11M для тех же компьютеров). Эти операционные системы не всегда были многопользовательскими, что во многих случаях оправдывалось невысокой стоимостью компьютеров.

    Важной вехой в истории операционных систем явилось создание ОС UNIX. Первоначально эта операционная система предназначалась для поддержания режима разделения времени в мини-компьютере PDP-7. С середины 70-х годов началось массовое использование ОС UNIX. К этому времени программный код для UNIX был на 90% написан на языке высокого уровня С. Широкое распространение эффективных С-компиляторов сделало UNIX уникальной для того времени ОС, обладающей возможностью сравнительно лёгкого переноса на различные типы компьютеров. Поскольку эта ОС поставлялась вместе с исходными кодами, то она стала первой открытой ОС, которую могли совершенствовать простые пользователи-энтузиасты. Хотя UNIX была первоначально разработана для мини-компьютеров, гибкость, элегантность, мощные функциональные возможности и открытость позволили ей занять прочные позиции во всех классах компьютеров: суперкомпьютерах, мэйнфреймах, мини-компьютерах, серверах и рабочих станциях на базе RISC-процессоров, персональных компьютерах. операционный система пользователь компьютер

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

    Первые локальные сети строились с помощью нестандартного коммуникационного оборудования, в простейшем случае - путём прямого соединения последовательных портов компьютеров. Программное обеспечение также было нестандартным и реализовывалось в виде пользовательских приложений. Первое сетевое приложение для ОС UNIX - программа UUCP (UNIX-to - UNIX Copy program) - появилась в 1976 году и начала распространяться с версией 7 AT&T UNIX с 1978 года. Эта программа позволяла копировать файлы с одного компьютера на другой в пределах локальной сети через различные аппаратные интерфейсы - RS-232, токовую петлю и т.п., а кроме того, могла работать через глобальные связи, например модемные.

    3 .4 Развитие операционных систем в 80 , 90-е года

    К наиболее важным событиям этого десятилетия можно отнести разработку стека TCP/IP, становление Интернета, стандартизацию технологий локальных сетей, появление персональных компьютеров и операционных систем для них.

    Рабочий вариант стека протоколов TCP/IP был создан в конце 70-х годов. Этот стек представлял собой набор общих протоколов для разнородной вычислительной среды и предназначался для связи экспериментальной сети ARPANET с другими «сателлитными» сетями. В 1983 году стек протоколов TCP/IP был принят Министерством обороны США в качестве военного стандарта. Переход компьютеров сети ARPANET на стек TCP/IP ускорила его реализация для операционной системы BSD UNIX. С этого времени началось совместное существование UNIX и протоколов TCP/IP, а практически все многочисленные версии Unix стали сетевыми.

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

    Также широкое распространение получили операционные системы MS-DOS фирмы Microsoft, PC DOS фирмы IBM, Novell DOS фирмы Novell и другие. Первая ОС DOS для персонального компьютера была создана в 1981 г. называлась MS-DOS 1.0. Microsoft приобрела у Seattle Computer Products право на 86 - DOS, адаптировала эту ОС для тогда еще секретных IBM PC и переименовала ее в MS-DOS. В августе 1981 года DOS 1.0 работает с одной 160К односторонней дискетой. Системные файлы занимают до 13 К: для нее требуется 8-К ОЗУ. Май 1982 DOS 1.1 позволяет работать с двухсторонними дискетами. Системные файлы занимают до 14К. Март 1983 Появления DOS 2.0 вместе с IBM PC XT. Созданная заново эта версия имеет почти втрое больше команд чем DOS 1.1. Теперь она дает возможность использовать 10 Mбайт жесткого диска. Древовидную структуру файловой системы и 360-К гибких дисков. Новый 9-секторный формат диска увеличивает ёмкость на 20% по сравнению с 8-секторным форматом. Системные файлы занимают до 41К для работы системы требуется 24-К ОЗУ. Декабрь 1983 Вместе с PCjr появилась система PC-DOS 2.1 фирмы IBM.

    Август 1984. Вместе с первыми IBM PC AT на базе процессора 286 появляется DOS 3.0. Она ориентируется на 1,2 Мб гибкие диски и жесткие диски большей чем раньше емкостью. Системные файлы занимают до 60Кб. Ноябрь 1984. DOS 3.1 поддерживает сети Microsoft системные файлы занимают до 62К. Ноябрь 1985. Появление Microsoft Windows. Декабрь 1985. DOS 3.2 работает с 89-мм дискетами на 720К. Она может адресовать до 32 Мбайт на отдельном жестком диске. Системные файлы занимают до 72К. Апрель 1986. Появление IBM PC Convertihle. Сентябрь 1986. Compaq выпускает первый ПК класса 386. Апрель 1987. Вместе с PS/2 первым ПК фирмы IBM класса 386 появляется DOS 3.3. Она работает с новыми 1.44 Мбайт гибкими дисками и несколькими типами разбития жесткого диска на разделы объемом до 32 Мбайт каждый, что позволяет использовать жесткие диски большой емкостью. Системные файлы занимают до 76 К для работы системы требуется 85К ОЗУ. MS-DOS была наиболее популярна и продержалась 3-4 года. Одновременно IBM объявила о выпуске OS/2. Ноябрь 1987. Начало поставки Microsoft Windows 2.0 и OS/2. Июль 1988 появляется Microsoft Windows 2.1 (Windows/286 Windows/386). Ноябрь 1988. DOS 4.01 включает интерфейс, меню оболочки и обеспечивает разбиение жесткого диска на разделы, объем которых превышает 32 Мбайта. Системные файлы занимают до 108К; для работы системы требуется 75К ОЗУ. Май 1990. Появляется Microsoft Windows 3.0 и DR DOS 5.0. Июнь 1991. MS-DOS 5.0 имеет свои особенности то, что она позволяет эффективно использовать ОП. DOS 5.0 обладает улучшенными интерфейсами меню оболочки, полноэкранным редактором, утилитами на диске и и возможность смены задач. Системные файлы занимают до 118К: для работы системы требуется 60-К ОЗУ, а 45 К можно загрузить в область памяти с адресами старше 1 Мбайт, что освобождает место в обычной памяти для работы прикладных программ MS-DOS 6.0 кроме стандартного набора программ. Имеет в своем составе программы для резервного копирования, антивирусную программу и другие усовершенствования в ОС MS-DOS 6.21 и MS-DOS 6.22.

    Начало 80-х годов связано с ещё одним знаменательным для истории операционных систем событием-появлением персональных компьютеров. С точки зрения архитектуры персональные компьютеры ничем не отличались от класса мини-компьютеров типа PDP-11, но их стоимость была существенно ниже. Персональные компьютеры послужили мощным катализатором для бурного роста локальных сетей. В результате поддержка сетевых функций стала для ОС персональных компьютеров необходимым условием.

    Заключение

    История ОС насчитывает примерно полвека. Она во многом определялась и определяется развитием элементной базы и вычислительной аппаратуры. На данный момент мировая компьютерная индустрия развивается очень стремительно. Производительность систем возрастает, а следовательно возрастают возможности обработки больших объёмов данных. Операционные системы класса MS-DOS уже не справляются с таким потоком данных и не могут целиком использовать ресурсы современных компьютеров. Поэтому в последнее время происходит переход на более мощные и наиболее совершенные операционные системы класса UNIX, примером которых и является Windows NT, выпущенная корпорацией Microsoft.

    Литература

    1. В.Э. Фигурнов IВМ РС для пользователей. Изд. 7-е, перераб. и доп. - М.: ИНФРА-М, 2000. - 640 с.: ил.

    2. Ахметов К.С. Курс молодого бойца. Изд. 5-е, перераб. и доп. - М.: Компьютер Пресс, 1998. - 365 с.: ил.

    3.Системное программное обеспечение./В.М. Илюшечкин, А.Е. Костин Изд. 2-е, перераб. и доп. - М.: Высш. шк., 1991. - 128 с.: ил.

    4. Олифер В.Г. Сетевые операционные системы. СПб.: Питер, 2002.-538 с.

    5. Операционные системы: [Сборник/ Ред.Б.М. Васильев].-М.: Знание, 1990-47 с.: ил.

    Размещено на Allbest.ru

    Подобные документы

      История появления первых операционных систем, мультипрограммные операционные системы для мэйнфреймов. Первые локальные и глобальные сети. Развитие операционных систем в 80-е годы. Построение двумерных графиков в MathCAD, решение систем уравнений.

      контрольная работа , добавлен 11.06.2014

      Особенности современного этапа развития операционных систем. Назначение операционных систем, их основные типы. Операционные системы мини-компьютеров. Принцип работы матричного принтера, проектирование и воспроизведение произвольных символов для них.

      курсовая работа , добавлен 23.06.2011

      Концепция операционных систем: главное назначение, основные функции и типы. Характеристика и оценка возможностей Microsoft Windows и Linux. Подбор операционной системы для рабочих персональных компьютеров и для сервера на предприятии ООО "Газ-сервес".

      дипломная работа , добавлен 16.06.2012

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

      реферат , добавлен 11.12.2011

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

      курсовая работа , добавлен 27.04.2013

      Создание компанией Microsoft операционной системы MS-DOS и повсеместное использование персональных компьютеров. Необходимость создания более удобной для пользователя операционной системы, разработка и эволюция Windows, появление интернет-приложений.

      презентация , добавлен 29.10.2012

      Характеристики различных моделей портативных компьютеров. Возможности оперативных систем. ЭВМ и вычислительные системы. Порядок выбора портативных компьютеров и ОС. Выбор портативного компьютера для оснащения ими сотрудников консалтинговой фирмы.

      дипломная работа , добавлен 23.06.2012

      Определение назначения, характеристика типов операционных систем и анализ многозадачности в системах пакетной обработки. Ознакомление с приемами управления работой печатающих устройств в MS-DOS и формирование новых команд и символов матричного принтера.

      курсовая работа , добавлен 22.06.2011

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

      презентация , добавлен 23.10.2013

      Анализ и оценка, производимых в настоящее время, портативных компьютеров, соответствующих операционных систем, в совокупности с экскурсом в историю их появления и развития. Классификация и функции процессоров для ноутбуков. ОС для портативных компьютеров.


    Краткая история развития операционных систем

    Возникновение и основные этапы развития операционных систем

    Первые ЭВМ были построены и нашли практическое применение в 40-е годы XX века. Первоначально они использовались для решения единственной частной задачи – расчет траектории артиллерийских снарядов в системах ПВО. В силу специфики применения (решение единственной задачи), первые ЭВМ не использовали ни какой операционной системы. В тот период времени, решением задач на ЭВМ занимались в основном сами же разработчики ЭВМ, а процесс использования ЭВМ представлял собой не столько решение прикладной задачи, сколько исследовательскую работу в области вычислительной техники.

    BIOS – первый шаг к созданию операционных систем

    Вскоре ЭВМ начали успешно применять для решения других задач: анализ текстов и решение сложных прикладных задач из области физики. Круг потребителей услуг ЭВМ несколько расширился. Однако, для решения каждой конкретной задачи в то время необходимо было написать заново не только код, реализующий алгоритм решения, но и процедуры ввода-вывода и другие процедуры управления процессом вычисления. Существенные издержки такого подхода вскоре стали очевидными:
    - код процедур ввода вывода обычно является довольно объемным и сложным в отладке (нередко он оказывался самым большим фрагментом программы), а в случае ошибки в процедуре ввода-вывода могли быть легко потеряны результаты длительных и дорогостоящих вычислений;
    - необходимость каждый раз заново писать довольно большой вспомогательный код затягивает время и повышает трудоемкость разработки прикладных программ.
    Поэтому для разрешения указанных проблем были созданы специальные библиотеки процедур ввода-вывода (BIOS – Base Input-Output System). Тщательно отлаженные и эффективные процедуры из BIOS можно было легко использовать с любыми новыми программами, не затрачивая время и силы на разработку и отладку стандартных процедур для ввода и вывода данных.
    Таким образом, с появлением BIOS программное обеспечение разделилось на системное и прикладное программное обеспечение. Причем прикладное программное обеспечение непосредственно ориентировано на решение полезных задач, в то время как системное программное обеспечение ориентировано исключительно на поддержку работы и упрощение разработки прикладного программного обеспечения.
    Однако, BIOS еще не является операционной системой, т.к. не выполняет важнейшую для любой операционной системы функцию – управление процессом вычислений прикладной программы. Кроме того, BIOS не обеспечивает и другие важные функции операционной системы – хранение и запуск прикладных программ. BIOS и библиотеки математических процедур, которые появились примерно в то же время, просто облегчали процесс разработки и отладки прикладных программ, делали их более простыми и надежными. Тем не менее, создание BIOS стало первым шагом на пути к созданию полноценной операционной системы.

    Система пакетной обработки – прообраз современной операционной системы

    По мере дальнейшего развития электронно-вычислительных машин, с расширением сферы их применения, на первый план быстро вышла проблема недостаточной эффективности использования дорогостоящей ЭВМ.
    В 50-е годы персональных компьютеров еще не было, и любая ЭВМ была очень дорогой, громоздкой и относительно редкой машиной. Для доступа к ней со стороны различных научных учреждений составлялось специальное расписание. К указанному времени программист должен был прийти в машинный зал, загрузить свою задачу с колоды перфокарт, дождаться завершения вычислений и распечатать результаты.
    При использовании жесткого расписания, если программист не успевал закончить расчеты за отведенное время, он все равно должен был освободить машину, так как для нее была запланирована новая задача. Но это означает, что машинное время было затрачено впустую – результатов то не получено! Если же по какой либо причине расчеты завершались раньше ожидаемого срока, то машина просто простаивала.
    Для того, чтобы избежать потерь процессорного времени, неизбежных при работе по расписанию, была разработана концепция пакетной обработки заданий, сущность которой поясняет следующий рисунок (Рисунок 1).

    Рисунок 1 Структура вычислительной системы с пакетной обработкой

    Впервые, пакетная система была разработана в середине 50-х компанией General Motors для машин IBM 701. По-видимому, это была первая операционная система. Основная идея пакетной обработки состоит в том, чтобы управление загрузкой программ и распечатку результатов поручить маломощным и относительно дешевым машинам-сателлитам, которые подключаются к большой (основной) машине через высокоскоростные электронные каналы. При этом большая ЭВМ будет только решать задачу, полученную от машины-сателлита, и после завершения задачи передавать результаты по высокоскоростному каналу другой машине-сателлиту для распечатки.
    Машины сателлиты работают самостоятельно, освобождая центральный процессор от необходимости управления медленными внешними устройствами. При этом распечатка результатов предыдущей задачи может происходить в ходе решения текущей задачи, и одновременно в электронную память машины-сателлита может считываться следующая задача. Такая организация системы пакетной обработки заданий известна как простая пакетная система.
    Системы пакетной обработки заданий, реализованные в 50-е годы, стали прообразом современных операционных систем. В них впервые было реализовано программное обеспечение, используемое для управления исполнением прикладных программ.
    Заметим здесь также, что описанный подход к построению H/W вполне сохранился до настоящего времени. Современные периферийные устройства, и, прежде всего, это накопители на жестких магнитных дисках, способны передавать большие объемы данных без участия центрального процессора. Забегая вперед, укажем, что только благодаря такому свойству аппаратуры компьютера существуют и эффективно работают современные многозадачные операционные системы.

    Многозадачные операционные системы

    Первые многозадачные операционные системы появились в 60-е годы в результате дальнейшего развития систем пакетной обработки заданий. Основным стимулом к их появления стали новые аппаратные возможности ЭВМ.
    Во-первых, появились новые эффективные носители информации, на которых можно было легко автоматизировать поиск требуемых данных: магнитные ленты, магнитные цилиндры и магнитные диски. Это, в свою очередь, изменило структуру прикладных программ – теперь они могли в процессе работы загрузить дополнительные данные для вычислений или процедуры из стандартных библиотек.
    Заметим теперь, что простая пакетная система, приняв задачу, обслуживает ее вплоть до полного завершения, а это значит, что во время загрузки дополнительных данных или кода процессор простаивает, при этом стоимость простоя процессора возрастает с ростом его производительности, так как более производительный процессор мог бы сделать за время простоя большее количество полезной работы.
    Во-вторых, производительность процессоров существенно возросла, и потери процессорного времени в простых пакетных системах стали недопустимо велики.
    В этой связи логичным шагом стало появление многозадачных пакетных систем. Необходимым условием для создания многозадачных систем является достаточный объем памяти компьютера. Для многозадачности объем памяти должен быть достаточен для размещения, по крайней мере, двух программ одновременно.
    Основная идея многозадачности вполне очевидна – если текущая программа приостанавливается в ожидании завершения ввода-вывода, то процессор переходит к работе с другой программой, которая в данный момент готова к выполнению.
    Однако, переход к другой задаче должен быть сделан так, чтобы сохранить возможность вернуться к брошенной задаче спустя некоторое время и продолжить ее работу с точки останова. Для реализации такой возможности в операционную систему потребовалось ввести специальную структуру данных, определяющую текущее состояние каждой задачи – контекст процесса. Контекст процесса определен в любой современной операционной системе таким образом, чтобы данных из него было бы достаточно для полного восстановления работы прерванной задачи.
    Появление многозадачности потребовало реализации в составе операционной системы сразу нескольких фундаментальных подсистем, которые также представлены в любой современной операционной системе. Перечислим их:
    1) подсистема управления процессорами – определяет какую задачу и в какое время следует передать процессору для обслуживания;
    2) подсистема управления памятью – обеспечивает бесконфликтное использование памяти сразу несколькими программами;
    3) подсистема управления процессами – обеспечивает бесконфликтное разделение ресурсов компьютера (например, магнитных дисков или общих подпрограмм) сразу несколькими программами.
    В рамках этого курса будет подробно рассмотрена реализация указанных подсистем в современных операционных системах.
    Почти сразу после появления многозадачных операционных систем, было замечено, что многозадачность полезна не только для повышения коэффициента использования процессора. Например, на основе многозадачности можно реализовать многопользовательский режим работы компьютера, т.е. подключить к нему несколько терминалов одновременно, причем для пользователя за каждым терминалом будет создана полная иллюзия, что он работает с машиной один. До эпохи массового использования персональных компьютеров, многопользовательский режим был основным режимом работы практически для всех ЭВМ. Повсеместная поддержка многопользовательского режима резко расширила круг пользователей компьютеров, сделала его доступным для людей различных профессий, что в конечном итоге и привело к современной компьютерной революции и появлению ПК.
    При этом в зависимости от алгоритмов, положенных в основу работы подсистемы управления процессорами, операционная система, а с ней и вся ЭВМ, приобретает различные свойства. Например, многозадачная пакетная система, переключающаяся на другую задачу только при невозможности продолжить текущую, способна обеспечить максимальную пропускную способность компьютера, т.е. максимизировать среднее число задач, решаемых в единицу времени, но из-за непредсказуемости времени ответа многозадачная пакетная система совершенно не подходит для интерактивной системы, немедленно реагирующей на пользовательский ввод.
    Многозадачная система с принудительным вытеснением задачи по истечению кванта времени идеально подходит для интерактивной системы, но не обеспечивает максимальной производительности для вычислительных задач.
    При изучении темы "управление процессорами" в рамках данного курса будут рассмотрены особенности многих конкретных алгоритмов, показаны компромиссные решения, подходящие для универсальных операционных систем, ориентированных на решение широкого круга задач.
    В качестве вывода отметим, что появление многозадачности было вызвано желанием максимально использовать процессор, исключив по возможности его простои, и в настоящее время многозадачность является неотъемлемым качеством практически любой современной операционной системы.

    Операционные системы с поддержкой виртуальной памяти

    Появление системы виртуальной памяти в конце 60-х, стало последним шагом на пути к современным операционным системам. Появление в дальнейшем графических пользовательских интерфейсов и даже поддержка сетевого взаимодействия уже не были столь революционными решениями, хотя и существенно повлияли и на развитие аппаратуры компьютеров, и на развитие самих операционных систем.
    Толчком к появлению виртуальной памяти стали сложности управления памятью в многозадачных операционных системах. Основные проблемы здесь следующие:
    - Программы, как правило, требуют для своего размещения непрерывную область памяти. В ходе работы, когда программа завершается, она освобождает память, но этот регион памяти далеко не всегда пригоден для размещения новой программы. Он или слишком мал, и тогда для размещения программы приходится искать участок в другой области памяти, или слишком велик, и тогда после размещения новой программы останется неиспользуемый фрагмент. При работе операционной системы, вскоре образуется очень много таких фрагментов – суммарный объем свободной памяти велик, но разместить новую программу не удается так как нет ни одной достаточно длинной непрерывной свободной области. Такое явление называется фрагментацией памяти.
    - В случае, когда несколько программ одновременно находятся в общей памяти, ошибочные или преднамеренные действия со стороны какой-либо программы могут нарушить выполнение других программ, кроме того, данные или результаты работы одних программ могут быть несанкционированно прочитаны другими программами.
    Как будет показано в рамках данного курса дальше, виртуальная память не только идеально решает подобные проблемы, но также предоставляет новые возможности для дальнейшей оптимизации работы всей вычислительной системы.
    Решающей предпосылкой для появления системы виртуальной памяти стал механизм свопинга (от англ. to swap – менять, обменивать).
    Идея свопинга состоит в том, чтобы выгружать из ОЗУ во вторичную память (на магнитный диск) программы, временно снятые с выполнения, и загружать их обратно в ОЗУ, когда они становятся готовыми к дальнейшему выполнению. Таким образом, происходит постоянный обмен программами между ОЗУ и вторичной памятью.
    Свопинг позволяет освободить место в оперативной памяти для загрузки новых программ за счет выталкивания во вторичную память программ, которые не могут выполняться в данный момент. Свопинг достаточно эффективно решает проблему нехватки оперативной памяти и фрагментации, но не решает проблемы защиты.
    Виртуальная память также основана на выталкивании части программ и данных из оперативной памяти во вторичную память, но реализуется гораздо сложнее и требует обязательной поддержки от аппаратных средств процессора. Конкретные механизмы работы виртуальной памяти будут рассмотрены в дальнейшем.
    В конечном итоге, система виртуальной памяти организует собственное адресное пространство для каждой запущенной программы, которое называется виртуальное адресное пространство. При этом участки виртуального адресного пространства, по усмотрению операционной системы, могут отображаться либо на участки оперативной памяти, либо на участки вторичной памяти (см. Рисунок 2).


    Рисунок 2 Отображение виртуального адресного пространства

    При использовании виртуальной памяти, программы не смогут ошибочно или преднамеренно обратиться к данным других программ или самой операционной системы – подсистема виртуальной памяти гарантирует защиту данных. Кроме того, неиспользуемые в данный момент области виртуального адресного пространства отображаются во вторичную память, т.е. данные из этих областей хранятся не в ОЗУ, а во вторичной памяти, что решает проблему нехватки оперативной памяти. Наконец, области виртуального адресного пространства могут отображаться на произвольные участки ОЗУ, при этом соседние участки виртуального адресного пространства не обязательно должны быть соседними в ОЗУ, что решает проблему фрагментации.
    Как уже было сказано, виртуальная память впервые была использована в реальных операционных системах в конце 60-х, но широкое распространение виртуальная память получила только в 80-х (UNIX, VAX/VMS), а повсеместно стала применяться в персональных компьютерах лишь в середине 90-х годов (OS/2, Linux, Windows NT). В настоящее время, виртуальная память, наряду с многозадачностью, является неотъемлемой частью практически любой современной операционной системы.

    Графические интерфейсы пользователя

    С конца 80-х, персональные компьютеры получили повсеместное распространение, и в сообщество пользователей ПК оказалось вовлечено множество людей различных специальностей. Многие из них не имели специальной компьютерной подготовки, но хотели использовать компьютер в своей работе, т.к. использование компьютера давало ощутимые преимущества в их деле.
    С другой стороны, усложнение операционных систем и прикладных программ сделало управление ими достаточно сложной задачей даже для специалистов, и интерфейс командной строки, который к этому времени стал стандартом для операционных систем, перестал удовлетворять практическим запросам.
    Наконец, появились новы аппаратные возможности: цветные графические мониторы, высокопроизводительные графические контроллеры и манипуляторы типа мышь.
    Таким образом, в конце 80-х сложились все условия для повсеместного перехода на графический интерфейс пользователя: с одной стороны возникла потребность в более простом и удобном механизме управления компьютером, с другой стороны, развитие аппаратных средств позволяло построить такой механизм.
    Основная идея графического интерфейса пользователя состоит в следующем:
    - пользователю, в зависимости от текущей ситуации, предлагается выбрать один из нескольких альтернативных вариантов дальнейших действий;
    - возможные варианты действий пользователя представлены на экране ЭВМ в виде текстовых строк (меню) или схематичных рисунков (пиктограмм);
    - для выбора одного из вариантов дальнейших действий достаточно совместить на экране монитора указатель (курсор) с элементом меню или пиктограммой и нажать заранее определенную клавишу (обычно это <пробел>, <ввод> или кнопка мышки), чтобы проинформировать систему о сделанном выборе.
    Первый графический интерфейс был разработан в 81 году в компании Xerox. Говорят, что посещение главой компании Microsoft Билом Гейтсом компании Xerox и знакомство с ее разработками в области графических пользовательских интерфейсов, подвигли Microsoft на создание собственных графических интерфейсов пользователя.
    В настоящее время наиболее совершенным графическим интерфейсом обладает, по-видимому, операционные системы семейства Windows, эти графические интерфейсы являются как бы стандартов де-факто для графических интерфейсов пользователя.
    Использование графического интерфейса оказалось настолько простым и интуитивно понятным, что компьютеры в настоящее время стали эффективно использовать в своей работе люди, которые даже не имеют никакого представления об архитектуре самого компьютера, операционной системы или прикладной программы.
    В конечном итоге, появление графических интерфейсов пользователя в составе операционных систем и прикладных программ оказало колоссальное влияние на компьютеризацию современного общества.

    Встроенная поддержка сети

    Встроенная сетевая поддержка в составе операционных системах общего назначения впервые появилась в середине 90-х, и первоначально обеспечивала только доступ к удаленным файлам, расположенным на дисках другого компьютера. Первоначально, поддержка сети требовалась только в небольших офисах для совместной работы нескольких компьютеров над одним документом.
    Однако развитие сети Интернет быстро привело к необходимости встроить сетевую поддержку даже в операционные системы для домашних компьютеров. Кроме того, интересно отметить, что постоянное снижение стоимости домашних компьютеров в последние годы вызвало к жизни домашние компьютерные сети, когда в одной семье используется несколько компьютеров с возможностью совместного использования общего принтера, сканера или другого оборудования.
    Вершиной интеграции при сетевом взаимодействии являются сетевые операционные системы, объединяющие ресурсы всех компьютеров сети в общий сетевой ресурс, доступный любому компьютеру сети. Разумное использование сетевой операционной системы позволяет решать сложные переборные или оптимизационные задачи при наличии в сети достаточно большого количества ЭВМ, каждая из которых в отдельности не в состоянии решить задачу за приемлемое время.

    История наиболее распространенных операционных систем

    Операционная система UNIX

    Операционная система UNIX является первой современной операционной системой. Технические решения, заложенные даже в самые первые версии UNIX, в последствии стали стандартными решениями для многих более поздних операционных систем, причем не только для семейства UNIX. Многие алгоритмы, заложенные в подсистему управления ресурсами UNIX, до настоящего времени являются наилучшими и тиражируются в различных операционных системах.
    Рассмотрим историю возникновения и развития UNIX более подробно.

    Проект операционной системы Multics

    В проекте Multics в период 1965 – 1969 гг. совместно участвовали компании Bell Labs и General Electric. Целью проекта Multics было создание новой многопользовательской многозадачной интерактивной операционной системы, сочетающей удобство использования с мощной и эффективной системой управления ресурсами. В основу Multics были положены следующие технические решения:
    - виртуальная память с сегментно-страничной организацией, контролирующая права доступа на запись, чтение или исполнение для каждого сегмента;
    - централизованная файловая система, обеспечивающая организацию данных, даже находящихся на разных физических устройствах, в виде единой древовидной структуры каталогов/файлов;
    - отображение содержимого файла в виртуальное адресное пространство процесса с использованием механизмов управления виртуальной памятью.
    Все эти решения характерны и для современных операционных систем. Однако проект Multics не был завершен. Руководство компании Bell Labs приняло решение о выходе из проекта, посчитав дальнейшее финансирование проекта нецелесообразным, так как большие средства, уже вложенные в проект, не приносили отдачи.
    Несмотря на досрочное прекращение, в ходе проекта Multics были определены базовые принципы управления ресурсами и архитектуры операционных систем, которые успешно используются до настоящего времени, а специалисты, участвующие в проекте, получили бесценный опыт. Среди участников проекта Multics были Кен Томпсон и Деннис Ритчи, будущие авторы первой версии UNIX.

    Возникновение операционной системы UNIX

    После прекращения проекта Multics, Кен Томпсон, Деннис Ритчи и некоторые другие сотрудники Bell Labs продолжили исследовательскую работу в области операционных систем, и вскоре предложили идею усовершенствованной файловой системы. По счастливому стечению обстоятельств, компания Bell Labs в то время испытывала острую потребность в удобных и эффективных средствах ведения документации, и новая файловая система могла здесь оказаться полезной.
    В 1969 Кен Томпсон реализовал на машине PDP-7 операционную систему, включающую в себя новую файловую систему, а также специальные средства управления процессами и памятью, позволяющие работать на одной машине PDP-7 сразу двум пользователям в режиме разделения времени. Первыми пользователями новой операционной системы стали сотрудники патентного отдела Bell Labs.
    Брайан Керниган предложил назвать новую систему UNICS – Uniplexed Information and Computing System. Название понравилось разработчикам, отчасти еще и потому, что напоминало Multics. Вскоре название стали записывать как UNIX – произносится также, но запись короче на одну букву. Это название дошло до настоящего времени.
    В 1971 году, после переноса UNIX на PDP-11, была выпущена первая редакция документации, и новая операционная система появилась уже официально.
    Первая редакция UNIX была написана на ассемблере, что накладывало определенные трудности при переносе операционной системы на другие платформы, поэтому для работы над второй редакцией UNIX, Кен Томпсон разработал собственный язык программирования B. Вторая редакция вышла в 1972 году и содержала программные каналы, позволяющие устанавливать взаимодействие между программами, одновременно выполняющимися на ЭВМ.
    Появление операционной системы, написанной не на ассемблере, было революционным шагом в области системного программирования, но язык B содержал в себе ряд ограничений, сдерживающих его применение. Поэтому в 1973 году Деннис Ритчи разработал язык C, и операционная система была переписана на новом языке.
    В 1975 году появилась первая коммерческая версия UNIX, известная как UNIX v.6 и UNIX начала свое триумфальное шествие по миру.

    Основные этапы развития UNIX

    1976. В университете г. Беркли сложилась группа студентов и профессоров, серьезна занявшаяся системой UNIX. В последствие группой университета Беркли основала собственную ветвь развития ОС UNIX – BSD UNIX (Berkeley Software Distribution). В ветви BSD впервые появились такие известные компоненты UNIX, как текстовый редактор vi, стек протоколов TCP/IP, страничный механизм в системе управления виртуальной памятью.
    1977. Первый опыт по переносу UNIX на другую аппаратную платформу (отличную от PDP-11). В университете Воллонгонга в Австралии профессор Джюрис Рейндфельдс частично перенес UNIX на 32 разрядную машину.
    1978. Томпсон и Ритчи в Bell Labs осуществили полный перенос UNIX на 32 разрядную машину. Перенос сопровождался существенными изменениями в организации системы, которые позволили упростить последующие переносы UNIX на другие платформы. Одновременно язык C был расширен практически до современного состояния.
    1978. Специально для поддержки UNIX в Bell Labs создано подразделение USG (UNIX Support Group).
    1982. USG выпустила UNIX System III, которая аккумулировала лучшие решения, представленные в различных версиях UNIX, известных к тому времени. Впервые представлены именованные программные каналы.
    1983. Выход Unix System V. В ней впервые представлены семафоры, средства разделения памяти и очереди сообщений, а для повышения производительности использовано кэширование данных.
    1984. USG преобразована в лабораторию по развитию UNIX – USDL (UNIX System Development Laboratories). Выпущена версия UNIX System V Release 2 (SVR2). В системе реализована возможность блокировки файлов и копирования совместно используемых страниц памяти при записи.
    1986. Появление графического интерфейса для UNIX-подобных операционных систем – графическая система X Windows.
    1987. USDL выпустила UNIX System V Release 3 (SVR3). Впервые представлены современные возможности межпроцессного взаимодействия, разделение удаленных файлов, обработка сигналов.
    1989. Выход UNIX System V Release 4 (SVR4). UNIX впервые реализована на основе концепции микроядра. Введена поддержка процессов реального времени, и легковесных процессов.

    Операционная система Linux

    В настоящее время операционная система Linux переживает этап бурного развития. И хотя это молодая операционная система, возраст которой всего чуть более 10 лет, она уже успела получить признание многих тысяч пользователей.
    У истоков операционной системы Linux стоял Линус Торвальдс, в то время студент-первокурсник, который в конце 1991 г. поместил в Интернет разработанную им микро операционную систему Linux и пригласил всех желающих принять участие в развитии этой системы. В результате к проекту подключилось множество талантливых программистов, и совместными усилиями большого числа людей, взаимодействующих через Интернет, была разработана весьма совершенная операционная система.
    В основу Linux легли некоторые решения из UNIX BSD 4.2, и поэтому Linux обычно рассматривают как самостоятельную ветвь UNIX-подобных операционных систем.
    В настоящее время Linux развивается в рамках технологии Open Source – открытых исходных текстов, доступных всем желающим. Любой человек может разработать и послать свои изменения или дополнения к Linux, а инсталляцию Linux можно получить бесплатно через Интернет.
    В настоящее время Linux также разделился на несколько самостоятельных ветвей, между которыми все еще много общего, но есть отличия в реализации некоторых компонентов, как в ядре системы, так и в различных утилитах.
    Операционная система Linux сейчас рассматривается многими людьми как серьезная альтернатива операционным системам семейства Windows. Система Linux устойчиво работает и обеспечивает высокую производительность. Единственное, что все еще сдерживает распространение Linux, это недостаточное число офисных прикладных программ, таких как текстовые процессоры или электронные таблицы. Но в последнее время количество таких программ неуклонно растет, а качество их пользовательских интерфейсов приближается к привычному для пользователей Windows.
    Еще одна проблема системы Linux состоит в том, что она обычно отстает с поддержкой новейших аппаратных средств, но это тоже имеет свое объяснение. Разработчики этих аппаратных средств всегда предоставляют ведущим производителям операционных систем сведения о них еще до появления данного аппаратного средства на рынке, поэтому, например, Windows обычно обеспечивает поддержку новых аппаратных средств сразу же при их появлении на рынке. Авторитет системы Linux в среде разработчиков аппаратных средств неуклонно растет, поэтому можно надеяться, что проблема поддержки аппаратных средств скоро решиться.

    Операционная система Windows

    В настоящее время семейство операционных систем Windows – это наиболее массовые операционные система для персональных компьютеров. Все эти операционные системы имеют весьма схожий (и весьма совершенный!) графический интерфейс пользователя, но существенно различаются по внутреннему строению.
    В семействе Windows, операционные системы Windows 95/98/Me представляют ветвь потребительских операционных систем, ориентированных, прежде всего, на домашнее использование, а система Windows XP в первую очередь ориентирована на 64-х битную платформу, и в 32-х битной реализации отличается от Windows 2000 в основном интерфейсом.
    Современная операционная система Windows 2000 является типичной многозадачной операционной системой, поддерживающей виртуальную память, файловую систему, сеть, графический интерфейс пользователя, средства мультимедиа. Она прямо происходит от Windows NT и практически не имеет ничего общего с операционной системой MS-DOS, широко распространенной около десятилетия назад. Тем не менее, развитие операционных систем Microsoft происходило последовательно, и их историю логичнее всего начать именно от DOS.
    1983. Выходит операционная система MS-DOS 2.0, включающая поддержку накопителя на жестком диске, файловой системы с иерархической структурой имен файлов, загружаемых драйверов устройств. В дальнейшем, все версии Windows, вплоть до Windows NT работали как надстройка над DOS версии не ниже 2.0, используя его файловую систему и системные функции для работы с аппаратурой компьютера.
    1985. Выходит первая версия Windows – Windows 1.01. В то время Windows еще не является полноценной операционной системой и требует для своей работы операционную систему DOS 2.0. Система Windows 1.01 поддерживает только не перекрывающиеся окна и позволяет пользователям переключаться между программами без их перезапуска. К моменту появления Windows 1.01, на рынке уже представлено несколько графических оболочек для DOS, однако все они, как и Windows, не пользуются особой популярностью из-за отсутствия программ. Кроме того, работа в не перекрывающихся окнах неудобна.
    1987. Выходит версия Windows 2.0, поддерживающая перекрывающиеся окна. Одновременно с выходом Windows 2.0 на рынке появляется электронная таблица Microsoft Excel и текстовый процессор Word 1.0 – по настоящему удобное программное обеспечение для Windows. Благодаря удобному графическому интерфейсу и наличию полезных прикладных программ, версия Windows 2.0 становится популярной, за пол года продано миллион копий.
    1988. Выходит версия Windows 2.1, поддерживающая расширенную память на процессоре 80286 и многозадачность на процессоре 80386. Для этой версии становится обязательным наличие в составе компьютера накопителя на жестком магнитном диске (до этого достаточно было дискет).
    1990. Выходит версия Windows 3.0. Она запускается в защищенном режиме процессора и поддерживает свопинг для программ и данных, основанный на дескрипторах блоков памяти. При этом, пока данные из некоторого блока памяти не требуются, система может по своему усмотрению перемещать этот блок в памяти и даже сбрасывать на диск его данные. Но когда эти данные понадобятся какой либо программе, она должна указать это системе и передать ей дескриптор блока памяти для идентификации требуемого блока (при выделении блока памяти система возвращает его дескриптор). Получив требование на доступ к памяти, система блокирует данный блок в памяти и передает приложению указатель на начало блока. Система больше не может перемещать этот блок памяти, пока приложение не проинформирует ее, что обращение к данным из этого блока памяти больше не требуется. Начиная с версии Windows 3.0 программы MS-DOS могут запускаться в окне.
    1992. Выходит версия Windows 3.1, которая представляет собой просто дальнейшее усовершенствование Windows 3.0, но это первая версия Windows, получившая широкое распространение в России. Вскоре Windows 3.1 становится самой популярной по числу инсталляций системой в США и удерживает первенство вплоть до 1997 года.
    1993. Выходит версия Windows 3.11, дополненная поддержкой сети (электронная почта, совместный доступ к файлам, рабочие группы).
    1993. Выходит операционная система Windows NT (NT – New Technology) – первая полноценная операционная система семейства Windows, не требующая для своей работы базиса в виде MS-DOS. Для работы Windows NT требуется процессор не ниже 80386, в ней реализована полноценная виртуальная память, вытесняющая многозадачность, новая файловая система. Начиная с Windows NT, разделились потребительская и профессиональная ветви.
    1995. Выходит операционная система Windows 95, являясь дальнейшим развитием Windows 3.11, она становится первой потребительской версией Windows, не требующей для своей работы DOS. В Windows 95 впервые представлен новый графический интерфейс пользователя, очень удобный, интуитивно понятный, он выводит Windows на первое место в мире по удобству использования и качеству пользовательского интерфейса.
    1996. Выходит операционная система Windows NT4. Она является дальнейшим развитием Windows NT и получает пользовательский интерфейс Windows 95. В скором времени операционная система Windows NT4 станет одной из самых популярных для профессиональной работы.
    2000. Выходит операционная система Windows 2000. Она в основном унаследовала внутреннюю архитектуру Windows NT, но было введено ряд дополнительных сервисов, например, поддержка распределенных вычислений.
    2000. Выходит операционная система Windows Me, являющаяся дальнейшим развитием Windows 95/98. Однако объявлено, что она станет последней потребительская версией Windows. Отделившаяся в 1993 году потребительская ветвь вновь сливается с профессиональной, и дальше будет развиваться единая ветвь Windows XP.
    и т.д. и т.п.
    2006. Vista


    Всероссийский Заочный Финансово – Экономический Институт

    Факультет: финансово – кредитный

    Специальность: финансы и кредит группа вечерняя

    Курсовая работа

    По дисциплине «Информатика»

    На тему «Назначение, классификация и эволюция операционных систем»

    Москва – 2008г.

    Введение
    1 Назначение операционных систем 5

    2 Перечислим основные функции операционных систем 9

    2.2 Обслуживание всех операций ввода-вывода 9

    3 Эволюция и классификация ОС
    Заключение 2
    Список использованной литературы 22

    Введение

    Операционная система (ОС) является основой системного ПО, под управлением которыми осуществляется начальная загрузка компьютера, управление работой всех его устройств и проверка их работоспособности, управление файловой системой компьютера, загрузка пользовательских приложений и распределение ресурсов компьютера между ними, поддержка пользовательского интерфейса и др. К числу широко известных семейств операционных систем относятся DOS, WINDOWS, UNIX, NETWARE и др.

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

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

    1 Назначение операционных систем

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

    Аналогично, и вывод результатов может быть организован, например, на соответствующие устройства и в форме, удобной для восприятия ее человеком. Либо результаты расчетов будут отправляться программой на какие-нибудь исполнительные устройства, которые управляются компьютером. Наконец, мы можем организовать запись полученных значений на некие устройства хранения данных (с целью их дальнейшей обработки).

    Программирование операций ввода-вывода относится к одной из самых трудоемких областей создания программного обеспечения. Здесь речь идет не об использовании операторов типа READ или WRITE в языках высокого уровня. Речь идет о необходимости создать подпрограмму в машинном виде, уже готовую к выполнению на компьютере, а не написанную с помощью некоторой системы программирования (систем программирования тогда еще не было), подпрограмму, вместо обычных вычислений управляющую тем устройством, которое должно участвовать в операциях ввода исходных данных или выводов результатов. При наличии такой подпрограммы программист может обращаться к ней столько раз, сколько операций ввода-вывода с этим устройством ему требуется. Для выполнения этой работы программисту недостаточно хорошо знать архитектуру вычислительного комплекса и уметь создавать программы на языке ассемблера. Он должен отлично знать и интерфейс, с помощью которого устройство подключено к центральной части компьютера, и алгоритм функционирования устройства управления устройства ввода-вывода.

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

    В 50-е годы взаимодействие пользователей с вычислительным комплексом было совершенно иным, чем ныне. Программист-кодер (от англ. coder – кодировщик) – специально подготовленный специалист, знающий архитектуру компьютера и язык(и) программирования, - по заказу составлял текст программы, часто по уже готовому алгоритму, разработанному программистом-алгоритмистом. Текст этой программы затем отдавался оператору, который набирал его на специальных устройствах и переносил на соответствующие носители. Чаще всего в качестве носителей использовались перфокарты или перфолента. Далее колода с перфокартами передавалась в вычислительный зал, где для вычислений по этой программе требовать следующие действия:

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

    2. Транслятор считывал исходную программу, осуществлял лексический разбор исходного текста, и промежуточные результаты процесса трансляции зачастую так же выводили на перфокарты (перфоленту). Трансляция – сложный процесс, часто требующий нескольких проходов. Порой для выполнения очередного прохода приходилось в память компьютера загружать с перфокарт и следующую часть транслятора, и промежуточные результаты трансляции. Ведь результат трансляции выводился также на носители информации, поскольку объем оперативной памяти был небольшим, а задача трансляции – это очень сложная задача.

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

    Для автоматизации труда программиста (кодера) стали разрабатывать специальные алгоритмические языки высокого уровня, а для автоматизации труда оператора вычислительного комплекса была разработана специальная управляющая программа, загрузив которую в память один раз оператор мог ее далее использовать неоднократно и более не обращаться к процедуре программирования ЭВМ через пульт оператора. Именно эту управляющую программу и стали называть операционной системой. Со временем на нее стали возлагать все больше и больше задач, она стала расти в объеме. Прежде всего разработчики стремились к тому, чтобы операционная система как можно более эффективно распределяла вычислительные ресурсы компьютера, ведь в 60-е годы операционные системы уже позволяли организовать параллельное выполнение нескольких программ. Помимо задач распределения ресурсов появились задачи обеспечения надежности вычислений. К началу 70-х годов диалоговый режим работы с компьютером стал преобладающим, и у операционных систем стремительно начали развиваться интерфейсные возможности. Термин интерфейс (interface) обозначает целый комплекс спецификаций, определяющих конкретный способ взаимодействия пользователя с компьютером.

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

    2 Перечислим основные функции операционных систем

    Прием пользователя (или оператора системы) заданий, или команд, сформулированных на соответствующем языке, и их обработка. Задания могут передаваться в виде текстовых директив (команд) оператора или в форме указаний, выполняемых с помощью манипулятора (например, с помощью мыши). Эти команды связаны с запуском (приостановкой, остановкой) программ, с операциями над файлами (получить перечень файлов в текущем каталоге, создать, переименовать, скопировать, переместить тот или иной файл и др.), хотя имеются и иные команды.

    Распределение памяти, а в большинстве современных систем и организация виртуальной памяти.

    Запуск программы (передача ей управления, в результате чего процессор исполняет программу).

    Прием и использование различных запросов от выполняющихся приложений. Операционная система умеет выполнять очень большое количество системных функций (сервисов), которые могут быть запрошены из выполняющейся программы. Обращение к этим сервисам осуществляется по соответствующим правилам, которые и определяют интерфейс прикладного программирования (Application Program Interface, API) этой операционной системы.

    2.2 Обслуживание всех операций ввода-вывода

    Обеспечение работы систем управлений файлами (СУФ) и/или систем управления базами данных (СУБД), что позволяет резко увеличить эффективность всего программного обеспечения.

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

    Планирование и диспетчеризация задач в соответствии с заданными между выполняющимися программами.

    Для сетевых операционных систем характерной является функция обеспечения взаимодействия связанных между собой компьютеров.

    Организация механизмов обмена сообщениями и данными между выполняющимися программами.

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

    Аутентификация и авторизация пользователей (для большинства диалоговых операционных систем). Под аутентификацией понимается процедура проверки имени пользователя и его пароля на соответствие тем значениям, которые хранятся в его учетной записи. Очевидно, что если входное имя (login) пользователя и его пароль совпадают, то, скорее всего, это и будет тот самый пользователь. Термин авторизация означает, что в соответствии с учетной записью пользователя, который прошел аутентификацию, ему (и всем запросам, которые будут идти к операционной системе от его имени) назначаются определенные права (привилегии), определяющие, что он может делать на компьютере.

    Удовлетворение жестким ограничениям на время ответа в режиме реального времени (характерно для ОС реального времени).

    Обеспечение работы систем программирования, с помощью которых пользователи готовят свои программы.

    Предоставление услуг на случай частичного сбоя системы.

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

    3 Эволюция и классификация ОС

    Эволюция ОС во многом обусловлена совершенствование аппаратной базы ЭВМ.

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

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

    Переход от отдельных полупроводниковых элементов типа транзисторов к интегральным микросхемам сопровождался созданием семейств программно-совместимых машин, например, семейства IBM/360, EC ЭВМ. ОС этих компьютеров ориентировались на обслуживание вычислительных систем с разнообразными периферийными устройствами и в различных областях деятельности. Особенностью таких ОС стало мультипрограммирование – способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются несколько приложений. Например, пока одно приложение осуществляет операции ввода-вывода, процессор выполняет вычислительные операции другого. Образовался новый тип ОС – системы разделения времени, которая позволяет создать для каждого пользователя иллюзию единоличной работы с компьютером. Появление больших (БИС) и сверхбольших интегральных схем (СБИС) обеспечило широкое распространение компьютеров и их использование неспециалистами в области программирования. Это потребовало разработки дружественного, интуитивно понятного программного интерфейса. Развитие средств коммуникаций обусловило развитие сетевых ОС.

    К современным ОС предъявляются следующие требования:

    Совместимости – ОС должна включать средства для выполнения приложений, подготовленных для других ОС;

    Переносимости – обеспечение возможности переноса ОС с одной аппаратурной платформы на другую;

    Надежности и отказоустойчивости – предполагает защиту ОС от внутренних и внешних ошибок, сбоев и отказов;

    Безопасности – ОС должна содержать средства защиты ресурсов одних пользователей от других;

    Расширяемости – ОС должна обеспечивать удобства внесения последующих изменений и дополнений;

    Производительности – система должна обладать достаточным быстродействием.

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

    Режимы работы ПЭВМ в первую очередь определяются количеством задач, параллельно решаемых на машине (реализуемых программ). По этому признаку ОС разделяются на многозадачные и однозадачные, поддерживающие и не поддерживающие многонитевую обработку, многопользовательские и однопользовательские, на многопроцессорные и однопроцессорные.

    По числу одновременно выполняемых задач выделяют ОС:

    Однозадачные ОС (MS-DOS, ранние версии PS DOS);

    Многозадачные (OS/2, UNIX, Windows).

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

    Невытесняющая многозадачность (NetWare, Windows 3. x и 9. х);

    Вытесняющая многозадачность (Windows NT, OS/2, UNIX).

    В первом случае активный процесс по окончании сам передает управление ОС для выбора из очереди другого процесса. Во втором – решение о переключении процесса с одного процесса с одного процесса на другой принимает не активный процесс, а ОС.

    Поддержка многонитевости предполагает возможность выполнения некоторых команд программы практически в один и тот же момент. Многонитевая ОС разделяет процессорное время не между задачами, а между отдельными ветвями (нитями) алгоритмов их решения (многозадачность внутри одной задачи).

    По числу одновременно работающих пользователей выделяют ОС:

    Однопользовательские (MS-DOS, Windows 3. x, ранние версии OS/2);

    Многопользовательские (UNIX, Windows NT).

    Отличием многопользовательских систем является наличие средств защиты информации пользователей от несанкционированного доступа.

    Многопроцессорная обработка предполагает поддержку работы нескольких процессоров и приветствует в ОС Solaris 2. x фирмы Sun, OS/2 фирмы IBM, Windows NT фирмы Microsoft, NetWare 4.1. фирмы Novell и др.

    Многопроцессорные ОС делятся на асимметричные и симметричные. Асимметричная ОС выполняется на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам. Симметричные ОС децентрализована и использует все процессоры, разделяя между ними системные и прикладные задачи.

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

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

    Динамическое перераспределение ресурсов ПЭВМ между несколькими задачами (способ коллективного пользования) обеспечивает либо сокращение суммарного времени решения нескольких задач, либо уменьшение времени начала обработки задачи. И то и другое при одном «обслуживающем приборе», например процессоре или принтере, достигается за счет увеличения времени решения одной (каждой) задачи. Порядок прохождения задач в машине определяет режимы реализации способа коллективного пользования: пакетной обработки и разделения времени. Пакетная обработка предполагает решение нескольких задач примерно в том же режиме, в каком работает преподаватель во время устного экзамена – его внимание занимает один из студентов. По завершении опроса внимание переключается на следующего (полагаем, что обслуживание студентов и есть решение задачи).

    В режиме разделения времени процесс выполнения программ разбивается на циклы. Внутри каждого цикла обязательно появляется (если она еще не решена) та базовая задача, для которой выделен данный цикл. Остальные задачи могут решаться в этом же цикле, если их решение не препятствует решению базовой. Соседние циклы выделяются для решения разных задач, поэтому существенно увеличивается время решения каждой из них. Вместе с тем на ожидание выполнения очередной части задачи затрачивается не более чем N-1 циклов (N – число разноименных циклов, выделенных для решения N различных задач). При соответствующем выборе длительности цикла у пользователя (из-за его инерционности) создается иллюзия работы в реальном масштабе времени. Работой в реальном масштабе времени называется режим работы, при котором существуют предельные ограничения на время решения задачи, накладываемые внешней средой. Для системы управления это означает, что обработка информации должна протекать со скоростью, превышающей скорость реально протекающего управляемого процесса, с тем, чтобы имелся определенный запас времени для принятия решений и формирования соответствующих управляющих воздействий.

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

    При конечном быстродействии обслуживающего прибора поступающие заявки не могут быть выполнены сразу, а становятся в очередь. Процесс выбора заявки из множества ожидающих обслуживания называется диспетчеризацией, а правило диспетчеризации – дисциплиной обслуживания. Дисциплин обслуживания много, например «в порядке поступления» (FIFO – First Input First Output), «в обратном порядке» (LIFO – Last Input First Output) и др. Для сокращения времени ожидания (времени пребывания в очереди) отдельным заявкам предоставляется преимущественное право на обслуживание, называемое приоритетом, который характеризуется целым положительным числом. Наивысший приоритет назначается ОС.

    Итак, при создании двоичных машинных программ прикладные программисты могут вообще не знать многих деталей управления конкретными ресурсами вычислительной системы, а должны только обращаться к некоторой программной подсистеме с соответствующими вызовами и получать от нее необходимые функции и сервисы. Эта программная подсистема и есть операционная система, а набор ее функций и сервисов, а также правила обращения к ним как раз и образуют то базовое понятие, которое мы называем операционной средой. Можно сказать, что термин «операционная среда» означает соответствующие интерфейсы, необходимые программам и пользователям для обращения к управляющей (супервизорной) части операционной системы с целью получить определенные сервисы.

    Системных функций бывает много, они определяют те возможности, которые операционная система предоставляет выполняющимся под ее управлением приложениям. Такого рода системные запросы (вызовы системных операций, или функций) либо явно прописываются в тексте программы программистами, либо подставляются автоматически самой системой программирования на этапе трансляции исходного текста разрабатываемой программы. Каждая операционная система имеет свое множество системных функций; они вызываются соответствующим образом, по принятым в системе правилам. Совокупность системных вызовов и правил, по которым их следует использовать, как раз и определяет интерфейс прикладного программирования (API). Очевидно, что программа, созданная для работы в некоторой операционной системе, скорее всего не будут работать в другой операционной системе, поскольку API у этих операционных систем различаются. Стараясь преодолеть это ограничение, разработчики операционных систем стали создавать так называемое программные среды. Программную (системную) среду следует понимать как некоторое системное программное окружение, позволяющее выполнить все системные запросы от прикладной программы. Та системная программная среда, которая непосредственно образуется кодом операционной системы, называется основной, естественной, или нативной (native). Помимо основной операционной среды в операционной системе могут быть организованы (путем эмуляции иной операционной среды) дополнительные программные среды. Если в операционной системе организована работа с различными операционными средами, то в такой системе можно выполнять программы, созданные не только для данной, но и для других операционных систем. Можно сказать, что программы создаются для работы в некоторой заданной операционной среде. Например, можно создать программу для работы в среде DOS. Если такая программа все функции, связанные с операциями с операциями ввода-вывода и с запросами памяти, выполняет не сама, а за счет обращения к системным функциям DOS, то она будет (в абсолютном большинстве случаев) успешно выполняться и в MS DOS, и в PS DOS, и в Windows 9x, и в Windows 2000, и в OS/2, и даже в Linux.

    Итак, параллельное существование терминов «операционная система» и «операционная среда» вызвано тем, что операционная система может поддерживать несколько операционных сред. Почти все современные 32-разрядные операционные системы, созданные для персональных компьютеров, поддерживают по нескольку операционных сред. Так операционная система OS/2 Warp, которая в свое время была одной из лучших в этом отношении, может выполнять следующие программы:

    Основные программы, созданные с учетом соответствующего «родного» 32-разрядного программного интерфейса этой операционной системы;

    16-разрядные программы, созданные для систем OS/2 первого поколения;

    16-разрядные приложения, разработанные для выполнения в операционной системе MS DOS или PS DOS;

    16-разрядные приложения, созданные для операционной среды Windows 3. x;

    Саму оперативную оболочку Windows 3. x и уже в ней – созданные для нее программы.

    А операционная система Windows XP позволяет выполнять помимо основных приложений, созданных с использованием Win32API, 16-разрядные приложения для Windows 3. x, 16-разрядные DOS-приложения, 16-разрядные приложения для первой версии OS/2.

    Операционная среда может включать несколько интерфейсов: пользовательские и программные. Если говорить о пользовательских, то например, система Linux имеет для пользователя как интерфейсы командной строки (можно использовать различные «оболочки» - shell), наподобие Norton Commander, например X-Window с различными менеджерами окон - KDE, Gnome и др. Если же говорить о программных интерфейсах, то в тех же операционных системах с общим названием Linux программы могут обращаться как к операционной системе за соответствующими сервисами и функциями, так и к графической подсистеме (если она используется). С точки зрения архитектуры процессора (и персонального компьютера в целом) двоичная программа, созданная для работы в среде Linux, использует те же команды и форматы данных, что и программа, созданная для работы в среде Windows NT. Однако в первом случае мы имеем обращение к одной операционной среде, а во втором – к другой. И программа, созданная непосредственно для Windows, не будет выполняться в Linux; если в ОС Linux организовать полноценную операционную среду Windows, то наша Windows-программа может быть выполнена. В общем, операционная среда – это то системное программное окружение, в котором могут выполняться программы, созданные по правилам работы этой среды.

    Заключение

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

    В настоящий момент около 90% персональных компьютеров используют ОС Windows, которая имеет ряд достоинств и вытеснила конкурентов из этого сегмента рынка. Более широкий класс ОС ориентирован для использования на серверах. К этому классу ОС относят: семейство Unix, разработки фирмы Microsoft, сетевые продукты Novell и корпорации IBM.

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

    Список использованной литературы

    Гордеев А.В. Операционные системы: Учебник для вузов.2-е изд. – СПб.: Питер, 2005.

    Основы информатики: Учеб. пособие / А.Н. Морозевич, Н.Н. Говядинова, В.Г. Левашенко и др.; Под ред.А.Н. Морозевича. – 2-е изд., испр. – Мн.: Новое знание, 2003.

    Евсюков В.В. Экономическая информатика: Учеб. пособие – Тула: Издательство «Граф и К», 2003.

    Информатика в экономике: Учеб. пособие /Под ред. проф. Б.Е. Одинцова, проф.А.Н. Романова. – М.: Вузовский учебник, 2008.