Управління пристроями в ОС Unix (реферат)

Реферат на тему:

Управління пристроями в ОС Unix

Способ работы с устройствами в UNIX отличается от DOS/Win. Нет
отдельных дисковых томов типа A: или C:; диск, будь это дискета или
любой другой, становится частью локальной файловой системы через
операцию, называемую «монтирование». Когда вы закончили работу с диском,
то перед тем, как извлечь диск, Вы должны «размонтировать» его.

Физически форматирование диска — одно дело, создание файловой системы на
ней — другое. Команда DOS FORMAT A:, выполняет обе эти задачи сразу, но
под Linux это осуществляется отдельными командами. Процесс
форматирования дискеты см. выше; создание файловой системы:

# mkfs -t ext2 -c /dev/fd0H1440

Вы можете использовать minix, vfat, dos или другие форматы вместо ext2.
Как только диск готов, смонтируйте его командой

# mount -t ext2 /dev/fd0 /mnt

указав правильный тип файловой системы, если Вы используете не ext2.
Теперь Вы можете адресовать файлы на дискете. Все действия, которые Вы
производили над A: или B:, теперь выполняются над каталогом /mnt.
Примеры:

DOS Linux

——————————————————

C:\GUIDO>DIR A: $ ls /mnt

C:\GUIDO>COPY A:*.* $ cp /mnt/* .

C:\GUIDO>COPY *.ZIP A: $ cp *.zip /mnt

C:\GUIDO>EDIT A:FILE.TXT $ jstar /mnt/file.txt

C:\GUIDO>A: $ cd /mnt

A:>_ /mnt/$ _

Когда вы закончили, перед извлечением диска Вы надо размонтировать его
командой

# umount /mnt

Очевидно, Вы должны применять fdformat и mkfs только к
неотформатированным дискам, не используемым предварительно. Если Вы
хотите использовать дисковод B:, обратитесь к fd1H1440 и fd1 вместо
fd0H1440 и fd0, как было указано в примерах выше.

Само собой разумеется, что то, что применимо к дискетам, также применимо
к другим устройствам; например, Вы можете захотеть устанавить другой
жесткий диск или дисковод CD-ROM. Вот как монтируется CD-ROM:

# mount -t iso9660 /dev/cdrom /mnt

Это был «официальный» способ монтирования ваших дисков, но имеется
приемчик. Так как неприятно регистрироваться под root каждый раз, когда
надо смонтировать дискету или CD-ROM, каждому пользователю можно
позволить монтировать их таким способом:

зарегистрировавшись как root, сделайте следующее:

# mkdir /mnt/a: ; mkdir /mnt/a ; mkdir /mnt/cdrom

# chmod 777 /mnt/a* /mnt/cd*

# # make sure that the CD-ROM device is right

# chmod 666 /dev/hdb ; chmod 666 /dev/fd*

добавьте в /etc/fstab следующие строки:

/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 0

/dev/fd0 /mnt/a: msdos user,noauto 0 0

/dev/fd0 /mnt/a ext2 user,noauto 0 0

Сейчас, чтобы смонтировать дискету DOS, дискету ext2 и CD-ROM:

$ mount /mnt/a:

$ mount /mnt/a

$ mount /mnt/cdrom

/mnt/a, /mnt/a: и /mnt/cdrom теперь доступны для каждого пользователя.
Помните, что разрешение всем монтировать диски — это дыра в безопасности
системы, если Вас это заботит.

Две полезных команды — df, которая дает информацию о установленных
файловых системах, и du dirname, которая сообщает размер дискового
пространства, используемого каталогом.

2. Сегментація пам’яті. Реалізація сегментації.

Віртуальна память і кешування інформаційної моделі

Основные понятия сегментации

Рассмотрим пример, когда программа использует одно адресное
пространство.

программа использует одно адресное пространство

Недостатки такой системы:

Один участок может полностью заполниться, но при этом останутся
свободные участки. Можно конечно перемещать участки, но это очень
сложно.

 

Эти проблемы можно решить, если дать каждому участку независимое
адресное пространство, называемое сегментом.

Рассмотрим то же пример с использованием сегментов:

 

Сегментированная память

Каждый сегмент может расти или уменьшаться независимо от других.

Сегмент — это логический объект.

В этом случае адрес имеет две части:

номер сегмента

адрес в сегменте

Преимущества сегментации:

Сегменты не мешают друг другу.

Начальный адрес процедуры всегда начинается с (n,0). Что упрощает
программирование.

Облегчает совместное использование процедур и данных.

Раздельная защита каждого сегмента (чтение, запись).

Реализация сегментации

Если страницы имеют фиксированный размер, то сегменты нет.

У сегментов так же, как и у страниц, существует проблема фрагментации.

 

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

 

Сегментация с использованием страниц: MULTICS

В одной из первых, где была применена страничная сегментация, была
система MULTICS.

Каждая программа обеспечивалась до 2^18 сегментов (более 250 000),
каждый из которых мог быть до 65 536 (36-разрядных) слов длиной.

Таблица сегментов — хранит дескриптор для каждого сегмента. У каждой
программы своя таблица.

Т.к. записей в таблице более 250 000, она сама разбита на страницы.

Сама таблица является отдельным сегментом.

Сегмент с таблицей дескрипторов указывающих на таблицы страниц для
каждого сегмента

 

Нормальный размер страницы равен 1024 словам. Если сегмент меньше 1024,
то он либо не разбит на страницы, либо разбит на страницы по 64 слова.

 

Дескриптор сегмента

 

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

По номеру сегмента находится дескриптор сегмента.

Проверяется, находиться ли таблица страницы в памяти. Если в памяти,
определяется ее расположение. Если нет, вызывается сегментное
прерывание.

Проверяется, находиться ли страница в памяти. Если в памяти,
определяется ее расположение в памяти. Если нет в памяти, вызывается
страничное прерывание.

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

Происходит запись или чтение.

 

Преобразование адреса в системе MULTICS

 

Так как такой алгоритм будет работать достаточно медленно. Аппаратура
системы MULTICS содержит высокоскоростной буфер быстрого преобразования
адреса (TLB) размером в 16 слов. Адреса 16 наиболее часто использующихся
страниц хранятся в буфере.

 

Сегментация с использованием страниц: Intel Pentium

Каждая программа обеспечивается до 16К сегментов, каждый из которых
может быть до 1 млдр  36-разрядных слов длиной.

Основа виртуальной памяти системы Pentium состоит из двух таблиц:

Локальная таблица дескрипторов LDT (Local Descriptor Table) — есть у
каждой программы, и описывает сегменты программы.

Глобальная таблица дескрипторов GDT (Global Descriptor Table) — одна для
всех программ, и описывает системные сегменты (включая саму ОС).

Каждый селектор (указывает на дескриптор) представляет собой
16-разрядный номер.

 

Селектор в системе Pentium

13 битов определяют номер записи в таблице дескрипторов, поэтому эти
таблицы ограничены, каждая содержит 8К (2^13) сегментных дескрипторов.

1 бит указывает тип используемой таблицы дескрипторов LDT или GDT.

Уровни привилегированности в системе Pentium

Уровни привилегированности запрещают выполняемому коду обратиться к
более низкому уровню.

С учетом максимального размера сегмента — 4 Гбайта — каждая задача, при
чисто сегментной организации виртуальной памяти, работает в виртуальном
адресном пространстве в 64 Тбайта (4 Гбайта * 16К, где 16К=8К*2 т.к. LDT
и GDT).

 

 

Дескриптор программного (не данных) сегмента в системе Pentium (всего 8
байт (64 бита)).

База (Base) — базовый адрес сегмента (32-бита), разделен на три части
из-за совместимости с i286, в котором это поле имеет только 24 бита.

Размер (Limit) — размер сегмента (20 бит), разнесен на две части.

Если размер сегмента указан в страницах, он может достигать 2^32 байтов
(2^20 * 4Кбайт (2^12) (размер страницы в Pentium)).

Алгоритм получение физического адреса:

Селектор загружается в регистр (для сегмента команд в CS, для сегмента
данных в DS).

Определяется глобальный или локальный сегмент (LDT или GDT).

Дескриптор извлекается из LDT или GDT, и сохраняется в микропрограммных
регистрах.

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

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

— если страничная организация памяти не используется, то он является
физическим адресом (адрес получен),

— если страничная организация памяти используется, то он является
виртуальным адресом.

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

 

Преобразование пары (селектора, смещение) в физический адрес

 

При 32-разрядном (2^32=4Гбайт) адресе и 4Кбатной странице, сегмент может
содержать 1 млн страниц (4Гбайт/4Кбайта). Поэтому используется
двухуровневое отображение (создана таблица (страничный каталог)
содержащая список из 1024 таблиц страниц), благодаря чему можно снизить
количество записей в таблице страниц до 1024.

В этом случае сегмент в 4 Мбайта (1024 записи по 4 Кбайта страницы),
будет иметь страничный каталог только с одной записью (и 1024 в таблице
страниц), вместо 1 млн в одной таблице.

 

Отображение линейного адреса на физический адрес

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

 

Особенности реализации в UNIX

В LUNIX системе на 32-разрядной машине каждый процесс получает 3Гбайта
виртуального пространства для себя, и 1Гбайт для страничных таблиц и
других данных ядра.

На компьютерах Pentium, используется двухуровневые таблицы страниц, и
размер страниц фиксирован 4Кбайта

На компьютерах  Alpha, используется трехуровневые таблицы страниц, и
размер страниц фиксирован 8Кбайт

Для каждой программы выделяется 3 сегмента:

Код программы (только для чтения)

Данные

Стек

Система віртуальної пам’яті забезпечує посторінкову організацію тільки
функцій. Ви повинні як і раніше мати досить нод-простору для розміщення
всіх списків даних, які використовуються вашою програмою чи функцією, і
для імен перемінних.

Отже, незважаючи на те, що посторінкова організація пам’яті дозволяє
стартувати великі програми при набагато меншій пам’яті, все ж таки
необхідно визначити оптимальний розмір хіпа й встановити відповідно
LISPHEAP. Організація віртуальної пам’яті не змінює вимог до установки
LISPSTACK.

Віртуальна пам’ять має посторінкову організацію.

3. Мультипроцесори та мікрокомпютери

Микропроцессор — процессор, выполненный в виде одной либо нескольких
взаимосвязанных интегральных схем. Микропроцессор состоит из цепей
управления, регистров, сумматоров, счетчиков команд и очень быстрой
памяти малого объема.

Некоторые микропроцессоры дополняются сопроцессорами, расширяющими
возможности микропроцессоров и набор выполняемых команд.

Микрокомпьютеры — это компьютеры, в которых центральный процессор
выполнен в виде микропроцессора.

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

Микрокомпьютеры представляют собой инструменты для решения разнообразных
сложных задач. Их микропроцессоры с каждым годом увеличивают мощность, а
периферийные устройства — эффективность. Быстродействие — порядка 1 — 10
миллионов опеpаций в сек.

Разновидность микрокомпьютера — микроконтроллер. Это основанное на
микропроцессоре специализированное устройство, встраиваемое в систему
управления или технологическую линию.

Персональные компьютеры (ПК) — это микрокомпьютеры универсального
назначения, рассчитанные на одного пользователя и управляемые одним
человеком.

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

Пеpсональный компьютеp должен удовлетворять следующим требованиям:

стоимость от нескольких сотен до 5-10 тысяч доллаpов;

наличие внешних ЗУ на магнитных дисках;

объём оперативной памяти не менее 4 Мбайт;

наличие операционной системы;

способность работать с программами на языках высокого уровня;

ориентация на пользователя-непрофессионала (в простых моделях).

Миникомпьютерами и суперминикомпьютерами называются машины,
конструктивно выполненные в одной стойке, т.е. занимающие объём порядка
половины кубометра. Сейчас компьютеры этого класса вымирают, уступая
место микрокомпьютерам.

4. Використання комбінацій клавіш для роботи

в OC Windows і Unix

Для кращої і зручнішої роботи у програмах Windows були розроблені так
звані «гарячі» клавіші.

Гарячі клавіші — набір клавіш, за допомогою яких можна швидко виконати
деякі команди із арсенала програм, без допомоги миші. Більш за все
використовуються в програмах, в яких використовується клавіатура як
основний інструмент, наприклад Microsoft Word .

Комбінацію клавіш також можна визначити самостійно. Наприклад у програмі
Word у головному меню назва кожного пункту містить підкреслені букви,
при натисканні Alt та одночасному натисканні кнопки, яка відповідає
підкресленій букві у меню на клавіатурі буде відкрите відповідне меню.
Також у відкритому меню містяться у назві пункту підкреслені букви, при
виконанні попередніх дій відбудеться дія, яка відповідає дії даного
пункту меню. У сучасних комп’ютерах на клавіатурі міститься кнопка із
логотипом Windows, після натискання цієї кнопки відкриється меню у якому
містяться всі ярлики швидкого запуску певних програм, у цьому меню можна
пересувати бар на потрібний пункт за допомогою кнопок із стрілками, при
натисканні кнопки Enter виконається дія властива даному пункту.

Комбінація клавіш

Esc

Delete

F1

F2

F3

F5

F10

Alt + Tab

Alt + F4

Сtrl + S

Ctrl + Esc

Ctrl + X

Num Lock + Мінус (-)

Num Lock + Плюс (+)

Ctrl + Alt + Delete

Дії

Відміна команди

Видалення папки

Вивід контекстної довідки

Зміна видаленого значка

Відкрити панель пошуку файлів

Відновити зміст папки або вікна

В програмах — активізація рядів текстового меню

Перехід до наступного вікна.

Вихід із програми

Збереження документів

Відкрити головне меню

Виділення в буфер

Згортання виділений папкою

Розгортання виділений папкою

Виклик диспетчера задач Windows

Комбінація гарячих клавіш

Ctrl + V

Ctrl + C

Ctrl + O

Ctrl + F

Ctrl + H

Ctrl + P

Ctrl + A

Ctrl + Z

Ctrl + N

Ctrl + B

Ctrl + I

Ctrl +U

Вставити текст

Копіювати текст

Відкрити файл

Найти

Замінити

Печать

Виділити весь текст

Відмінити дію

Створити новий документ

Включити режим напівжирних букв

Включити режим косих букв

Включити режим підкреслених букв

«Гарячі» клавіші можна також встановити на запуск будь-якої програми.
Тобто при натисненні цих клавіш буде запускатися певна програма. Для
цього потрібно виділити ярлик програми і натиснути ПКМ.

Після цього відкриваємо пункт Свойства і в підпункт Бистрий запуск
вводимо комбінацію «гарячих» клавіш. Комбінація «гарячих» клавіш повинна
починатися із клавіш Ctrl + Alt + … .

Для роботи UNIX більшість клавіш і їх комбінацій мають спеціальне
значення. Вони мають імена, унікальні для систем UNIX і можуть не
відповідати наклейкам на клавішах для інших систем. Для підказки у
визначенні цих клавіш наведена наступна таблиця. Список для ваших
конкретних пристроїв входу описаний у keyboard (HW).

У цій таблиці тире між клавішами значить «натисніть першу клавішу і
тримаєте її при натисканні другої».

Спеціальні клавіші

Ім’я UNIX Напис на клавіші Дія

Delete зупиняє поточну програму повертаючи в запрошення оболонки. Ця
клавіша відома також як Interrupt чи Del.

Backspace видаляє символ ліворуч від курсору

d Ctrl-d сигналізує кінець уведення з клавіатури; виходить з
поточної оболонки чи ініціалізує процедуру виходу — logout — якщо
поточна оболонка — оболонка входу.

h Erase видаляє перший символ ліворуч від курсору. Також
називається ERASE.

q Ctrl-q рестарт друку після зупинення її за допомогою Ctrl-s.

s Ctrl-s зупинення друку на стандартному пристрої виведення, такому
як термінал. Не зупиняє програми.

u Ctrl-u видаляє всі символи в поточному рядку. Називається також
KILL.

Ctrl- завершує поточну команду і створює файл core.
(Рекомендується тільки для налагодження). Дивися core(F) для одержання
додаткової інформації.

Esc вихід з поточного режиму; наприклад, вихід з режиму введення
при роботі в редакторі vi.

Return завершує командний рядок і ініціює дію оболонки.

Більшість цих спеціальних функціональних клавіш може бути модифіковано
користувачем. Для одержання додаткової інформації дивися stty(C).

Список використаної літератури

Гилев Ю.М., Дерюгін А.А. Особливості роботи многопроцессорной
обчислювальної системи з загальної многомодульной пам’яттю./Міжнародний
форум інформатизації – 2002: Доповіді міжнародної конференції
«Інформаційні засоби і технології». 14-16 жовтня 2003 р., у 3-х Т.Т.Т3.
– М.: До, 2003. – 221 с.

Марков А.А. Моделювання інформаційно-обчислювальних процесів: Навчальний
посібник для вузів. – М.: Изд-во МГТУ ім. Н.Е.Баумана,1999.-360 с.

Основи програмування. Посібник / Шлаєв В.І. – М., 2002.

Современные операционные системы, Э. Таненбаум, 2002, СПб, Питер, 1040
стр.,

HYPERLINK
«http://www.citforum.ru/operating_systems/sos/contents.shtml» Сетевые
операционные системы Н. А. Олифер, В. Г. Олифер

Сетевые операционные системы Н. А. Олифер, В. Г. Олифер, 2001, СПб,
Питер, 544 стр.

Windows 2000 в запитаннях і відповідях. – К., 2001.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *