Разделы презентаций


ОП.14 Основы функционирования UNIX - систем

Содержание

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

Слайды и текст этой презентации

Слайд 1ОП.14 Основы функционирования UNIX - систем


занятие 02

ОП.14  Основы функционирования UNIX - системзанятие 02

Слайд 2Основы организации UNIX
Рассмотрим основные принципы, на которых базируется операционная система

UNIX:
1. Операционная система должна быть максимально надежной — это

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

Слайд 3Основы организации UNIX
В более уз­ком смысле надежность

означает, что система должна по

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

Слайд 4Основы организации UNIX
Принципиально избежать отказов нельзя — аппаратные средства имеют

свойство давать сбои, а приложения пользователя, впрочем, как и программные

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

Слайд 5Основы организации UNIX
Операционная система UNIX изначально

проектировалась как отказоустойчивая система.
Несмотря на некоторые различия

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

Слайд 6Основы организации UNIX
Вот основные из них:
• разделение

программного кода операционной системы и пользовательских приложений. В

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

Слайд 7Основы организации UNIX
Если, например, пользовательский процесс попытается напрямую, минуя стандартные

вызовы операционной системы, обратиться к жесткому диску, то механизмы

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

Слайд 8Основы организации UNIX
• использование механизмов

безопасности для доступа пользовательских

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

Слайд 9Основы организации UNIX
• использование механизмов резервного копирования и восстановления

данных, включая полное восстановление сис­темы.

Основы организации UNIX•  использование механизмов резервного копирования и восстановления данных, включая полное восстановление сис­темы.

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

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

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

Слайд 11Основы организации UNIX
Операционные системы, допускаю­щие работу в

таком режиме, называются многопользователь­скими.
Операционная система UNIX выполняет множе­ство

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

Слайд 12Основы организации UNIX
В UNIX все ресурсы, к которым

может иметь доступ процесс, являются

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

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

программный интерфейс как для работы с файлами данных, так и

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

Слайд 14Основы организации UNIX
Перечисленные особенности UNIX делают ее

очень удобной средой для функционирования

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

Слайд 15Основы организации UNIX

Основы организации UNIX

Слайд 16Основы организации UNIX
Основой операционной системы UNIX является ядро, которое

взаимодействует, с одной стороны, с аппаратными средствами, а с

другой стороны обеспечивает работу пользовательских про­грамм.
Часть функций операционной системы выполняется системными процессами, реализованными, как правило, в форме процессов-серверов, более известных под на­званием "демон" (daemon), и его основная функция — выполне­ние запросов на обслуживание клиентских процессов.
Основы организации UNIXОсновой операционной системы UNIX является ядро,  которое  взаимодействует, с одной стороны, с аппаратными

Слайд 17Основы организации UNIX
Уровень интерфейса системных вызовов отвечает за взаимодей­ствие программ

пользователя и операционной системы.
Ни одна программа пользователя

не может получить доступ к ресурсам системы иначе, как посредством системных вызовов.
В качестве примеров системных вызовов можно привести низ­коуровневые функции ввода/вывода, такие как open (), read (), write () и close ().
Основы организации UNIXУровень интерфейса системных вызовов отвечает за взаимодей­ствие программ пользователя и операционной системы. Ни одна программа

Слайд 18Основы организации UNIX
Системные вызовы обеспечивают выполнение целого ряда опе­раций:

трансляции операций пользователя в запросы

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

Слайд 19 Основы организации UNIX Ядро
Ядро операционной системы UNIX отвечает за выполнение

ба­зовых функций системы:
- управление процессами;


- управление файловой системой;
- управление устройствами ввода/вывода;
- Управление безо­пасностью системы.
Функционирование операционной системы в основном определяется ядром.
Основы организации UNIX Ядро Ядро операционной системы UNIX отвечает за выполнение ба­зовых  функций  системы:

Слайд 20Во многих версиях операционной системы UNIX ядро реализо­вано в виде

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

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

Основы организации UNIX Ядро

Во многих версиях операционной системы UNIX ядро реализо­вано в виде большого исполняемого дискового файла, который запускается в

Слайд 21Модульное ядро содержит базовые компоненты, необходимые для загрузки системы, при

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

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

Основы организации UNIX Ядро

Модульное ядро содержит базовые компоненты, необходимые для загрузки системы, при этом дополнительные модули программ­ного кода (обычно это

Слайд 22Преимуществом модульного ядра является то, что базовый мо­дуль ядра имеет

небольшой размер, быстрее загружается и тре­бует меньше ресурсов

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

Основы организации UNIX Ядро

Преимуществом модульного ядра является то, что базовый мо­дуль ядра имеет небольшой размер,  быстрее загружается и тре­бует

Слайд 23В большинстве современных операционных систем UNIX

используется комбинированный тип ядра, которое, обладая широ­ким диапазоном функциональности, допускает

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

Основы организации UNIX Ядро

В  большинстве  современных  операционных систем  UNIX используется комбинированный тип ядра, которое, обладая широ­ким

Слайд 24Еще одна особенность функционирования ядра

современных UNIX-систем — возможность одновременного выполнения не­скольких потоков.
Поток можно

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

Основы организации UNIX Ядро

Еще  одна  особенность  функционирования  ядра  современных  UNIX-систем — возможность одновременного выполнения

Слайд 25Высокая эффективность многопоточности объясняется тем,

что синхронизация отдельных потоков одного и того же про­цесса

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

Основы организации UNIX Ядро

Высокая  эффективность  многопоточности  объясняется  тем,  что синхронизация отдельных потоков  одного и

Слайд 26В этом случае многопо­точные приложения выполняются как совокупность элементар­ных (lightweight)

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

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

Основы организации UNIX Ядро

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

Слайд 27Еще одной особенностью ядра UNIX является и то, что оно

функционирует в режиме невытесняющей многоза­дачности (non-preemptive multitasking).
Это означает, что

система не может прерывать выполнение процесса, выполняющегося в режиме ядра.

Основы организации UNIX Ядро

Еще одной особенностью ядра UNIX является и то, что оно функционирует в режиме невытесняющей многоза­дачности (non-preemptive multitasking).

Слайд 28Ядро UNIX обеспечивает выполнение следующих функций:
• синхронизация процессов

(создание, выполнение, остановка и завершение процессов);
• планирование приоритетов

выполнения (выделяется интервал времени);
• распределение памяти выполняемым процессам — при этом каждому процессу выделяется определенный объем памяти.

Основы организации UNIX Ядро

Ядро UNIX обеспечивает выполнение следующих функций:  • синхронизация процессов (создание, выполнение, остановка и завершение процессов);

Слайд 29• создание, изменение и удаление файловых систем, расположенных на

устройствах постоянного хранения информации (выделение

дискового пространства), а также управление данными пользователей.
• управление доступом процессов к периферийным устройст­вам ввода/вывода, таким как терминалы, накопители на маг­нитных лентах и сетевое оборудование.

Основы организации UNIX Ядро

• создание, изменение и удаление файловых систем, расположенных  на  устройствах  постоянного  хранения

Слайд 30Ядро операционной системы является прозрачным для пользо­вательской программы.
Это означает,

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

системы скрыты от пользователя.
Например, если программа пользователя обраща­ется к какому-либо файлу и записывает в него данные, то ядро системы выполняет приблизительно такую последовательность действий:
1. Определяет местоположение файла на носителе.

Основы организации UNIX Ядро

Ядро операционной системы является прозрачным для пользо­вательской программы. Это означает, что детали взаимодействия программы  пользователя

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

секторах накопителя.
3. Определяет место записи блока данных в

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

Основы организации UNIX Ядро

2.  Получает информацию о расположении требуемых данных в физических секторах накопителя. 3.  Определяет место записи

Слайд 32Программа или, по-другому, приложение представляет собой

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

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

Основы организации UNIX Ядро
Программы, процессы и потоки

Программа или,  по-другому,  приложение  представляет  собой  исполняемый файл, вызываемый операционной системой для

Слайд 33Термин "процесс" — это ключевое понятие в UNIX.
В первом

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


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

Основы организации UNIX Ядро
Программы, процессы и потоки

Термин

Слайд 34Обобщая, можно сказать, что всякий раз, когда

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


Из этого правила есть исключения, например, запуск команды cd, но подобные случаи мы рассматривать не будем.

Основы организации UNIX Ядро
Программы, процессы и потоки

Обобщая,  можно  сказать,  что всякий раз, когда вызывается команда UNIX или запускается пользователь­ская программа,

Слайд 35
Операции, выполняемые при запуске приложения
1. ОС считывает исполняемый файл

програм­мы с диска.
2. Если формат файла программы является кор­ректным,

выполняет системный вызов fork (). При этом яд­ро заносит информацию, относящуюся к созданному процессу, в специальные системные.
3, 4. А также выделяет виртуальную память для кода, данных и стека текущего процесса, после чего управление передает­ся первой инструкции процесса.

Основы организации UNIX Ядро
Программы, процессы и потоки

Операции, выполняемые при запуске приложения1. ОС считывает исполняемый файл програм­мы с диска. 2. Если формат файла

Слайд 36В простейшем варианте исполняемый файл программы выпол­няется как

один процесс, хотя в большинстве

других случаев таких процессов может быть множество.
Следует сказать, что и само ядро системы функционирует как совокупность многих взаимосвязанных процессов.
Ядро системы идентифицирует каждый процесс по его номеру, который называется идентификатором процесса (Process ID, PID). Каждому процессу присваивается уникальный идентифи­катор PID, позволяющий ядру различать процессы.

Основы организации UNIX Ядро
Программы, процессы и потоки

В простейшем варианте исполняемый файл программы выпол­няется  как  один  процесс,  хотя  в

Слайд 37Завершение выполнения процесса инициируется системным вы­зовом exit ().
Ядро

операционной системы отслеживает окончание работы процесса и

освобождает использовавшийся им идентификатор.

Основы организации UNIX Ядро
Программы, процессы и потоки

Завершение выполнения процесса инициируется системным вы­зовом exit (). Ядро  операционной  системы  отслеживает  окончание

Слайд 38Все процессы, выполняющиеся в среде операционной системы UNIX, могут функционировать

либо в пользовательском режиме (User Mode), либо в режиме ядра

(Kernel Mode).
Пользовательский режим не позволяет напрямую обра­щаться к аппаратным ресурсам системы и системным структу­рам данных.
Процесс, выполняющийся в режиме ядра, имеет такую возможность.

Основы организации UNIX Ядро
Программы, процессы и потоки

Все процессы, выполняющиеся в среде операционной системы UNIX, могут функционировать либо в пользовательском режиме (User Mode), либо

Слайд 39До сих пор мы рассматривали механизм создания и выполнения одного

процесса.
В большинстве случаев работающий процесс может

порождать другие процессы, например, при необходимо­сти параллельной обработки данных или клиентских запросов (если это процесс-сервер наподобие telnet, ftp и т. д.).
Как и в рассмотренной ранее схеме запуска процесса, здесь ис­пользуется системный вызов fork ().

Основы организации UNIX Ядро
Программы, процессы и потоки

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

Слайд 40При запуске приложения создается основной процесс, который создает (порождает) процессы

1 и 2, процесс 1 создает процесс 3, а процесс

2 создает процесс 4.
В этом случае говорят, что ос­новной процесс является родительским для процессов 1 и 2, процесс 2 является родительским для процесса 4, а процесс 1 является родительским для процесса 3. В свою очередь, процес­сы 1 и 2 называют дочерними или порожденными основным про­цессом, а процессы 3 и 4 — порожденными для процессов 1 и 2 соответственно.

Основы организации UNIX Ядро
Программы, процессы и потоки

При запуске приложения создается основной процесс, который создает (порождает) процессы 1 и 2, процесс 1 создает процесс

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

кода, но уже в рамках одного и того же процесса

— механизм потоков (threads).
Потоки широко используются как функциями ядра, так и системными сервисами UNIX.

Основы организации UNIX Ядро
Программы, процессы и потоки

В UNIX предусмотрен еще один механизм, обеспечивающий параллельное выполнение прог­раммного кода, но уже в рамках одного и

Слайд 42Существенным отличием потоков от процессов

является то, что поток выполняется в контексте

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

Основы организации UNIX Ядро
Программы, процессы и потоки

Существенным  отличием  потоков  от  процессов  является  то,  что  поток

Слайд 43Для создания потоков во всех версиях операционной системы

UNIX используется функция pthread_create() библиотеки С («Си»), одним из

параметров которой является адрес функции потока.
Функция потока, созданная с помощью функции pthread_create(), соб­ственно и выполняет всю работу.

Основы организации UNIX Ядро
Программы, процессы и потоки

Для создания потоков во всех версиях операционной  системы  UNIX используется функция pthread_create()  библиотеки С

Слайд 44Процесс может ожидать завершения выполнения

потока, вы­полнив функцию

pthread join ().
Сама функция потока может завершаться обычным образом — при этом инструкция return или просто достижение конца функции приводит к неявному завершению работы потока.

Основы организации UNIX Ядро
Программы, процессы и потоки

Процесс  может  ожидать  завершения  выполнения  потока,  вы­полнив функцию

Слайд 45Ранее мы рассмотрели, каким образом создается порожденный процесс, но при

этом возникает закономерный вопрос: каким образом данные одного процесса могут

быть доступны другому процессу?
В операционной системе UNIX для этого предусмот­рен механизм обмена, известный под названием неименованного канала.

Основы организации UNIX Ядро
Взаимодействие процессов

Ранее мы рассмотрели, каким образом создается порожденный процесс, но при этом возникает закономерный вопрос: каким образом данные

Слайд 46

двунаправленный канал передачи

данных

Вначале родительский процесс создает неименованный канал при помощи системного вызова pipe() (1).
Созданный таким образом канал является двунаправленным, т. е. процесс может как записывать в него данные, так и считывать их из него.
Не­именованный канал характеризуется двумя дескрипторами — для входных и выходных данных.

Основы организации UNIX Ядро
Взаимодействие процессов


Слайд 47Двунаправленный канал передачи данных, такой канал, в

котором оба процесса могут одновременно как запи­сывать данные, так

и читать их из него.
Такая конфигурация используется редко из-за сложно­стей синхронизации передачи/приема данных.
Более приемле­мой является конфигурация обмен данными при помощи двух однонаправленных каналов.

Основы организации UNIX Ядро
Взаимодействие процессов

Двунаправленный  канал  передачи  данных, такой канал, в котором оба процесса могут одновременно как запи­сывать

Слайд 48

два однонаправленный канал

передачи данных

Основной процесс создает два однонаправленных канала с дескрипторами fifo1 и fifo2 при помощи двух вызовов функции pipe () (1, 2).
При этом канал fifo1 можно настроить так, чтобы в него мог записывать данные родительский процесс, а читал их порождённый (дочерний) процесс.
Канал fifo2 можно настроить для работы в обратном направлении: записи данных дочерним и чтения данных родительским процессом.

Основы организации UNIX Ядро
Взаимодействие процессов


Слайд 49До сих пор мы рассматривали взаимодействие родительского и порожденного процессов.

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

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

Основы организации UNIX Ядро
Взаимодействие процессов

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

Слайд 50 Основы организации UNIX Ядро
Взаимодействие процессов

Основы организации UNIX Ядро Взаимодействие процессов

Слайд 51При этом данные одного процесса могут быть доступны другому процессу.


При использовании такого механизма следует учиты­вать то, что оба

процесса могут запросить одни и те же данные, поэтому следует предусмотреть механизмы синхронизации до­ступа (можно использовать стандартные средства операционной системы UNIX).

Основы организации UNIX Ядро
Взаимодействие процессов

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

Слайд 52Для межпроцессного взаимодействия в UNIX очень широко ис­пользуется механизм

так называемых сокетов (гнезд), который мы

подробно рассмотрим при анализе сетевых возможностей операционной системы.

Основы организации UNIX Ядро
Взаимодействие процессов

Для межпроцессного взаимодействия в UNIX очень широко ис­пользуется  механизм так называемых сокетов  (гнезд),  который

Слайд 53Следующий уровень функциональности, который мы

рассмот­рим, — системные процессы, которые создаются при запуске

системных программ.
К системным программам или, по-другому, к системному программному обеспечению от­носят командные оболочки shell (интерпретаторы), команды и утилиты системного администрирования, драйверы и протоколы коммуникаций.

Основы организации UNIX Системные процессы

Следующий  уровень  функциональности,  который  мы  рассмот­рим, — системные процессы, которые создаются при

Слайд 54Операционная система UNIX включает ряд стандартных системных

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


Кроме того, к этой группе программ следует от­нести утилиты:
• настройки параметров конфигурации системы;
• перекомпоновки ядра (если она необходима) и добавления новых драйверов устройств;
• создания и удаления учетных записей пользователей;
• создания и подключения физических файловых систем;
• установки параметров контроля доступа к файлам.

Основы организации UNIX Системные процессы

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

Слайд 55В качестве пользовательских программ могут выступать команд­ные файлы (скрипты), написанные

с помощью командного интерпретатора shell, или разработанные на одном из

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

Основы организации UNIX Системные процессы

В качестве пользовательских программ могут выступать команд­ные файлы (скрипты), написанные с помощью командного интерпретатора shell, или разработанные

Слайд 56Системные процессы являются частью ядра и всегда расположены в оперативной

памяти.
Они не имеют выполняемых файлов и запускаются особым

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

Основы организации UNIX Системные процессы

Системные процессы являются частью ядра и всегда расположены в оперативной памяти.  Они не имеют выполняемых файлов

Слайд 57К системным процессам относится и процесс

на­чальной инициализации init, являющийся прародителем

всех остальных процессов.
Несмотря на то, что init не является частью ядра и запускается из выполняемого файла, его функцио­нирование критически важно для всей системы в целом. Программа /sbin/init, запускающая процесс init, порождает процессы для запуска системы на основе записей, находящихся в файле /etc/inittab. При этом процесс init анализирует записи в файле /etc/inittab и определяет последовательность запуска, остановки и перезапуска остальных процессов.

Основы организации UNIX Системные процессы

К системным  процессам  относится  и  процесс  на­чальной  инициализации init,  являющийся

Слайд 58К системным процессам относится и процесс

на­чальной инициализации init, являющийся прародителем

всех остальных процессов.
Несмотря на то, что init не является частью ядра и запускается из выполняемого файла, его функцио­нирование критически важно для всей системы в целом.
Программа /sbin/init, запускающая процесс init, порождает процессы для запуска системы на основе записей, находящихся в файле /etc/inittab.

Основы организации UNIX Системные процессы

К системным  процессам  относится  и  процесс  на­чальной  инициализации init,  являющийся

Слайд 59При этом процесс init анализирует записи в файле

/etc/inittab и определяет последовательность запуска,

остановки и перезапуска остальных процессов.

Ещё одна группа процессов, которые выполняются в системе, относится к прикладным процессам.

Основы организации UNIX Системные процессы

При этом процесс init анализирует записи в  файле  /etc/inittab  и  определяет  последовательность

Слайд 60Как правило, это процессы, соз­данные в контексте пользовательского

сеанса работы, важней­шим из которых является

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

Основы организации UNIX Системные процессы

Как правило, это процессы, соз­данные  в контексте пользовательского  сеанса работы,  важней­шим  из

Слайд 61Список литературы:
Юрий Магда. UNIX для студентов, Санкт-Петербург «БХВ-Петербург», 2007.
Unix и

Linux: руководство системного администратора, 4-е издание, 2012, Э. Немет, Г.

Снайдер, Т. Хейн, Б. Уэйли
Организация UNIX систем и ОС Solaris 9, Торчинский Ф.И., Ильин Е.С., 2-е издание, исправленное, 2016.

Список литературы:Юрий Магда. UNIX для студентов, Санкт-Петербург «БХВ-Петербург», 2007.Unix и Linux: руководство системного администратора, 4-е издание, 2012,

Слайд 62Спасибо за внимание!
Преподаватель: Солодухин Андрей Геннадьевич
Электронная почта: asoloduhin@kait20.ru


Спасибо за внимание!Преподаватель: Солодухин Андрей ГеннадьевичЭлектронная почта: asoloduhin@kait20.ru

Обратная связь

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

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика