МИНОБРНАУКИ РОССИИ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ УПРАВЛЕНИЯ

Индивидуальное домашнее задание

по дисциплине

«Алгоритмические языки»

«Общие сведения о UNIX-подобной операционной системе. Описание и использование заданной группы команд командной строки Windows»

подпись, дата

фамилия, инициалы

Тищенко А.Д.

ученая степень, звание

подпись, дата

фамилия, инициалы

Липецк 2010

Задание кафедры

    Общие сведения об операционной системе и интерфейсе, представленном интерпретатором языка командной строки.

    Описание и примеры использования заданной группы команд.

Аннотация

Работа содержит 27 страниц

Рисунков нет

Общие сведения о UNIX:

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

    Возникновение и первая редакция ОС UNIX…………………………………………….стр.6

    Пользователь………………………………………………………………………………...стр.9

    Интерфейс пользователя и интерфейсе, представленном интерпретатором языка командной строки………………………………………………………………………….....................стр.10

    Общая организация ядра………………………………………………………………… .стр.13

1)Основные функции……………………………………………………………………стр.13

2)Принципы взаимодействия с ядром………………………………………………………………...................................стр.14

    Файловая система…………………………………………………………………………..стр.15

1)Структура файловой системы………………………………………………………...стр.16

2)Монтируемые файловые системы……………………………………………………стр.17

3)Защита файлов…………………………………………………………………………стр.17

    Драйверы устройств………………………………………………………………………..стр.18

    Управление памятью……………………………………………………………………….стр.19

    Описание и примеры использования заданной группы команд………………………... стр.20

1)Команда PAUSE………………………………………………………………………..стр.20

2)Команда POPD………………………………………………………………………….стр.21

3)Команда PRINT…………………………………………………………………………стр.21

4)Команда PROMT………………………………………………………………………..стр.22

5)Команда PUSHD………………………………………………………………………...стр.23

6)Команда RD……………………………………………………………………………...стр.24

7)Команда RECOVER…………………………………………………………………….стр.24

8)Команда REM……………………………………………………………………………стр.25

9)Команда REN…………………………………………………………………………….стр.25

10. Библиографический список……………………………………………………………….стр.27

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

С 1965 по 1969 год компания Bell Labs совместно с компанией General Electric и группой исследователей из Массачусетского технологического института участвовала в проекте ОС Multics (MULTIplexed Information and Computing Service). Целью проекта было создание многопользовательской интерактивной операционной системы, обеспечивающей большое число пользователей удобными и мощными средствами доступа к вычислительным ресурсам

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

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

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

Обширное и бурно развивающееся семейство Unix оказало огромное идейное влияние на развитие операционных систем в 80-е и 90-е годы XX столетия. Генеалогия систем семейства опубликована на сайте [perso.wanadoo.fr ] и слишком обширна для того, чтобы ее можно было полностью привести в книге.

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

Родоначальником семейства следует, по-видимому, считать не первую версию Unix, а Multics , совместно разрабатывавшуюся в 1965-1969 гг. General Electric и Bell Laboratories . За это время General Electric выделило подразделение, занимавшееся работами над Multics и аппаратной платформой для нее (GE-645), в отдельную компанию Honeywell .

Multics была первой из промышленных систем, предоставлявших:

  • создание процессов системным вызовом fork;
  • страничную виртуальную память;
  • отображение файлов в адресное пространство ОЗУ;
  • вложенные каталоги;
  • неструктурированные последовательные файлы;
  • управление доступом на основе ограниченных ACL (колец доступа).

Multics оказала огромное влияние не только на разработчиков Unix - значительные следы идейного влияния этой системы прослеживаются так же в RSX-11 и VAX/VMS фирмы DEC. Последние Multics-системы были доступны в Internet в 1997 г.

В 1969 г. Bell Laboratories отказалась от работ над Multics и начала разработку собственной ОС для внутренних нужд. По-видимому, основной причиной этого шага было осознание несоответствия между амбициозными целями проекта Multics (ОС была весьма требовательна к ресурсам и могла работать только на больших компьютерах Honeywell), в то время как материнской компании Bell Labs - American Telephone & Telegraph - требовалась единая операционная среда, способная работать на различных миникомпьютерах, используемых в подразделениях телефонной сети США.

В Bell Laboratories был объявлен внутренний конкурс на разработку переносимой ОС, способной работать на миникомпьютерах различных поставщиков. К проекту были предъявлены следующие основные требования:

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

Один из участников работ над Multics , К. Томпсон, разработал крайне упрощенное ядро ОС, названное UNIX, для миникомпьютера PDP-7. К 1972 г. К. Томпсон и Д. Ритчи переписали ядро системы в основном на языке С и продемонстрировали возможность переноса ОС на миникомпьютеры PDP-11. Это обеспечило выполнение всех требований конкурса, и UNIX была признана основной платформой для вычислительных систем, эксплуатируемых в AT&T.

Легенды доносят до нас более колоритные детали ранних этапов истории новой системы. Так, одна из очень популярных легенд, излагаемая в той или иной форме несколькими источниками, утверждает, что история UNIX началась с разработанной для Multics игровой программы под названием Star Wars (звездные войны - сама эта программа и даже правила игры до нас не дошли). Уволенный из группы разработчиков Multics за разгильдяйство (мы приводим здесь наиболее радикальный вариант легенды, не заботясь о его согласовании с историческими фактами), Томпсон занялся "оживлением" неиспользуемой PDP-7, стоявшей в углу машинного зала. Оживление заключалось в написании ядра ОС, реализующего подмножество функциональности Multics, достаточное, для того чтобы перенести и запустить его любимые Star Wars [Бах 1986].

Первые версии UNIX были рассчитаны на машины без диспетчера памяти. Процессы загружались в единое адресное пространство. Ядро системы размещалось в нижних адресах ОЗУ, начиная с адреса 0, и называлось сегментом реентерабельных процедур . Реентерабельность обеспечивалась переустановкой стека в момент системного вызова и запретом переключения задач на все время исполнения модулей ядра. На машинах с базовой адресацией выполнялось перемещение образов процессов по памяти и сброс образа процесса на диск (задачный своппинг).

В Multics и современных системах Unix, fork реализуется посредством копирования страниц при модификации. Ранние версии UNIX физически копировали образ процесса. Большая часть (по некоторым оценкам, до 90%) fork немедленно продолжается исполнением системного вызова exec , поэтому одной из первых оптимизаций, придуманных в университетских версиях системы, было введение системного вызова vfork . Порожденный этим вызовом процесс исполнялся на самом образе родителя, а не на его копии. Создание нового образа процесса происходило только при исполнении exec . Для того чтобы избежать возможных проблем взаимоисключения (например, при вызове нереентерабельных функций стандартной библиотеки), исполнение родителя приостанавливалось до тех пор, пока потомок не выполнит exec или не завершится.

Выделяют [Баурн 1986] следующие отличительные особенности системы.

  • Порождение процессов системным вызовом fork , который создает копию адресного пространства в пользовательской области процесса.
  • Результат завершения процесса хранится в его дескрипторе и может быть считан только родителем. В списке процессов такой дескриптор выглядит как процесс в специальном состоянии, называемом зомби (zombie ).
  • Процессы-сироты (продолжающие исполнение после завершения родителя) усыновляются процессом с идентификатором, равным 1.
  • Процесс с идентификатором 1 запускается при загрузке системы (по умолчанию это /bin/ink ) и запускает все остальные обязательные задачи в системе. Наличие такого процесса иногда объявляют необходимым и достаточным критерием для причисления той или иной системы к семейству Unix.
  • Древовидная структура пространства имен файловой системы: дополнительные ФС монтируются в те или иные точки корневой ФС и идентифицируются затем точкой монтирования, а не именем устройства, на котором расположены.
  • Файлы рассматриваются ОС как неструктурированные потоки байтов и не типизованы на уровне ОС (в частности, на уровне ОС нет деления файлов на записи).
  • Файловая система поддерживает множественные имена файлов в виде жестких и, у более поздних версий, символических связей.
  • Отложенное удаление файлов: если процесс открыл файл, а другой процесс его удалил, то первый процесс может продолжать работу с файлом, и физическое удаление происходит только после того, как первый процесс его закроет.
  • Лозунг "все - файл", который, впрочем, последовательно реализован только в экспериментальной системе Plan 9 - в реальных Unix системах практически всегда присутствуют объекты, к которым не применимы файловые операции: переменные среды, структуры данных ядра в ранних версиях (позднее они были оформлены в виде псевдофайловой системы /ргос ), объекты SysV IPC и примитивы взаимоисключения POSIX Thread Library в современных системах.
  • Своеобразный командный язык, основанный на широком применении переназначения ввода-вывода и конвейеров (последовательностей задач, соединенных трубами).

Некоторые из перечисленных особенностей были позаимствованы другими ОС. Так, переназначение ввода-вывода и конвейеры реализуются командными процессорами ОС семейства СР/М, начиная с MS DOS 3.30. cmd.exe - командный процессор OS/2 и Windows NT/2000/XP - даже правильно понимает конструкцию cmdiine | more 2>&1 . Стандартные командные процессоры UNIX портированы практически на все современные ОС. Функциональный аналог Korn Shell включен в стандартную поставку Windows 2000.

Жесткие связи файлов (однако, без отложенного удаления) поддерживаются FCS2 (файловой системой VAX/VMS), NTFS и jfs при использовании под OS/2. Точки монтирования (подключение дополнительных ФС в дерево каталогов существующей ФС) реализованы в Windows 2000 и Toronto Virtual File System для OS/2.

