Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

История ПО

.pdf
Скачиваний:
24
Добавлен:
18.03.2015
Размер:
1.4 Mб
Скачать

ИСТОРИЯ РАЗВИТИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Развитие операционных систем

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

Второй период (1956–1965 гг.). В этот период произошло разделение персонала на

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

обработки и язык управления заданиями.

Третий период (19661980 гг.). Создание программно-совместимых электронных вычислительных машин на интегральных микросхемах серии IBM-360 потребовало и совместимости операционных систем. Операционные системы (ОС) должны были работать на больших и малых вычислительных системах с большим и малым количеством различных периферийных устройств. Важнейшим достижением ОС этого поколения явилась реализация мультипрограммирования

(многопрограммный режим), режима спулинг и системы разделения времени.

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

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

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

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

Грейс Мюррей Хоппер

(1906–1992)

Первой программисткой (кодировщиком) принято считать Грейс Мюррей Хоппер. В разгар второй мировой войны Хоппер поступила в резерв ВМФ США и в июне 1944 г. получила офицерское звание.

При росте 150 см и весе 47,5 кг она была, несомненно, самым

маленьким морским офицером. Однако ее роль в те годы можно считать огромной. Младший лейтенант Хоппер была включена в команду ВМФ, которая разрабатывала программы для гарвардского "Марка-1". Хоппер и ее коллеги Роберт Кэмпбел и Ричард Блок

заложили прочный фундамент методов программирования. Ведь

ещё в 1952 г. Мюррей Хоппер сообщила миру о появлении первого компилятора под названием A-0, который переводил символический математический код в понятные машине команды, выделял память компьютера и т.д. Кроме того, каждой "подпрограмме" Хоппер дала

определенный номер, так что машина легко могла находить их на

магнитной ленте. В конце 1956 г. под руководством Грейс был создан компилятор B-0, известный позднее как FLOW-MATIC и продававшийся вместе с компьютерами "Юнивак – I" и "Юнивак – II".

FLOW-MATIC, ориентированный на обработку коммерческих приложений, оказал сильное влияние на появившийся позднее COBOL. Над COBOL работали многие члены команды Хоппер, но и сама Грейс оказала помощь при создании этого популярного языка программирования.

Наибольших успехов в программировании первых ЭВМ достиг Алан Тьюринг на машине Манчестерский Марк I, разработавший основные принципы работы операционных систем. Первой в мире операционной системой считается GM OS (General Motors Operating

System).

появлялась и новая операционная система, и приложения приходилось приспосабливать, перекомпилировать и перепроверять.

Первой в мире операционной системой считается GM OS (General Motors Operating System),

разработанной в исследовательской лаборатории Дженерал Электрик (General Motors

Research Laboratories and North American Aviation) Робертом Пэтриком в 1955 г. для работы на IBM-701.

В1956 г. там же была разработана ОС GM-NAA I/O для IBM-704, которая предусматривала

автоматическое исполнение новой программы при окончании предыдущей задачи.

В1957 г. компанией Bell была разработана операционная система BESYS (Bell Operation System) также для IBM-704.

В1958 г. в университете г. Мичиган США была разработана ОС UMES (University of Michigan Executive System) для IBM-704, IBM-709 IBM-7090, которая успешно использовалась в

университете до 1967 г. вплоть до запуска MTS (Michigan Terminal System) для System/360 model 67.

В1959 г. была разработана SHARE Operation System, как улучшенная версия ОС GM-NAA I/O

с разделением задач для IBM-704, IBM-7090 и IBM-7094.

В1960 г. IBM разрабатывает свою ОС IBSYS для IBM-7090 и IBM-7094, а в 1961 г. первую

операционную систему с разделением времени CTSS (Compatible Time Sharing System).

В1961 выпускается первая ОС разделения времени CTSS (Compatible Time-Shearing Systems).

С 1965 по 1972 г.г. для System/360 были разработаны следующие операционные системы:

