Архитектура unix кратко - Как обезопасить себя в кризис?
Invest-currency.ru

Как обезопасить себя в кризис?
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Архитектура unix кратко

Занятие 5. Особенности архитектуры Unix и Linux

· Структура ядра Unix

· Файловая система Unix

· Файловая система Linux

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

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

Существует два основных объекта операционной системы UNIX, с которыми приходиться работать пользователю – файлы и процессы. Эти объекты сильно связаны друг с другом, и в целом организация работы с ними как раз и определяет архитектуру операционной системы.

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

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

Структура ядра Unix

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

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

Рисунок 5.1 Архитектура операционной системы UNIX.

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

  • Файловая подсистема
  • Доступ к структурам ядра осуществляется через файловый интерфейс.
  • Управление процессами

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

Файловая система Unix

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

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

Файлы и каталоги идентифицируются не по именам, а по индексным узлам (i-node) – индексам в общем массиве файлов для данной файловой системе. В этом массиве хранится информация об используемых блоках данных на носителе, а также – длина файла, владелец файла, права доступа и другая служебная информация под общим названием «метаданные о файле». Логические же связки типа «имя–i-node» – есть ни что иное как содержимое каталогов.

Таким образом, каждый файл характеризуется одним i-node, но может быть связан с несколькими именами – в UNIX это называют жёсткими ссылками. При этом, удаление файла происходит тогда, когда удаляется последняя жёсткая ссылка на этот файл. Важной особенностью таких файловых систем является то, что имена файлов зависят от регистра, другими словами файлы test.txt и TEST.txt отличаются (т.е. являются разными строками в файле директории).

Являясь операционной системой семейства Unix, Linux следует установленным стандартам и объединяет в себе три основных части.

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

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

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

Читать еще:  Unix time c

Файловая система Linux

Linux является операционной системой семейства Unix и ее файловая система полностью соответствует стандартам данного класса. В Unix под файлом понимается не только объект, хранящийся на диске, но и любое устройство, поддерживающее ввод/вывод потока данных. Например, драйверы устройств рассматриваются как файлы.

В Unix различают несколько типов файлов. Каждый тип файлов имеет свои особенности реализации. Эти особенности, однако, скрыты от пользователя программным уровнем ядра Linux, получившим название виртуальной файловой системы (Virtual File System — VFS).

Виртуальная файловая система VFS поддерживает следующие типы файлов:

  • Обычные файлы
  • Каталоги
  • Специальные файлы
  • Именованные конвейеры

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

В состав VFS Linux входят два основных компонента:

  • Набор определений, характеризующих объект типа файл;
  • Программный уровень, обеспечивающий работу с подобными объектами;

Основные типы объектов, выделяемых VFS:

  • Индексы (inode, vnode) — представляют каждый элемент файловой системы
  • Файловые структуры (структура file) — представляют отдельные файлы
  • Файловая система (file system) — представляет файловую систему в целом

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

Особенности архитектуры: UNIX, Linux и Windows

Базовая архитектура UNIX

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

Рисунок 2.5 – Базовая архитектура UNIX

Система состоит из трех основных компонентов: подсистемы управления процессами, файловой подсистемы и подсистемы ввода-вывода.

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

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

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

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

Ø В них выделен отдельный менеджер памяти, отвечающий за поддержку виртуальной памяти.

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

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

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

Архитектура Linux

В ОС Linux можно выделить три основные части:

Ø ядро, которое реализует основные функции ОС (управление процессами, памятью, вводом-выводом и т.д.);

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

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

Назначение ядра Linux и его особенности

Linux реализует технологию монолитного ядра. Весь код и структуры данных ядра находятся в одном адресном пространстве. В ядре можно выделить несколько функциональных компонентов:

Ø Планировщик процессов – отвечает за реализацию многозадачности в системе (обработка прерываний, работа с таймером, создание и завершение процессов, переключение контекста).

Ø Менеджер памяти – выделяет отделбное адресное пространство для каждого процесса и реализует поддержку виртуальной памяти.

Ø Виртуальная файловая система – предоставляет универсальный интерфейс взаимодействия с разными файловыми системами и устройствами ввода-вывода.

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

