Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Многопользовательские операционные системы. Ч. 1

Покупка
Артикул: 753125.01.99
Доступ онлайн
2 000 ₽
В корзину
Первая часть курса лекций «Многопользовательские операционные системы», много лет преподаваемого на кафедре инженерной кибернетики МИСиС, содержит материал трех тем. Первая посвящена основным понятиям современных операционных систем. Во второй рассмотрены история и генеалогия семейства UNIX/Linux. И наконец, в третьей теме излагаются основы интерфейса, который обеспечивает современные операционные системы как в графическом режиме, так и с использованием командной строки. Материал практикума соответствует учебному плану курса «Многопользовательские операционные системы». Предназначен для студентов специальности 230401 «Прикладная математика».
Широков, А. И. Многопользовательские операционные системы. Ч. 1 : курс лекций / А. И. Широков, В. А. Грузман, С. В. Никифоров ; под. ред. Ю. Ю. Прокопчука, Н. В. Крапухиной. - Москва : ИД МИСиС, 2007. - 105 с. - Текст : электронный. - URL: https://znanium.com/catalog/product/1232726 (дата обращения: 22.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
№ 785

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Кафедра инженерной кибернетики

А.И. Широков
В.А. Грузман
С.В. Никифоров

Многопользовательские
операционные системы

Курс лекций

Часть 1

Под редакцией кандидатов технических наук
Ю.Ю. Прокопчука, Н.В. Крапухиной

Допущено УМО по образованию в области Прикладной
математики и управления качеством в качестве учебного
пособия для студентов высших учебных заведений,
обучающихся по направлению подготовки 230400
´Прикладная математикаª специальности 230401
´Прикладная математикаª

Москва  Издательство ´УЧЕБАª
2007

 

УДК 004.45 
 
Ш64 

Р е ц е н з е н т  
д-р техн. наук, проф. В.М. Вишневский (МФТИ) 

Широков А.И., Грузман В.А., Никифоров С.В. 
Ш64  
Многопользовательские операционные системы: Курс лекций. Ч. 1 / Под ред. Ю.Ю. Прокопчука, Н.В. Крапухиной. – М.: 
МИСиС, 2007. – 105 с. 

Первая часть курса лекций «Многопользовательские операционные системы», много лет преподаваемого на кафедре инженерной кибернетики МИСиС, 
содержит материал трех тем. Первая посвящена основным понятиям современных операционных систем. Во второй рассмотрены история и генеалогия семейства UNIX/Linux. И наконец, в третьей теме излагаются основы интерфейса, который обеспечивает современные операционные системы как в графическом режиме, так и с использованием командной строки. 
Материал практикума соответствует учебному плану курса «Многопользовательские операционные системы». 
Предназначен для студентов специальности 230401 «Прикладная математика».  

© Государственный технологический  
университет «Московский институт 
стали и сплавов» (МИСиС), 2007 

ОГЛАВЛЕНИЕ 

Введение......................................................................................................5 
Тема 1. Понятие об операционных системах на примере семейства 
UNIX/Linux.................................................................................................7 
1.1. Структура компьютера и задачи, решаемые его отдельными 
элементами ..............................................................................................7 
1.2. Взаимодействие пользователей с компьютером.........................21 
1.3. Определение термина «Операционная система»........................25 
Приложение. Классификация аппаратных и компьютерных 
платформ ...............................................................................................30 
П1.1. Типы аппаратных платформ ..................................................30 
П1.2. Классификация программного обеспечения ........................32 
П1.3. Определение термина «Компьютерная платформа» ...........34 
Вопросы для самопроверки. ................................................................36 
Тема 2. История и основные черты семейства операционных 
систем UNIX/Linux..................................................................................37 
2.1. История семейства операционных систем UNIX/Linux............38 
2.1.1. Первые шаги............................................................................38 
2.1.2. Генеалогия...............................................................................47 
2.1.3. Некоторые известные версии UNIX .....................................56 
2.2. Основные стандарты, связанные с UNIX....................................64 
2.2.1. Деятельность комитетов POSIX ...........................................65 
2.2.2. System V Interface Definition (SVID) .....................................69 
2.2.3. Деятельность X/Open, OSF и The Open Groupe................70 
2.2.4. Другие стандарты семейства UNIX (BSD, Lsb) ..................71 
2.2.5. Стандарты языка программирования C................................71 
2.3. Значения термина UNIX ...............................................................72 
2.4. Отличия UNIX/Linux от Windows и MS DOS...........................75 
Приложение. Основные события в истории семейства 
UNIX/Linux...........................................................................................76 
Вопросы для самопроверки .................................................................80 
Тема 3. Работа на компьютере под управлением операционных 
систем семейства UNIX/Linux................................................................81 
3.1. Компьютерный интерфейс пользователя ....................................81 
3.2. Графический режим операционных систем семейства 
UNIX/Linux...........................................................................................88 
3.2.1. Краткая история X Window system ......................................88 