BOS/360 (Basic OS/360); TOS (Tape OS/360); TSS/360 (Time Sharing System/360); MTS (Michigan Terminal System); MUSIC (Multi-User System for Interactive Computing/System Product)

и др.

В 1960-х г.г. IBM начала разрабатывать единую операционную систему для серии машин System/360, OS/360. IBM выпустила ещё несколько операционных систем, среди них три оказались наиболее долгоживущими: S/MFT для систем среднего класса. Она имела одного преемника, систему OS/VSI, развитие которой продолжалось до 1980-х. OS/MVT для крупных машин. Она была сходна с OS/MFT (программы могли переноситься между ними без перекомпилирования), но имела более продвинутое управление памятью и систему разделения времени, TSO. MVT имела несколько наследников, включая z/OS. DOS/360 для низших моделей System/360 имела несколько преемников, включая z/VSE, используемую до настоящего времени. Она значительно отличалась от OS/MFT и OS/MVT.

IBM поддерживает полную совместимость, поэтому разработанные в шестидесятых программы всё ещё можно запускать под z/VSE (если они создавались для DOS/360) или z/OS (если создавались для OS/MFT или OS/MVT) без изменений.

IBM разрабатывала, но официально не выпустила TSS/360, операционную сиcтему с разделением времени для S/360 Model 67.

Несколько операционных систем для архитектур IBM S/360 и S/370 были разработаны другими фирмами: Control Data Corporation разработала операционную систему SCOPE в 1960-х для обработки пакетных заданий. В сотрудничестве с Университетом Миннесота были созданы операционные системы KRONOS и NOS в 1970-х, которые поддерживали одновременный запуск заданий и разделение времени.

в конце 1970-х Control Data и Университет Иллинойс разработали машину PLATO, привнесшей множество инноваций для своего времени. Система использовала язык программирования TUTOR, что позволило создавать такие программы, как чат в реальном времени и многопользовательские графические игры. UNIVAC, первый производитель коммерческих компьютеров, создала серию операционных систем EXEC. Как большинство ранних операционных систем для мейнфреймов, это были операционные системы, ориентированные на обработку пакетных заданий. В 1970-х UNIVAC выпустила систему Real-Time Basic. Burroughs Corporation представила машину B5000 в 1961 с операционной системой MCP (Master Control Program). B5000 поддерживала исключительно языки высокого уровня и не поддерживала машинные языки или ассемблер; таким образом, MCP стала первой операционной системой, написанной только на высокоуровневом языке (ESPOL, диалект Алгола). MCP также представила несколько инноваций, включая первую коммерческую реализацию виртуальной памяти. MCP по сей день используется на компьютерах

Unisys ClearPath/MCP.

Project MAC разработал Multics и General Electric Comprehensive Operating Supervisor (GECOS), в которых была введена концепция уровней привилегий.

В 1960-х г.г. IBM начала разрабатывать единую операционную систему для этих серии машин System/360, OS/360. IBM выпустила ещё несколько операционных систем, среди них три оказались наиболее долгоживущими: S/MFT для систем среднего класса. Она имела одного преемника, систему OS/VSI, развитие которой продолжалось до 1980-х. OS/MVT для крупных машин. Она была сходна с OS/MFT (программы могли переноситься между ними без перекомпилирования), но имела более продвинутое управление памятью и систему разделения времени, TSO. MVT имела несколько наследников, включая z/OS. DOS/360 для низших моделей System/360 имела несколько преемников, включая z/VSE, используемую до настоящего времени. Она значительно отличалась от OS/MFT и OS/MVT.

IBM поддерживает полную совместимость, поэтому разработанные в шестидесятых программы всё ещё можно запускать под z/VSE (если они создавались для DOS/360) или z/OS (если создавались для OS/MFT или OS/MVT) без изменений.

IBM разрабатывала, но официально не выпустила TSS/360, операционную сиcтему с разделением времени для S/360 Model 67.

