Операционная система QNX

Определение операционной системы QNX, организация файлов в Unix. Командная строка в Unix-подобных системах: специальные символы, встроенные переменные, справочные команды. Neutrino - новое поколение систем реального времени. Требования для QNX4.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 07.06.2009
Размер файла 19,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Содержание

Аннотация

Введение

1. Определение ОС QNX

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

3. Командная строка в Unix-подобных системах

4. Системные требования

Заключение

Литература

Аннотация

В данной курсовой работе пойдёт речь об операционной системе QNX, которая является системой реального времени, в которой pезyльтат зависит не только от пpавильноcти вычислений, но и от времени, за которое будет получен резyльтат вычислений. Если временные ограничения не выполняются, считается, что случился сбой в системе.

Введение

QNX изначально расшифровывалось как QuickUnix, но фирме QNX Software Systems Ltd. пришлось отказаться от этого названия из-за прав на торговую марку UNIX фирмы AT&T.

Создателем QNX является известная канадская фирма QSSL - QNX Software Systems, Ltd. (ранее - Quantum Software Systems Ltd.), вот уже более 20 лет лидирующая на рынке встраиваемых ОС реального времени.

1. Определение ОС QNX

QNX (пpоизноcитcя как "queue nicks") - это *nix-подобная, POSIX-совместимая, многопользовательская, многопоточная, сетевая, мyльтизадачная, микроядеpная, иcпользyющая механизм передачи сообщений операционная система реального времени с возможностью встраивания, легко масштабируемая.

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

Файловая система UNIX характеризуется:

- иерархической структурой;

- согласованной обработкой массивов данных;

- возможностью создания и удаления файлов;

- динамическим расширением файлов;

- защитой информации в файлах;

- трактовкой периферийных устройств как файлов.

Файловая система организована в виде дерева с одной исходной вершиной, которая называется корнем (записывается: "/"); каждая вершина в древовидной структуре файловой системы, кроме листьев, является каталогом файлов, а файлы, соответствующие дочерним вершинам, являются либо каталогами, либо обычными файлами, либо файлами устройств.

Самым первым каталогом файлового дерева Unix является /bin, который содержит все главные двоичные утилиты. Это наибольший из двух основных каталогов двоичных модулей.

Следующий каталог - /dev, в котором размещены все файлы устройств. Файлы устройств являются точками доступа к периферии, подсоединенной к системе. Этот файл привязан к периферии с помощью ядра и драйвера устройства.

Административные утилиты и конфигурационные файлы хранятся в /etc. Примерами являются getty и gettydef, init и inittab, а также файл паролей (/etc/passwd).

Следующий каталог - /lib, где размещены библиотеки компилятора. Здесь могут храниться и другие типы библиотек.

Каталог /lost+found используется утилитой fsck (главное средство поддержания файловой системы) для хранения логически удаленных файлов. Если на самом деле вы хотите сохранить эти файлы, они могут быть извлечены из этой удерживающей области после завершения уборки файловой системы.

Следующий каталог - /mnt. Это временная точка монтирования для файловых систем. Мы часто монтируем и демонтируем файловые системы просто для того, чтобы запустить быструю проверку чего-либо. Здесь подходящее место для этого.

Главным временным рабочим каталогом системы является /tmp. Многие утилиты, такие как vi, fsck, интерпретаторы shell и программы резервного копирования, используют /tmp для хранения рабочих файлов.

Следующий каталог - /usr, который применяется как точка монтирования. Файловая система, смонтированная здесь, содержит дополнительную системную информацию и каталоги пользователей. Это разделение между загружаемой файловой системой и пользовательской файловой системой было сделано, чтобы сбалансировать загрузку диска. Если бы все важные файлы были в одном разделе, он был бы слишком большим. Производительность может быть ухудшена, если все действия направлены в одну логическую область диска. Благодаря разбивке всей системы на две, каждая файловая система поддерживает разумное количество свободного пространства.

Последний файл - это само ядро, /unix. Весь /unix фактически существует и представляет собой большой a.out (скомпилированный объектный файл). Ядро изготавливается путем запуска ld на группе библиотек, которые загружаются по очереди в огромный исполняемый модуль, называемый /unix. Машина запускается с первых 512 байтов корневой файловой системы. Программа начальной загрузки, которая находится здесь, загружает программу загрузки большего размера, иногда называемую /boot. /boot загружает и запускает /unix.

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

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

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

Почти все исполняемые модули распределены между этими двумя каталогами. Другие исполняемые модули рассеяны по всей системе.

Далее games. UNIX приходит с ассортиментом интересных игр. Большинство из них текстовые, но предоставляется несколько программ графического типа, например worm, worms и rain.