Ø Сетевой интерфейс – обеспечивает доступ к раелизации сетевых протоколов и драйверов сетевых устройств.

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

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

Модули ядра

Ядро Linux дает возможность по требованию загружать в память и выгружать из нее отдельные секции кода. Такие секции называются модулями ядра и выполняются в привилегированном режиме.

Модули ядра дают ряд преимуществ:

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

2. Есть возможность изменять набор компонентов ядра во время выполнения: те из них, которые в этот момент не используются, можно не загружать в память.

Читать еще:  Что такое архитектура пк

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

Поддержка драйверов в Linux состоит из трех компонентов:

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

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

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

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

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

Unix архитектура — Unix architecture

Unix архитектура представляет собой компьютерную операционную систему архитектура системы , которая воплощает в себе философию Unix . Он может придерживаться стандартов , таких как спецификации Single UNIX (SUS) или аналогичный POSIX IEEE стандарта. Ни один опубликованный стандарт не описывает все компьютерные операционные системы Unix архитектуры — это отчасти наследие войн Unix .

содержание

Описание

Есть много систем , которые Unix-подобные в их архитектуре. Известные среди них являются GNU / Linux дистрибутивов. Различия между Unix и Unix-подобных систем были предметом жарких судебных баталий , а также держатели марки UNIX, The Open Group , объект «Unix-подобных» и аналогичных условиях.

Для различий между SUS фирменных UNIX архитектурами и другими подобными архитектурами см Unix-подобным .

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

Каждая из подсистем имеет некоторые особенности:

  • Параллелизм : Как Unix является многопроцессорной ОС, многие процессы протекают параллельно , чтобы улучшить производительность системы.
  • Виртуальная память (VM): подсистема управления памятью реализует концепцию виртуальной памяти и пользователи не нужно беспокоиться о размере исполняемого файла программы и объеме оперативной памяти.
  • Пейджинг : Это метод , чтобы свести к минимуму внутренним, так и внешней фрагментации в физической памяти.
  • Виртуальная файловая система (VFS): A VFS является файловая система , используемая , чтобы помочь пользователю , чтобы скрыть различные файловые системы сложности. Пользователь может использовать тот же самый стандарт файловой системы , связанные звонки для доступа к различным файловым системам.

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

Характеристики

Некоторые ключевые особенности концепции архитектуры Unix являются:

  • Системы Unix используют централизованную систему операционной ядра , который управляет системой и процесса деятельности.
  • Все программное обеспечение неядрового организовано на отдельные ядра управляемого процесса.
  • Системы Unix являются превентивно многозадачность: несколько процессов могут работать одновременно, или в небольших временных срезах и почти в то же самое время, и любой процесс может быть прерван и съехал выполнение ядра. Это известно как нити управления.
  • Файлы хранятся на диске в виде иерархической файловой системы , с одним верхним расположением по всей системе (корень, или «/»), с обеими файлами и каталогами, подкаталогами, подразделами подкаталогами, и так далее под ним.
  • За некоторыми исключениями, устройствами и некоторые видами связи между процессами управляются и видна как файлы или псевдо-файлы в иерархии файловой системы. Это известно как все является файлом . Тем не менее, Линус Торвальдс утверждает , что это неточная и может быть лучше перефразировать как «все это поток байтов».

Операционная система UNIX поддерживает следующие функции и возможности:

  • Многозадачность и многопользовательские
  • интерфейс программирования
  • Использование файлов в качестве абстракций устройств и других объектов
  • Встроенный в сети (TCP / IP является стандартным)
  • Устойчивые процессы системных служб называют «демонами» и управляется инициализации или инет

критика

UNIX-HATERS Справочник охватывает некоторые из этих конструктивных особенностей , как неудачи с точки зрения пользователя. Тем не менее, хотя некоторая информация довольно устарел и не может быть применена к современному Unixes или Unix-подобные операционные системам , таким как Linux , Eric S. Raymond обнаружил , что некоторые вопросы все еще преобладают, в то время как другие были решены. Раймонд приходит к выводу , что не все концепции , лежащие в Unix может считаться нефункциональные , хотя намерение книги , возможно, изобразить Unix низшими без поощрения обсуждения с разработчиками , чтобы фактически исправить проблемы.