Несколько операционных систем для архитектур IBM S/360 и S/370 были разработаны третьими фирмами, включая Michigan Terminal System (MTS) и

MUSIC/SP.

в 1980 году в фирме Seattle Computer Products. Первоначально названная QDOS, ОС была модифицирована и, переименовавшись к концу года в MS-DOS, была продана Microsoft. Корпорация IВМ поручила Microsoft работу над ОС для новых моделей компьютеров IВМРС. В конце 1981 года вышла первая версия новой ОС - РС-DOS 1.0. Проблема операционной системы была в том, что под каждую конкретную машину ее приходилось настраивать заново.

РС-DOS'ом занялась сама IВМ, а Микрософту досталась ее собственная модификация, именуемая MS-DOS. Microsoft DOS'ами не занималась.

В 1982-м одновременно появились РС-DOS и МS-DOS версии 1.1 с некоторыми добавленными и расширенными возможностями. К 1983-му году были разработаны версии

2.0, в которых появилась поддержка винчестеров, а также улучшенная система

администрирования файлов. Третья версия MS-DOS, выпущенная в 1984-м году, дала лишь некоторые улучшения. Последующие версии были направлены на управление базовой и виртуальной памятью вплоть до версии 6.22, после которой появилась урезанная 7.0, входящая в состав какой-то из Windows 9х. Далее MS-DOS не получили развития.

IBM организовала совместный проект компаний Microsoft и IВМ, нацеленный на создание операционной системы, для серверных станций. Первая версия 0S/2 вышла в конце 1987 года. Она была в состоянии использовать развитые вычислительные возможности процессора и обладала средствами обеспечения связи с большими машинами фирмы IВМ. В 1993 году фирма IВМ выпустила 0S/2 2.1, полностью 32-разрядную систему, обладавшую способностью выполнять приложения, созданные для Windows, имевшую высокую производительность и поддерживающую большое количество периферийных устройств. В 1994 году вышла 0S/2 WARP 3. В этой реализации, помимо дальнейшего повышения производительности и снижения требований к аппаратным ресурсам, появилась поддержка работы в Интернете.

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

Итак, все началось в далеком 1965-м... Четыре года компания American Telegraph & Telephone Bell Labs

совместно с фирмой General Electric и группой исследователей из Масачусетского технологического института творила проект Os Multics (также именуемый MAC - не путать с МасOS).

Проект был закрыт. Кстати, участниками проекта значились Кен Томпсон и Денис Ритчи. Несмотря на то, что проект был закрыт, считается, что именно ОС Multics дала начало ОС Unix.

Для 18-разрядного компьютера РDР-7. Кен Томпсон с сотрудниками разрабатывал новую файловую систему, затем начал ее усовершенствовать, включив такие функции как inodes, подсистему управления процессами и памятью, обеспечивающую использование системы двумя пользователями в режиме TimeSharing'а (разделения времени) и простой командный интерпретатор. Он даже разработал несколько утилит под систему. Таким образом в ноябре 1971 года появилась «Первая редакция UNIX». И был опубликован первый выпуск полноценной версии. ОС была написана на ассемблере.

Денис Ритчи (смотрите фото слева) написал собственный язык,

известный сейчас как СИ. Именно на нём была написана 4-я редакция UNIX в 1973 году. В июле 1974 года вышла 5-я версия UNIX. Шестая редакция UNIX (аkа UNIX V6), выпущенная в 1975 году, стала первым коммерчески распространяемым Юниксом. Большая ее часть была написана на СИ.

Позже была полностью переписана подсистема управления оперативной и виртуальной памятью, заодно изменили интерфейс драйверов внешних устройств. Все это позволило сделать систему легко переносимой на другие архитектуры и было названо «Седьмая редакция» (aka UNIX version 7). Когда в 1976 году в Университет Беркли попала «шестерка», там возникли местные юникспрофессионалы. Одним из них был Билл Джой.