Системный вызов CreateProcess Windows NT/2000/XP может имитировать семантику fork: для этого достаточно передать в качестве имени программы для нового процесса пустой указатель.

Библиотека ЕМХ для OS/2 реализует fork при помощи собственного обработчика страничного отказа.

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

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

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

Вопрос 30. Сравнительная характеристика ОС Multics и ОС Unix. Определение понятия операционная система.

Итак, все началось в далеком 1965-м... Четыре года компания American Telegraph & Telephone Bell Labs совместно с фирмой General Electric и группой исследователей из Масачусетского технологического института творила проект Os Multics (также именуемый MAC - не путать с МасOS). Целью проекта было создание многопользовательской интерактивной операционной системы, обеспечивающей большое число пользователей удобными и мощными средствами доступа к вычислительным ресурсам.

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

Помимо этого, в Multics наличествовал большой объем виртуальной памяти, что позволяло делать имэйджи файлов из внешней памяти в виртуальную. Увы, но все попытки наладить в системе относительно дружественный интерфейс провалились. Было вложено много денег, а результат был несколько иной, нежели хотелось ребятам из Bell Labs. Проект был закрыт. Кстати, участниками проекта значились Кен Томпсон и Денис Ритчи. Несмотря на то, что проект был закрыт, считается, что именно ОС Multics дала начало ОС Unix.


На сегодняшний момент операционная система Windows фирмы Microsoft во всех ее проявлениях, бесспорно, считается самой распространенной опера ­ ционной системой на ПК: в мире более 150 млн. IBM PC- совместимых компьютеров, и система Windows установлена на 100 млн. из них. Очевидно, что озна ­ комление с ПК необходимо начинать с ознакомления с Windows, ведь без нее работа на ПК немыслима для большинства пользователей. Знание системы Windows - необходимый кирпичик в стене познания ПК. Операционные системы, развиваясь вместе с ЭВМ, прошли длинный путь от простейших программ в машинных кодах длинной в несколько килобайт до монстров, написанных на языках высокого уровня, размер которых исчисляется десятками мегабайт.


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


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


UNIX Разработчик и основоположник ОС Unix Кен Томпсон (см. фото) создал игру «Space Travel». Но ни на Honeywell, ни имевшийся в лаборатории General Electric-645 не подходили для игрушки. И Кену пришлось найти другую ЭВМ разрядный компьютер Р D Р -7. Кен с командой разрабатывал новую файловую систему, дабы облегчить себе работу. Томпсону этого показалось мало и он начал ее усовершенствовать Собственно, сотрудники Кена еще помнили, как они мучались над ОС Multics, поэтому в честь старых заслуг один из них - Брайан Керниган - решил назвать ее похожим именем - UNICS. Через некоторое время название сократили до UNIX


Первые - от I ВМ, году в х, они были весьма ограничены функционально. Нормальные, дошедшие и до наших времен, и пользовавшиеся относительной известностью, ведут свой счет с QDOS Корпорация I ВМ поручила Microsoft работу над ОС для новых моделей компьютеров « Голубого Гиганта » - I ВМ - РС. Проблема операционной системы была в том, что под каждую конкретную машину ее приходилось настраивать заново. РС - DOS" ом занялась сама I ВМ, а Микрософту досталась ее собственная модификация, именуемая MS-DOS. К му году были разработаны версии 2.0, в которых появилась поддержка винчестеров, а также улучшенная система администрирования файлов.


Все началось с OC VM (Virtual Machine), что вышла в 1972 году. Выпущенный тогда продукт назывался VM/370 и был предназначен для поддержания сервера для определенного количества пользователей. Система VM/ESA очень эффективно использует возможности аппаратного обеспечения и несколько менее требовательна к вычислительным ресурсам компьютера по сравнению с OS/390, что делает ее хорошим вариантом для использования в качестве платформы для корпоративной системы, Пройдя довольно большой и сложный путь, эта ОС для персональных компьютеров обладает сегодня такими особенностями, как реальная многозадачность, продуманные и надежные подсистемы управления памятью и администрирования процессов.


Windows, разработана Биллом Гейтсем (смотрите фото слева) Что в ней такого особенного? Во - первых, графический интерфейс. Во - вторых, многозадачность. Ключевой идеей Windows является обеспечение полной независимости программ от аппаратуры. Система Windows изначально создавалась так, чтобы полностью взять на себя общение с конкретным типом дисплея или принтера. Как пользователю, так и программисту, создающему приложение под Windows предоставлены универсальные средства, снимающие проблему обеспечения совместимости с конкретной аппаратурой (аппаратная совместимость) и программным обеспечением (программная совместимость).


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


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


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


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