Петербургский Университет Телекомунникаций им проф. Бонч-Бруевича курс лекций
Вид материала | Курс лекций |
СодержаниеОбращение к ОС 2.6. Основные утилиты ОС UNIX 5. ОС Helios. 5.2.Ядро ОС Helios |
- Федеральное агентство связи санкт-петербургский государственный университет телекоммуникаций, 39.82kb.
- Петербургский Государственный Университет телекоммуникаций им проф. М. А. Бонч-Бруевича, 55.39kb.
- Федеральное агентство связи санкт-петербургский государственный университет телекоммуникаций, 30.2kb.
- М. А. Бонч-Бруевича Кафедра опдс бочелюк Т. В., Доронин Е. М. «Назначение и примеры, 612.04kb.
- «мобильная связь», 49.1kb.
- Название доклада: универсальный, 63.37kb.
- Петербургский Государственный Университет Телекоммуникаций им проф. М. А. Бонч-Бруевича, 269.66kb.
- Петербургский Государственный Университет Телекоммуникаций им проф. М. А. Бонч-Бруевича, 143.46kb.
- Проблемы формирования учебно-методического комплекса, 151.02kb.
- Учебное пособие министерство Российской Федерации по связи и информатизации Санкт-Петербургский, 1446.56kb.
Обращение к ОС
Подсистема управления функцией (ПУФ)
Подсистема управления процессами (ПУП)
Взаимодействие процессов
Планирование
Распределение памяти
Буфер памяти
Символ блок
Драйверы устройств
Аппаратный контроль
Технические средства
2.5.1. ПУФ:
- управление функцией
- размещение записей функции
- управление свободным правом
- управление доступом к функции
- поиск доступа в функции
2.5.2. ПУП:
- синхронизация процессов
- взаимодействие процессов
- распределение памяти
- планирование выполнения процессов
Ядра
Распределение системных ресурсов
Управление памятью
Управление фунгкцией системы
Управление доступом к компьютеру
2.6. Основные утилиты ОС UNIX
- cat – вывод функции на экран
- chmode – изменение атрибутов записи файла
- сhown, chgrp – изменение влад-цы, группы файла
- dd – копирование и преобразование файла
- df – сообщение о свободных и занятых блоков
- dircmp – сравнение каталогов и файлов
- du – вывод информации о размерах файла
- fdisk – создание и модифицирование табличных разделов на диске
- file – определение типа файла
- format – форматирование
- mkfifo – создание fifo файла
- rename – изменение имени файла
- touch – обновление времени доступа и модифицирование файла
- tail – вывести остаток файла
- cmp – побайтовое сравнение файлов
- comm – сравнение файлов построчно
- grep – поиск по
- unix 2dos, dos 2unix – перекодировка файла из одной системы в другую
- cnv – среда
- exit – выход
- kill – завершение процесса
- nice – выполняется процесс с указанным приоритетом
renice – изменение приоритета процесса
- set – установка режимов
- sleep – задержка выполнения
- wait – ожидание завершения процесса
- find – поиск файла
- hd – вывод файла в заданном формате
- head – просмотр строк файла
- host – вывод и установка имени текущего компьютера
- finger – вывод информации о локальных и удаленных пользователях
- id – вывод идентифицированных пользователей и групп
- logname – имя, которое мы загрузили
- who – список, кто сейчас работает в системе
- ping – посылка эхо – запроса и сетевому посту
- pwd – напечатать рабочую директорию; вывод имени рабочего каталога
- cd – изменение директории
- quota – показывает лимит дискового производства для пользователя
- tty – вывод имени терминаля
- uname – вывод имени системы
- - библиотекарь
- ld – компановщик объектных файлов
- as – assembler
- ec – компилятор языка СИ
3.Инструментальные средства программирования
- Компилятор - СС
- Отладчик - debug
- Утилита - make
- Поддержка версий исходных текстов - SCCS или RCS
3.1. Компилятор
СС
.C
.h
PP
O
A
Link
a.out
Lib
3.1.1. Стадии компиляции:
- Обработка препроцессором (РР)
- Трансляции (С - as)
- Ассемблер (А) - создает объектный модуль as - o
- Редактор связей работает:
- связывает объектные модули (модуль) в загрузочный модуль
- разрешает все внешние ссылки
- подключение библиотечных модулей
пример:
#include
main ( )
{
printf ("Hello, world\n");
}
OC hello.c
Ls
a.out - Hello, world
CC - o hello hello.c
Hello -
X - Window
Оконные системы для UNIX
Cостав:
server
Client 1 … . …. Client 4
Как HW эта система состоит из:
- сервера
- клиента
- сетевого обеспечения
Как SW - программный сервер
- программный клиент
- х - протокол - позволяет обмениваться сообщениями между сервером и клиентом
Особенности:
- Сетевая система
- Графическая система
- Многоплаторная система
- Программирование по языку "Си"
- Нет встроенного оконного менеджера
Оконный менеджер - отдельная программа, запускающаяся вместе с X-Window
Оконные менеджеры:
- twm - table (том) W.m
- mwm - motif w.m - коммерческий
- olwm - open look w.m
- fvwm - Free virtual w.m
- fvwm 95 - похоже на Win 95
Последняя версия X-Window: X11R6 "-" - громоздская система
Nano - x
Для встраиваемых систем (Window CE - для ноутбуков)
Основные возможности для программирования:
- имеется библиотека Xlib, она обеспечивает низко уровненный интерфейс
- вывод на экран
- обработка клавиатуры
в состав X-Window входят:
- библиотека lib x.a
- хедеры - .h
- набор исполнительных файлов *.bin
XT - Xtoolhit Intrinsies - набор дополнительных возможностей
Widoed - класс, описывающий окно соответствующими программами функции находящихся в файле libxt.a
Иеррархия классов о-в XE
object
Rect obj
core
composite
schell
constraint
Override schell
WM schell
Top level schell
Transcent schell
Application schell
Более высоко уровненные библиотеки:
- Athena
- Athena 3d
- Motif
Редакторы: xedit, xemous, пакет для UNIX: shar office
Прыр.пакет XV_pc, он включает в себя 2 основных файла:
- X viev.o - (obj)
- Mouse.o - (obj)
Для создания графических файлов:
- дизайнер - xmake.exe
- примеры
Window 1
ОС РВ (Операционные системы реального времени).
ОС Реального времени
Основные требования:
- временные рамки
- параллельная обработка
- поддержка вытекающей много поточности и много процессорных архитектур
- поддержка нескольких уровней прерывания и вытеснение обработчика прерываний
- наличие приоритетов у Нитей (thread) (потоков)
- синхронизация между нитями и взаимодействием процессов
- предсказуемость ОС
- работа в огромных ресурсах
- стоимость достаточно невысокая
- обеспечение API и сервера
4. ОС QNX.
Software, 1982.
4.1. Достоинства:
- первая ОС с мини-ядром (8-16 Кбайт);
- система мягкого РВ (СМРВ).
Если система успевает отреагировать за некоторое характерное время , то это – система РВ.
Различие между системами жесткого и мягкого реального времени заключается в трактовке . Пусть система работает с некоторым набором событий, обработка каждого из которых соответственно занимает один из временных интервалов следующего набора:
, где n - число событий.
Если характерное время определяется как средне арифметическое указанного набора интервалов:
,
то мы имеем дело с системой мягкого РВ. В системах жесткого реального времени определяется как минимальный временной интервал из данного набора. Для поддержки этого требования система должна быть высоко производительной, чтобы "суметь" в любой момент времени "жестко" отреагировать на событие, требующее самое малое время обработки.
QNX:
АУФ
АУП
- администраторы (системы управления памятью, файлами)
аппаратные средства
ядро
СА
8-18 Кбайт
АС
Ядро содержит:
- средство управления АС;
- средства коммуникации с администраторами;
- создать порт связи;
- удалить порт связи;
- читать порт связи;
- писать в порт связи.
4.2. Преимущества:
Мультипрограммирование – псевдопараллельное программирование, которое применимо также и на одном процессоре.
Параллельное программирование (мультипроцессорная обработка или распределенная обработка информации) – информация обрабатывается на нескольких процессорах.
- параллельная обработка;
ЦП_1
Теоретически, производительность увеличивается в N раз, но на практике получается меньше
ЦП_2
Поток задач
ЦП_N
Рис. 1
- конвейерная обработка;
Пусть необходимо решение .
ЦП
ЦП, который занимается распределением задач
…………...………...
Т.е. каждый из конвейеров (ЦП-ов) выполняет свою задачу.
Производительность (k>1).
- смешанная обработка;
Т.е. N последовательно включенных цепей (рис. 1), каждая из которых выполняет свой комплекс задач.
Транспьютер – компьютер, который имеет средства связи для объединения с другими транспьютерами многопроцессорной системы.
Трудности, возникающие при параллельном программировании:
- определение перечня задач (фрагментов задач), которые необходимо выполнять параллельно;
Эта трудность связана с:
- общей сложностью решения задачи;
- Фон-Неймановской структурой вычислительной системы (из-за последовательной обработки информации).
- задача оптимального распределения ресурсов, вообще, - очень сложна; для мультипроцессорных систем усложняется требованием равномерной разгрузки транспьютеров;
- конфликты при обращении к периферийным устройствам;
- ОС для этих систем должна быть сложнее, т.е. учитывать первые 3 трудности.
Модуль Т-40 для построения мультипроцессорных систем:
ЭВМ
Т-40
Т-40 состоит из 2-ух частей:
Системная плата
Векторные платы
Системная плата:
- схема транспьютера;
- 1 Мбайт памяти (для организации связи);
- интерфейс с HOST-ЭВМ;
- интерфейс для работы с дисковой подсистемой.
Векторная плата:
- схема транспьютера;
- адаптер каналов;
- 1 Мбайт памяти (для организации памяти);
- АЛУ и статическое ОЗУ.
Арифметико-логическое устройство (АЛУ). Это обрабатывающая часть компьютера. Она отвечает за выполнение вычислений, таких, как сложение, вычитание, умножение и деление. Она содержит решающие механизмы, которые позволяют компьютеру, например, сравнивать два элемента из блока памяти, чтобы определить, равны они или нет.
Такая система занимается следующими 2-умя задачами:
- системная сеть (на уровне ОС);
- гиперсвязь.
Для поддержания мультипроцессорного программирования, необходимо:
а) язык параллельного программирования;
б) поддержка языка на аппаратном уровне.
ОССАМ-2 – язык параллельного программирования, который используется на HOST-ЭВМ. Использует транслятор 3L.
Поддержка 3L распространяется также на:
- p
(все они совместимы на уровне объектных модулей с ОССАМ-2)
arallel C;
- parallel Pascal;
- parallel Fortran.
Далее, есть еще язык параллельного программирования – Modula-2.
Есть еще язык параллельного программирования Modula-T, предназначенный для сигнализации процессов (т.е. для процессоров с адекватными каналами).
5. ОС Helios.
Дата создания – 1988 год. Perihelion Software Limited. England.
5.1. Основные цели:
- поддержка параллельного программирования;
- базирование на пользовательских и системных серверах.
Пользовательские серверы решают задачи пользователя. Системные серверы решают системные задачи.
Пользователи получают доступ к ресурсам через системные серверы, тем самым избегая рассмотренную ранее коллизию.
5.2.Ядро ОС Helios:
Прикладное ПО
Библиотеки компилятора
POSIX-библиотека
ядро
диспетчер
загрузчик
Системная библиотека
Библиотеки сервера
Библиотека сервера
Ядро
Аппаратные средства
- ОС для супер-ЭВМ.
- NSK (Non-Stop Kernel);
1 зад.
Коп. 1
Коп. 2
Коп. N-1
(до 4000 ЦП)
2 зад.
3 зад.
N зад.
……...
Если один из ЦП выходит из строя, тогда осуществляется переход к следующему (рабочему) ЦП с копией остановленной задачи.
- К
администраторы
орпоративные сети;
match
а) кодирование;
б) файловый процессор (преобразования типа)
Мини-ядро
Аппаратные средства