- •Введение
- •1. История создания
- •2. Архитектура unix систем
- •2.1 Ядро системы
- •1. Файловая подсистема
- •3. Подсистема ввода/вывода
- •2.2 Файловая подсистема
- •2.3 Подсистема управления процессами
- •2.4 Подсистема ввода/вывода
- •3. Работа с операционной системой unix
- •3.1 Файлы и файловая система
- •3.2 Структура файловой системы unix
- •3.3 Процессы
- •3.4 Программы и процессы
- •3.5 Типы процессов
- •3.6 Пользователи системы
- •4. Пользовательская среда unix
- •4.1 Командный интерпретатор shell
- •5 Основные стандарты
- •6.1 Поддерживаемые языки программирования
- •6.1.1 Язык c
- •6.1.2 Фортран
- •6.1.3 Паскаль
- •6.1.4 Ассемблер
- •6.2 Специализированные языки программирования
- •6.3.1 Отличия от языка с
- •6.3.2 Достоинства
- •Заключение
- •Список использованных источников
2.4 Подсистема ввода/вывода
Подсистема ввода/вывода выполняет запросы файловой подсистемы и подсистемы управления процессами для доступа к периферийным устройствам (дискам, магнитным лентам, терминалам и т. д.). Она обеспечивает необходимую буферизацию данных и взаимодействует с драйверами устройств — специальными модулями ядра, непосредственно обслуживающими внешние устройства.
3. Работа с операционной системой unix
Сегодня UNIX используется на самых разнообразных аппаратных платформах — от персональных рабочих станций до мощных серверов с тысячами пользователей. И прежде всего потому, что UNIX — это многозадачная многопользовательская система, обладающая широкими возможностями.
С точки зрения пользователя в операционной системе UNIX существуют два типа объектов: файлы и процессы. Все данные хранятся в виде файлов, доступ к периферийным устройствам осуществляется посредством чтения/записи в специальные файлы. Когда вы запускаете программу, ядро загружает соответствующий исполняемый файл, создает образ процесса и передает ему управление. Более того, во время выполнения процесс может считывать или записывать данные в файл. С другой стороны, вся функциональность операционной системы определяется выполнением соответствующих процессов. Работа системы печати или обеспечения удаленного доступа зависит от того, выполняются ли те или иные процессы в системе.
3.1 Файлы и файловая система
Файлы в UNIX играют ключевую роль, что не всегда справедливо для других операционных систем. Трудно отрицать значение файлов для пользователей, поскольку все их данные хранятся в виде файлов. Однако помимо этого, файлы в UNIX определяют привилегии пользователей, поскольку права пользователя в большинстве случаев контролируются с помощью прав доступа к файлам. Файлы обеспечивают доступ к периферийным устройствам компьютера, включая диски, накопители на магнитной ленте, CD-ROM, принтеры, терминалы, сетевые адаптеры и даже память. Для приложений UNIX доступ к дисковому файлу "неотличим" от доступа, скажем, к принтеру.
Как и во многих современных операционных системах, в UNIX файлы организованы в виде древовидной структуры (дерева), называемой файловой системой (file system). Каждый файл имеет имя, определяющее его расположение в дереве файловой системы. Корнем этого дерева является корневой каталог (root directory), имеющий имя «/». Имена всех остальных файлов содержат путь — список каталогов (ветвей), которые необходимо пройти, чтобы достичь файла.
3.2 Структура файловой системы unix
Использование общепринятых имен основных файлов и структуры каталогов существенно облегчает работу в операционной системе, ее администрирование и переносимость. Эта структура используется в работе системы, например при ее инициализации и конфигурировании, при работе почтовой системы и системы печати. Нарушение этой структуры может привести к неработоспособности системы или отдельных ее компонентов.
Рисунок 3 - Типичная файловая система UNIX
Рассмотрим краткое описание основных каталогов.
Корневой каталог
Корневой каталог «/» является основой любой файловой системы UNIX. Все остальные файлы и каталоги располагаются в рамках структуры, порожденной корневым каталогом, независимо от их физического местонахождения.
/bin
В каталоге /bin находятся наиболее часто употребляемые команды и утилиты системы, как правило, общего пользования.
/dev
Каталог /dev содержит специальные файлы устройств, являющиеся интерфейсом доступа к периферийным устройствам.
/etc
В этом каталоге находятся системные конфигурационные файлы и многие утилиты администрирования. Среди наиболее важных файлов — скрипты инициализации системы. Эти скрипты хранятся в каталогах /etc/rc0.d, /etc/rc1.d, /etc/rc2.d и т. д, соответствующих уровням выполнения системы (run level), и управляются скриптами /etc/rc0, /etc/rc1, /etc/rc2 и т.д.
/lib
В каталоге /lib находятся библиотечные файлы языка С и других языков программирования. Стандартные названия библиотечных файлов имеют вид libx.a (или libx.so), где х — это один или более символов, определяющих содержимое библиотеки. Например, стандартная библиотека С называется libc.a, библиотека системы X Window System имеет имя libXll.a.
/lost+found
Каталог "потерянных" файлов. Ошибки целостности файловой системы, возникающие при неправильном останове UNIX или аппаратных сбоях, могут привести к появлению т. н. "безымянных" файлов — структура и содержимое файла являются правильными, однако для него отсутствует имя в каком-либо из каталогов. Программы проверки и восстановления файловой системы помещают такие файлы в каталог /lost+found под системными числовыми именами.
/mnt
Стандартный каталог для временного связывания (монтирования) физических файловых систем к корневой для получения единого дерева логической файловой системы. Обычно содержимое каталога /mnt пусто, поскольку при монтировании он перекрывается связанной файловой системой.
/u или /home
Общеупотребительный каталог для размещения домашних каталогов пользователей. Например, имя домашнего каталога пользователя andrei будет, скорее всего, называться /home/andrei или /u/andrei.
/usr
В этом каталоге находятся подкаталоги различных сервисных подсистем — системы печати, электронной почты и т. д.(/usr/spool), исполняемые файлы утилит UNIX (/usr/bin), дополнительные программы, используемые на данном компьютере (/usr/local), файлы заголовков, электронные справочники (/usr/man) т. д.
/var
В UNIX System V этот каталог является заменителем каталога /usr/spool, используемого для хранения временных файлов различных сервисных подсистем — системы печати, электронной почты и т. д.
/tmp
Каталог хранения временных файлов, необходимых для работы различных подсистем UNIX. Обычно этот каталог открыт на запись для всех пользователей системы.
Файлы в UNIX системах имеют владельца (пользователя и группу), права доступа, и различные дополнительные атрибуты, которые можно определять при создании, корректировать в процессе работы с файловой системой, задавать при получении доступа к файлу и т. д. Таким образом, системы UNIX обеспечиваю большую гибкость процесса управления файлами и обеспечения защиты данных.