3.2.2. Основные понятия системы X Window ...............................90 
3.2.3. X Window в Linux..................................................................92 
3.2.4.  Графическая среда KDE........................................................94 
3.2.5. Графическая среда GNOME ..................................................96 
3.3. Командный режим операционной системы Linux.....................97 
3.3.1. Функции оболочки .................................................................98 
3.3.2. Типы и количество команд..................................................100 
3.3.3. Структура командной строки..............................................102 
Вопросы для самопроверки ...............................................................103 
Библиографический список...............................................................104 
 

ВВЕДЕНИЕ 

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

Как уже было отмечено выше, в предложенном курсе лекций наше 
рассмотрение концентрируется на функциях только одной из составляющих системного программного обеспечения – операционной системе. Это реализовано на примере семейства UNIX/Linux, а в лабораторном практикуме [14] нашего курса на одной из версии Linux. Что 
касается других подобных программных комплексов, прежде всего 
продуктов компании Microsoft – Windows, то многие идеи, излагаемые в курсе лекций, реализованы и для них, но при этом ряд деталей и 
терминов может потребовать уточнения. В процессе изложения материала несколько конкретных положений будут проиллюстрированы и 
интерпретированы на основе не только Linux, но и Windows.  
И в заключение отметим, что затронутый в курсе лекций материал 
многообразен, некоторые понятия раскрыть полностью не представилось возможным. Восполнить этот пробел можно подробно изучив 
литературные источники, представленные в библиографическом списке, или ссылки на источники в Интернете, приведенные в тексте.  

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

Тема 1. ПОНЯТИЕ ОБ ОПЕРАЦИОННЫХ 
СИСТЕМАХ НА ПРИМЕРЕ СЕМЕЙСТВА UNIX/LINUX 

1.1. Структура компьютера и задачи, решаемые 
его отдельными элементами 

Компьютер – это устройство для переработки информации. Начнем 
с такого тривиального утверждения, что он делится, прежде всего, на 
две части: аппаратное и программное обеспечение. Но структура программного обеспечения не однородна. В ней выделяют, как минимум, 
две части: системное программное обеспечение и прикладные программы пользователей. В составе первого, прежде всего, следует отметить операционную систему.  
Структура программно-аппаратного комплекса показана на рис 1.1 
[2, с. 18]. 

 
Рис. 1.1. Компоненты компьютерной системы 

В представленной схеме три части компьютера (аппаратное обеспечение, операционная система и приложения) разделены, в свою очередь, на составляющие их элементы. Нижний уровень схемы – аппаратура состоит из отдельных устройств: центральный процессор, дис
ки, CD ROM т.д. Конкретная вычислительная установка может сильно 
отличаться от других по составу, фирме-изготовителю отдельных 
элементов, характеристикам последних. Например, на персональном 
компьютере устанавливают процессор фирмы Intel или AMD разных 
моделей и с широким набором базовых тактовых частот.  
Уровнем выше в схеме располагается та часть программного обеспечения, которая, пожалуй, наиболее идентична (одинакова) у разных 
вычислительных установок определенного типа. Если говорить о 
UNIX, то это ядро. Если взять конкретную версию операционной системы Linux, то ее ядро представляет собой один исполнимый файл. 
Но его функциональность, определяемая составом включенных компонент, зависит, в том числе, и от состава аппаратной части компьютера. Но есть общая часть, присущая всем реализациям определенной 
версии Linux. Аналогичное можно утверждать и относительно операционной системы Windows: все конкретные ее реализации имеют 
идентичный (одинаковый) базовый состав компонент. В рассматриваемой схеме операционная система, в соответствии со своими главными задачами, представлена двумя подсистемами: управление аппаратурой и управление всеми остальными программами – приложениями.  
И наконец, верхний уровень формируется из программ, состав которых различен для конкретных вычислительных установок. Какие 
прикладные программы или приложения будут установлены, например, на персональном компьютере, зависит от его назначения и, в отличие от операционной системы, их состав может широко изменяться 
в процессе эксплуатации.  
Теперь расширим представление об уровнях компьютерной системы и выделим «слои» в его аппаратной части. Приведем следующую 
схему (рис. 1.2) [12, с. 22]. 
Нижний уровень составляют собственно физические устройства. 
Современные компьютерные системы объединяют в себе множество 
элементов: процессор, память, дисковые накопители, мониторы и т.д. 
Именно их набор расположен внизу схемы. Такие устройства являются предметом забот множества инженеров-электронщиков, обслуживающих и ремонтирующих компьютеры. 

Рис. 1.2. Основные части компьютерной системы 

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

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

процессами, 
файлами, 
вводом/выводом. 

 

Рис. 1.3. Внутренняя структура UNIX 

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