Реферат: Unix, базовые принципы и особенности - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Unix, базовые принципы и особенности

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 120 kb, скачать бесплатно
Обойти Антиплагиат
Повысьте уникальность файла до 80-100% здесь.
Промокод referatbank - cкидка 20%!

Узнайте стоимость написания уникальной работы





Unix, базовые принципы и особенности

  • Что входит в ядро

  • Что находится в оперативной памяти

  • Средства экономии памяти. Виртуальная память

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

  • Внутренняя структура файловой системы Unix

  • Формат индексного описателя файла

Все системные действия выполняет ядро операционной системы Unix. Ядро - обычный выполняемый файл, расположен в файле /unix или /stand/unix или /vmunix или /vmlinuz (в зависимости от конкретной реализации). Можете посмотреть размер этого файла - не маленький. При начальной загрузке системы ядро целиком загружается в оперативную память, и в дальнейшем резидентно находится в ней, выполняя все необходимые работы.

Что входит в ядро.

ДРАЙВЕРЫ УСТРОЙСТВ. И тех, которые есть, и тех, которых нет, но могут быть, а так же и такие, которые никогда вам не понадобятся.

УПРАВЛЯЮЩИЕ ПОДПРОГРАММЫ: части кода, ответственные за обеспечение работы пользовательских программ - разделение времени и прочих ресурсов системы.

СЛУЖЕБНЫЕ ТАБЛИЦЫ И ДАННЫЕ ЯДРА: таблицы текущих процессов, открытых файлов, управляющие структуры...

СИСТЕМНЫЕ ВЫЗОВЫ. (То, что MS-DOSе называется "21 прерывание" - можно считать некоторой аналогией/пародией на системные вызовы.) С точки зрения программиста это обычная си-шная функция, только выполняет она системно-зависимые действия, например: прочитать данные из файла, установить сетевое соединение, создать каталог, и т.д. и т.п. Все системные вызовы ( а всего их более 1500 штук ) вкомпилированы в тело ядра unix. Пользовательские программы, вызывающие функции, являющиеся системными вызовами, на самом деле содержат только jump'ы на соответствующие адреса памяти в ядре. В пользовательскую программу системные вызовы не влинковываются.

Что находится в оперативной памяти.

ЯДРО ОПЕРАЦИОННОЙ СИСТЕМЫ.

БУФЕРНЫЙ КЭШ. Часть оперативной памяти резервируется под кэширование чтения и записи на диск. Любая операция чтения с диска приводит к тому, что прочитанные с блоки помещаются в буферный кэш, а из него уже передаются запросившим данные программам. Если блок попал в кэш, то все последующие обращения к нему будут получать образ блока из кэша, причем не зависимо, от того - та же самая программа, обращается к блоку, или какая-либо другая. Кэшируется так же и запись на диск, опять же, разделяемая между всеми выполняемыми программами.

ПРОЦЕССЫ. Процессом в Unix'е называется выполняющаяся программа

Средства экономии памяти. Виртуальная память.

РЕЕНТЕРАБЕЛЬНОСТЬ КОДА. Когда одна и та же программа(выполняемый файл) запущена в нескольких экземплярах, то в оперативную память загружается только одна копия выполняемого ассемблерного кода на всех. Каждый выполняемый процесс использует один и тот же текст программы, просто у каждого процесса имеется свой собственный указатель на текущий оператор.

РАЗДЕЛЯЕМЫЕ БИБЛИОТЕКИ. (В Windows есть похожее понятие DLL - динамически подгружаемая библиотека). Некоторое количество часто выполняемых функций (например printf, да и много других) оформляется в виде специальным образом подготовленной библиотеки (SHARED LIBRARY). При компиляции программы, использующей разделяемые библиотеки, эти функции не линкуются внутрь кода программы. Они "выдергиваются" из библиотеки на стадии выполнения программы. Этим мы экономим место на диске и в оперативной памяти: в программах отсутствует код разделяемых функций, а в оперативной памяти эта функция присутствует в одном экземпляре на всех.

SWAPING. Каждый Unix-процесс функционирует в своем собственном 32-х битном виртуальном адресном пространстве, не пересекающемся с другими. Адресное пространство процесса может быть большим, чем физическая оперативная память. Виртуальная память поддерживается с помощью PAGING'а - разрешения виртуальных адресов в физические "на лету", с подкачкой отсутствующих страниц памяти со swap-области на жестком диске.

На самом деле SWAPING'а как такового в Unix'е нет, вместо него применяется гораздо более гибкий PAGING. (swaping - по определению, это ПОЛНАЯ выгрузка программы на swap-область с целью освобождения места в оперативной памяти).