Каталог include содержит все файлы-заголовки. Файлы-заголовки используются в программах на языке Си для определения структур и системных присваиваний, полезных для программирования. Здесь имеется подкаталог sys, который содержит все файлы-заголовки, относящиеся к системе. Читая эти файлы-заголовки, можно многое узнать о системе UNIX.

Следующий каталог - lib, который содержит библиотечные файлы для всех видов "имущества": файлы печатающих устройств, файлы поддержки утилиты vi, другие языки и uucp. Каталог /usr/ lib представляется складом всяких библиотек, которые имеются в системе, отличных от библиотек компилятора.

Каталог lost+found находится здесь для той же цели, что и одноименный каталог корневого уровня. Каждая файловая система должна иметь такой файл. Без него fsck не имеет временного места для размещения полуудаленных файлов и поэтому удаляет их навсегда.

В каталоге mail находится ваш системный почтовый ящик. Когда вы запускаете команду mail, здесь накапливается очередь сообщений. В каталоге usr/mail каждый файл носит имя пользователя. В этом файле хранится почта пользователя, пока он не прочитает ее.

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

В каталоге news хранятся все файлы новостей. Эти файлы именованы в соответствии с порядком, в котором они были введены в каталог. Команда news(1) смотрит на дату файла $HOME/ .news_time, чтобы сообщить, какие новости вы еще не читали.

Каталог preserve предназначен для файлов, связанных с утилитой vi. Они помещаются сюда, когда вы работаете с vi или с редактором ex и пропадает питание машины либо ваш сеанс работы прерывается в виде "зависания". Когда в системе восстанавливается питание, /tmp содержит файлы редактора ex. Из каталога /etc/rc запускается утилита /usr/lib/ex3.7preserve, которая просматривает /tmp, преобразует его в сохраненный файл и помещает его в /usr/preserve. Когда вы входите в систему, вы получаете почту о том, что у вас имеется сохраненный файл редактора, который вы можете восстановить и поместить его на исходное место.

Каталог pub не содержит ничего особенного, обычно в нем просто некоторые информационные файлы вроде таблицы ASCII или греческих символов.

Каталог spool - это главная точка входа для всех буферизованных файлов в системе. В этом каталоге имеется много подкаталогов, содержащих специфические типы буферизованных файлов. Некоторыми типичными подкаталогами являются lp, uucp и uucppublic.

В каталоге src хранится исходный код системы UNIX, если он имеется в системе. От этого каталога ответвляется много уровней: команды, библиотеки, код ядра, код машинного языка и автономные утилиты. Часто в /usr/src хранится также исходный код для локальной машины.

Каталог sys традиционно хранит файлы, необходимые для генерации нового ядра. Это файлы-заголовки, конфигурационный файл, библиотеки и командный файл для создания нового ядра из всех этих файлов.

Последний каталог - tmp. Это вторичная временная область хранения, которая используется, не так часто, как /tmp. Ее, однако, использует утилита sort.

3. Командная строка в Unix-подобных системах

Специальные символы командной строки

> Переназначает вывод

< Переназначает ввод

>> Добавляет переназначенный вывод к существующим данным

| Конвейер (канал) - вывод первой команды непосредственно на ввод другой

* ? [ ] Метасимволы, используются для создания шаблонов

& Выполнение команды в фоновом режиме

; Точка с запятой разделяет команды в командной строке

\ Отменяет специальное значение символов, таких как *, ?, [, ], &, ;, <, >, |

' ' Отменяют значение пробела как разделителя и специальное значение всех символов.

" " Отменяют значение пробела как разделителя и специальное значение всех символов за исключением $ и \

` ` Позволяет использовать вывод команды как аргументы для другой

$ Используется с позиционными параметрами и определенными пользователем переменными

Встроенные переменные

CDPATH Путь поиска для команды cd

HOME Аргумент по умолчанию (входной каталог) для команды cd

РATH Путь поиска команд (список директорий, где интерпретатор будет искать введенную вами команду)

MAIL Если эта переменная определяет имя почтового файла, то интерпретатор shell информирует пользователя о прибытии почты в указанном файле

TMOUT Время бездействия юзера в системе, через которое он автоматически будет отключен

PS1 Первичный вид интерпретатора командой строки по умолчанию "$"

PS2 Вторичный вид интерпретатора командой по умолчанию ">"

SHELL Имя используемого шелла

Справочные команды

man Вывод страниц руководства

man имя_команды Справка о команде

Команды

adduser Добавить пользователя в систему

addgroup Добавить группу в систему

cat Простейший текстовый редактор

cd Смена текущего каталога

chgrp Изменение группы владельца файла

chmod Изменение режима доступа к файлам

chwon Изменение владельца файла

cp Копирование файлов и директорий

cron Демон для запуска команд по расписанию

dd Преобразование файла во время его копирования

df Вывод информации о дисках

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

echo Выдача аргументов командной строки на стандартный вывод

exit Выход из системы

expr Вычислить значение выражения

find Поиск файлов по заданным параметрам

ftp Ftp-клиент

group Файл группы пользователя

grep Фильтровка строки по заданному шаблону

gzip/gunzip Архиватор/разархиватор gz-архивов

head Вывод первых строк файла

kill Завершить процесс

killall Завершить процессы по имени

ln Создание ссылки

login Начинает сессию в системе

ls Отображение содержимого каталога

mkdir Создание директории

mv Переименование или перемещение файлов в другой каталог

named Сервер доменных имен Internet

named.reload Заставляет сервер доменных имен синхронизировать свою базу данных

named.restart Остановить и перезапустить сервер имен

nice Запустить программу с измененным приоритетом

passwd Изменяет пароль пользователя

ps Вывод информации о процессах в системе

pwd Вывод имени текущей директории

rm Удаление файлов и директорий

rmdir Удаление директорий (только пустых)

rmgroup Удалить группу

su Получение прав другого пользователя

sudo Выполняет команду как суперпользователь root

tail Вывод хвостовой части файла

tar Архиватор tar-архивов

telnet Telnet-клиент

test Проверяет типы файла и сравнивает значения

uname Вывести информацию о системе

vipw Редактировать файл паролей

w показывает пользователей в системе, и что они делают

wc Подсчет количества символов, слов и строк в файле

who Вывод информации о том, кто в данный момент работает в системе

Дополнение

Система реального времени - та система, в которой pезyльтат зависит не только от правильноcти вычислений, но и от времени, за которое будет получен pезyльтат вычислений. Если временные ограничения не выполняются, считается, что случился сбой в системе.

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

QNX изначально расшифровывалось как QuickUnix, но фирме QNX Software Systems Ltd. пришлось отказаться от этого названия из-за прав на торговую марку UNIX фирмы AT&T.

Создателем QNX является известная канадская фирма QSSL - QNX Software Systems, Ltd. (ранее - Quantum Software Systems Ltd.), вот уже более 20 лет лидирующая на рынке встраиваемых ОС реального времени.

QNX 2.x - это ОС, выпущенная фирмой QSSL в середине 80-х. В настоящее время практически не применяется.

QNX 4.2x - наиболее популярная до последнего времени ОС, она же наиболее распространена в России. С ее помощью построено очень много встраиваемых систем, систем SCADA, она очень успешно применяется в решениях задач автоматизации и управления, там, где необходима высокая надежность. Эта система была разработана специально для "mission critical appliances" - т.е. для применения в критических ситуациях, там, где на другие ОС нельзя рассчитывать.

Neutrino - это новое поколение систем реального времени, построенных на идеях и архитектуре QNX. Realtime Platform (RtP) - cвободно раcпоcтpаняемый ваpиант QNX Neutrino, котоpый можно cвободно иcпользовать в некоммеpчеcких целях. Т.е. ее можно бесплатно использовать для тестирования, опробирования идей, разработки freeware и для персонального применения.

Neutrino изначально задумывалась как ОС для глубоко встраиваимых систем, все делалось c тем расчетом, чтобы она могла грузиться, откуда угодно (хоть из ПЗУ), должна работать на большом разнообразии компьютерных архитектур. Поэтому изменена система загрузки. Теперь вместо отдельного ядра c основными процессами и скрипта sysinit все заделано в один загружаемый модуль. Причем система получилась настолько гибкой, что даже можно обойтись без менеджера процессов, если они не нужны, оставив только одно микроядро. В RtP реализована загрузка через diskboot, добавлена система репозитариев. Следует отметить революционную концепцию наноядра, размером всего в 32 Кб.

В QNX 6 используется GUI Photon 2.0, разделяемые библиотеки, расширена cовмеcтимоcть c Linux. Многие программы можно свободно переносить из одной системы в другую и обратно.

Реализована поддеpжка мyльтипpоцеccоpных аpхитектyp, пpичем без какого-либо изменения пpогpамм, еcли только они пpоектиpовалиcь c опpеделенными огpаничениями, cвязанными c одновpеменным выполнением неcкольких нитей одного пpоцеccа на pазных пpоцеccоpах.

В дистрибутив QNX версии 4.24 входит сам QNX, Watcom C/C++ 10.6, поддержка TCP/IP, графический интерфейс(GUI) Photon 1.12, средство для разработки встроенных приложений Embedded Kit, программа для связи из Windows с QNX+Photon по модему или по IP. Дополнительно существуют еще 2 GUI для QNX: QNX Window и X Window; QNX Window в настоящее время не пользуется ни популярностью, ни любовью фирмы-разработчика; Photon - родной GUI для QNX.

QNX является бесплатной операционной системой, если вы не собираетесь использовать ее в коммерческих целях. Если же вы захотите, например, писать под неё коммерческое программное обеспечение, то вам придется официально приобрести средства разработки. Сделать это можно, обратившись в фирму QSSL или к ее российским представителям - фирме SWD Real-Time Systems.

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

Она была создана для yпpавления технологическими процессами (напримеp, конфетной фабpикой), второе призвание QNX - встроенные системы (напpимеp, стиpальная машина). Эти обязанности поручили QNX`y потому что она является надежной, маленькой и является ОСРВ.

Если вы просто хотите полюбоваться на возможности QNX - возьмите демо-дискету на сервере разработчика: www.qnx.com.

4. Системные требования

Для QNX4 по минимyмy:

Чтобы что-то работало - 386/1M (несколько процессов не требоваельных к памяти и быстродействию).

Чтобы что-то можно было разрабатывать - 486DX50/16M (Photon, PhAB), для разработки не графических пpиложений хватает 386/4M. Четырех мегабайт вполне достаточно для одной работающей копии Watcom C или Watcom Debugger. Второй дебаггер, к сожалению уже не влезает.

Чтобы все летало - Pentium посильнее, 64М, все зависит от конкретных задач.

Для pаботы в QNX6 (RtP) желательно не менее 64M памяти. Диска достаточно 100Мбайт для QNX4, RtP просит не менее 600 Мбайт, конечные системы могут работать вообще без диска.

Для QNX Momentics Standard Edition:

400MHz Pentium II / Sparc Ultra 10 128Mбайт RAM 1Гб диcк

QNX Momentics Professional Edition:

650MHz Pentium III / Sparc Ultra 10 256Mбайт RAM 1.5Гб диск

Дистрибутивы QNX и софт можно скачать с www.qnx.com, ftp.qnx.com, www.swd.ru, ftp.gnu.org

Заключение

QNX является бесплатной операционной системой, если вы не собираетесь использовать ее в коммерческих целях. Если же вы захотите, например, писать под неё коммерческое программное обеспечение, то вам придется официально приобрести средства разработки. Сделать это можно, обратившись в фирму QSSL или к ее российским представителям - фирме SWD Real-Time Systems.

Литература

http://www.ossite.ru - русскоязычный сайт, всё об операционных системах, QNX


Подобные документы

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

    реферат [28,1 K], добавлен 05.04.2010

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

    реферат [1,0 M], добавлен 22.03.2016

  • ОС Linux - название Unix-подобных операционных систем, основанных на одноимённом ядре. Дистрибутив Lubuntu 12: интерфейс, командная строка, основные программы, входящие в состав пакета. Работа с сетью, конфигурированием и администрированием системы.

    методичка [2,0 M], добавлен 28.10.2014

  • Права доступа к файлам и управление ими и другими атрибутами. Значения прав доступа для файлов и директорий. Набор файловых флагов. Команды управления процессами в операционной системе UNIX. Опции и значения программ архивации и сжатия - tar и gzip.

    контрольная работа [234,4 K], добавлен 16.01.2014

  • Сущность и принцип работы операционной системы, правила и преимущества ее использования. Возможности различных операционных систем, их сильные и слабые стороны. Сравнительная характеристика систем Unix и Windows NT, их потенциал и выполняемые задачи.

    реферат [10,5 K], добавлен 09.10.2009

  • Основные структуры процессов в операционной системе Unix. Возможные состояния процесса в Unix и способы перехода между ними. Планирование и выполнение процессов. Различия между родительским и дочерним процессом. Ожидание завершения и выполнения процесса.

    курсовая работа [673,0 K], добавлен 24.02.2012

  • Описание файловой системы Unix. Работа основных команд ls, cmp, comm, их ключей. Разработка программного продукта, работающего в среде Windows и представляющего собой эмулятора командного процессора операционной системы Unix. Выбор средств реализации.

    курсовая работа [183,0 K], добавлен 29.04.2015

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

    презентация [6,1 K], добавлен 23.10.2013

  • История развития ОС UNIX, ее достоинства. Управление компьютером под управлением UNIX. Интерпретация командной строки и структура файловой системы. Команды управления процессами. Средства системного администрирования и учетные записи пользователей.

    презентация [78,1 K], добавлен 12.05.2014

  • Анализ достоинств и недостатков FreeBSD при инсталляции ее в роли настольной и серверной операционной системы. Сравнение с UNIX-подобными и неродственными программными продуктами. Взаимодействие с компьютерами по сети, требования к аппаратной среде.

    курсовая работа [600,0 K], добавлен 31.05.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.