- •Введение
- •1. История создания
- •2. Архитектура unix систем
- •2.1 Ядро системы
- •1. Файловая подсистема
- •3. Подсистема ввода/вывода
- •2.2 Файловая подсистема
- •2.3 Подсистема управления процессами
- •3. Работа с операционной системой unix
- •3.1 Файлы и файловая система
- •3.2 Структура файловой системы unix
- •2.4 Подсистема ввода/вывода
- •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 Достоинства
- •Заключение
- •Список использованных источников
5 Основные стандарты
Чем больше появлялось версий UNIX (и особенно коммерческих), тем очевиднее становилась необходимость стандартизации системы. Наличие стандартов облегчает переносимость приложений и защищает как пользователей, так и производителей. В результате возникло несколько организаций, связанных со стандартизацией, и был разработан ряд стандартов, оказывающих влияние на развитие UNIX:
5.1 IEEE и POSIX
В 1980 году была создана инициативная группа под названием с целью стандартизации программного интерфейса UNIX, т. е. формального определения услуг, предоставляемых операционной системой приложениям. Решение этой задачи упростило бы переносимость приложений между различными версиями UNIX. Такой стандарт был создан в 1984 году и использовался комитетом ANSI, отвечающим за стандартизацию языка С, при описании библиотек. Однако с ростом числа версий операционной системы эффективность стандарта уменьшилась, и через год, в 1985 году, был создан Portable Operating System Interface for Computing Environment, сокращенно POSIX (переносимый интерфейс операционной системы для вычислительной среды).
В 1988 году группой был разработан стандарт POSIX 1003.1-1988, который определил программный интерфейс приложений (Application Programming Interface, API). Этот стандарт нашел широкое применение во многих операционных системах, в том числе и отличных от UNIX. Спустя два года стандарт был принят как стандарт IEЕЕ 1003.1-1990.
Таблица 2 - наиболее значительные стандарты POSIX, относящиеся к UNIX, являются:
Стандарт |
Особенности |
POSIX 1003.2-1992 |
Включает определение командного интерпретатора UNIX и набора утилит |
POSIX 1003.1b-1993 |
Содержит дополнения, относящиеся к поддержке приложений реального времени |
POSIX 1003.1c-1995 |
Включает определения "нитей" (threads) POSIX, известных также как pthreads |
5.2 X/Open
В 1984 году ряд европейских компьютерных компаний сформировал некоммерческую организацию, получившую название X/Open, целью которой была разработка общего набора интерфейсов операционной системы, согласованного между различными производителями, и создание действительно открытых систем, для которых стоимость переносимости приложений как между различными версиями одной операционной системы, так и между системами различных производителей была бы минимальной.
Основной задачей организации Х/Open являлось согласование и утверждение стандартов для создания общего программного интерфейса и программной среды для приложений. В 1992 году появился документ, известный под названием X/Open Portability Guide версии 3 или XPG3, который включал POSIX 1003.1-1988 и стандарт на графическую систему X Window System, разработанную в Массачусетском институте технологии.
5.3 SVID
Вскоре после выхода в свет в 1984 году версии SVR2, группа USG выпустила документ под названием System V Interface Definition, SVID, в котором описывались внешние интерфейсы UNIX версий System V. По существу, этот труд (в двух томах) определял соответствие операционной системы версии System V.
В дополнение к SVID был выпущен, так называемый, System V Verification Suite, SVVS, — набор тестовых программ, позволяющих производителям получить ответ, достойна ли их система права носить имя System V.
5.4 ANSI
В конце 1989 года Американским национальным институтом стандартов (American National Standards Institute, ANSI) был утвержден стандарт X3.159-1989 языка программирования С. Целью появления этого стандарта являлось улучшение переносимости программ, написанных на языке С, в различные операционные системы (не только UNIX). Стандарт определяет не только синтаксис и семантику языка, но и содержимое стандартной библиотеки.
Большинство функций, определенных в этих стандартах, представляют собой подмножество функций, имеющихся в большинстве UNIX-систем. Комитеты ANSI С и POSIX все же предложили ряд функций собственной разработки, но эти функции лишь привносят дополнительные неоднозначность и неопределенность в некоторые существующие версии UNIX. Опытный разработчик, имеющий дело с UNIX и С, легко разберется в упомянутых стандартах. Поддержка этих стандартов производителями компьютеров — тоже несложная задача.
6 Преимущества использования языка С++ для UNIX систем