Область памяти, занятая программой разделена на три части: TEXT (выполняемые коды программы), DATA (статические данные программы), STACK (динамические данные). Когда операционка освобождает место в памяти за счет TEXT'а, то она не занимается сбросом его на диск. Она сразу помечает его как свободный. Действительно, когда потребуется загрузить TEXT обратно в память, его можно будет взять из самого выполняемого файла с программой. Такая экономия имеет один побочный эффект. Файл программы, которая в данный момент выполняется, невозможно уничтожить. Операционная система сообщит в этом случае: "text file busy", и откажется выполнять удаление.

БИТ НАВЯЗЧИВОСТИ. (sticky bit). Выполняемая программа может иметь дополнительный атрибут. Так называемый "бит навязчивости". Когда такая программа заканчивает выполнение, операционка (по возможности) старается не занимать память, в которой находился текст программы. Соответственно, повторный ее запуск произойдет очень быстро - ведь программа все еще загружена в память, ее не требуется зачитывать с диска. Нужно просто передать на нее управление.

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

Файловая система в Unix - "деревянная", состоит из файлов и каталогов. На каждом разделе диска создается собственная независимая файловая система. Отдельные файловые системы "сцепляются" вместе, в единое общее дерево директорий. Такая операция называется "монтированием". Выглядит это примерно так:

mount -F ufs /dev/dsk/m197_c0d0s5 /home1

mount -F ufs /dev/dsk/m197_c0d0s4 /usr

df

Получить доступ к файлам "несмонтированной" файловой системы невозможно. Порочная пракика MS-DOSа - сколько разделов, столько и "дисков" ( a: b: c: d: e: ... k: l: m: n:) в Unix не применяется. В Unix всегда есть ровно одно общее дерево каталогов, и, по большому счету, пользователям совершенно все равно, на каком именно диске или разделе диска расположены его файлы /usr/spool/moshkow или /home1/moshkow/bin/mcopy ...

Файловая система Unix кэшируется буферным кэшем. Операция записи на диск выполняется не тогда, когда это приказывает выполняемый процесс, а когда операционная система сочтет нужным это сделать. Это резко поднимает эффективность и скорость работы с диском, и повышает опасность ее использования. Выключение питания на "горячей", работающей Unix-машине приводит к разрушениям структуры файловой системы.

При каждой начальной загрузке Unix проверяет - корректно ли была выключена машина в прошлый раз, и если нет - автоматически запускает утилиту fsck (File System Check) - проверку и ремонт файловых систем..

Внутренняя структура файловой системы Unix.

Раздел диска, в котором создана файловая система, разбит на три части.

СУПЕРБЛОК. Занимает 1 Kb. Содержит служебную информацию:

  • Тип файловой системы,
    Размер
    Начало списка свободных блоков.
    . . . что-то еще

ОБЛАСТЬ INOD-ов. Занимает примерно 8% общего размера раздела. inode - Index-node - описатель файла. Он содержит всю информацию о файле, за исключением имени файла, и собственно данных файла. В inod'е хранится:

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

ОБЛАСТЬ ДАННЫХ. В этой области расположены блоки с данными фай лов. Незанятые блоки провязаны в СПИСОК СВОБОДНЫХ БЛОКОВ

Файлы бывают двух основных типов. ФАЙЛ, КАТАЛОГ.

ФАЙЛ - он и есть файл.

КАТАЛОГ - файл фиксированного формата: состоит из строчек с именами файлов, входящих в каталог

имя_файла1 Номер_Инода1

имя_файла2 Номер_Инода2

. . .

Чтобы получить доступ к файлу по имени, операционная система

  1. находит это имя в каталоге, содержащем файл,

  2. берет Номер_Инода файла,

  3. по номеру находит inod в области inod'ов,

  4. из inod'а берет адреса блоков, в которых расположены данные файла,

  5. по адресам блоков считывает блоки из области данных.

Все.

Формат индексного описателя файла.

Область инодов разбита на 64-х байтные структуры - inod'ы. В inod'е хранится:

  • Тип файла (файл/каталог/специальный файл/fifo/socket)
    Атрибуты (права доступа)
    Владелец файла
    Группа-владелец файла
    Времена создания, модификации, последнего доступа к файлу
    Длина файла
    Адрес 1-го блока файла
    Адрес 2-го блока файла
    ...
    Адрес 10-го блока файла
    Адрес блока косвенной адресации (блока с 256 адресами блоков)
    Адрес блока 2-й косвенной адресации (блока с 256 адресами блоков с адресами)
    Адрес блока 3-й косвенной адресации (блока с адресами блоков с адресами блоков с адресами)

Точный формат структуры файловой системы см. man fs


1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Депутат, объявивший что он гей, поставил в тупик свой электорат.
Избиратели не находят слов, чтобы оценить его работу.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по программированию "Unix, базовые принципы и особенности", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2017
Рейтинг@Mail.ru