Современные версии ОС Unix. Архитектура ОС Unix. Архитектура ядра ОС Unix.

Современные версии Unix

Почти сразу после рождения Unix раскололся на две ветви:

· прародительская ветвь, которой владела Unix System Laboratory (фактически коммерческая ветвь);

· проект исследовательского института Беркли — ветвь в основном свободных (беcплатных) Unix’ов.

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

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

Архитектура ОС Unix

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

Ядро имеет набор услуг, предоставляемых прикладным программам:

· создание и управление процессами, их синхронизация и межпроцессное взаимодействие.

Все приложения запрашивают услуги ядра посредством «системных вызовов».

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

Архитектура ядра Unix

Ядро состоит из трёх основных подсистем:

· Подсистема управления процессами и памятью;

1) Файловая подсистема:

· Обеспечивает унифицированный интерфейс доступа к данным, расположенным на дисках и к периферийным устройствам;

· Контролирует права доступа к файлу;

· Обеспечивает перенаправление запросов, адресованных периферийным устройствам, соответствующим модулям подсистемы ввода/вывода.

2) Подсистема управления процессами

Запущенная на выполнение программа порождает в системе один или более процессов (или задач).

Подсистема управления процессами контролирует:

· Создание и удаление процессов;

· Распределение системных ресурсов (памяти, вычислительных процессов) между процессами;

3) Подсистема ввода/вывода.

Читать еще:  Информатика архитектура пк

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

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

Структура файловой системы, типы файлов, состав стандартных каталогов.

Файлы в Unix играют ключевую роль, что не всегда справедливо для других операционных систем.

· Хранят данные пользователей;

· Определяют привилегии пользователей, т.к. права пользователей в большинстве случаев контролируются с помощью прав доступа к файлам;

· Файлы обеспечивают доступ к периферийным устройствам компьютера;

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

· Все программы, которые выполняются в системе (включая ядро) являются исполняемыми файлами.

Структура файловой системы

Как и во многих современных ОС, в Unix файлы организованы в виде дерева (рис. 2.3). Полное имя файла содержит путь (список каталогов (ветвей)), которые необходимо пройти, чтобы достичь файла.

Рис. 2.3. Типичная файловая система Unix

Так как в Unix все доступное пользователем файловое пространство объединено в единое дерево каталогов, то полное имя любого файла начинается с символа ‘/’ и НЕ содержит идентификатора устройства.

Типы файлов

В Unix существуют 6 типов файлов, различающихся по функциональному назначению и действиям ОС при выполнении тех или иных операций над файлами:

· Специальный файл устройства

· FIFO или именованный программный канал

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

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

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

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

Одно и то же внешнее устройство может одновременно быть представлено как блок-ориентированным, так и байт-ориентированным специальным файлом.

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

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

Связь (link).В файловой системе ОС Unix каталог содержит имена файлов и указатели на их метаданные (тип файла, права доступа к нему, длина, дата создания). Такой подход позволяет одному файлу иметь несколько имен в файловой системе. Имена жестко связаны с метаданными и, соответственно, с данными файла, в то время как сам файл существует независимо от того, как его называют в файловой системе.

Такая связь имени файла с его данными называется жесткой связью.

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

Сокет (socket-гнездо).Гнёзда предназначены для взаимодействия между процессами. Интерфейс гнёзд часто используется для доступа к сети TCP/IP. В системах ветви BSD Unix на базе гнёзд реализована система межпроцессного взаимодействия, с помощью которой работают многие системные сервисы, например, система печати.

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ — конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой.

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого.

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

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

Архитектура ОС Linux

Основные компоненты Linux представлены на рис.1.

Являясь операционной системой семейства Unix, Linux следует установленным стандартам и объединяет в себе три основных части:

Ядро (kernel) — основной компонент ОС, отвечающий за управление процессами, виртуальной памятью и драйверами устройств.

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

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

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

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


Рис.1 Компоненты Linux
При обращении приложения к системным ресурсам управление от части системы, работающей в пользовательском режиме, передается ядру. Библиотеки осуществляют контроль за корректностью представленного запроса и преобразование параметров/аргументов запроса к требуемому формату.

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

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

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector