Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Среда пользователя



1. Гордеев, А. В. Операционные системы.: Учебник для вузов. 2-е изд. Спб.: Питер, 2006. 416 с.

2. Девис, У. Операционные системы.: Пер. с англ. М.: Мир, 1980. 440 с.

3. Лорин, Г. и Дейтел, Х. Операционные системы.: Пер. с англ. М.: Финансы и статистика, 1984. 392 с.

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

5. Таненбаум, Э. Современные операционные системы.:. 2-е изд. Спб.: Питер, 2002. 1040 с.


[1] См. раздел «Процессы и потоки»

[2] Здесь следует понимать, что на физическом носителе, в частности на жестком диске (НЖМД), упорядочить данные при их записи не представляется возможным. Данные хранятся разрозненно (фрагментировано), а для их корректной «сборки» в единое целое (например, в файл), в специальных областях диска записано, где расположен каждый фрагмент файла и в какой последовательности эти фрагменты следует собирать.

[3] Не следует путать с компьютерными сетями. Название «сетевая» в данном случае отражает лишь структурную организацию и представление информации. Существует также самостоятельное понятие сетевой файловой системы, подразумевающей доступ к файлам, расположенным на различных компьютерах в локальной или глобальной сети.

[4] Данную процедуру следует отличать от идентификации (опознавания субъекта информационного взаимодействия) и авторизации (проверки прав доступа к ресурсам системы).

[5] Следует отметить, что подсистема защиты и администрирования предоставляет широкий спектр средств обеспечения отказоустойчивости и безопасности. И всё же, безопасность и отказоустойчивость наибольшим образом зависит от настройки указанных средств. А соответственно, является прямой задачей администратора системы.

[6] Таненбаум Э. Современные операционные системы.: Пер. с англ. 2-е изд. — СПб,: Питер, 2007

[7] Определение Грегори Пфистер (Gregory F. Pfister), одного из первых архитекторов кластерной технологии

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

[9] Для современных процессоров показатель производительности имеет порядок ГГц, т.е. тысяч МГц (1МГц = 1 млн. операций в секунду).

[10] Граф — это пара , где — это множество вершин , а — множество рёбер . Граф называется ориентированным или направленным, если . Ребра направленного графа на диаграмме обозначаются стрелками.

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

[12] Джиттер указывает именно неравномерность, это не то же самое что задержка.

Среда пользователя

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

Среда пользователя может быть отображена на экран командой env.

3) Стартовые файлы shell:

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

.profile

Этот файл позволяет пользователю определить или настроить переменные среды, характеристики терминала, а так же выполнить любое приложение при входе в системы.

Если.profile содержит команду

exec <приложение>

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

Общесистемный стартовый файл (выполняется для всех пользователей, работающих с Borne, Korn или Posix-shell'ом):

/etc/profile

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

На рисунке представлены функции процедур, выполняющихся при входе пользователя в систему. Выполнение их в совокупности называется авторизацией пользователя. Авторизация UNIX включает 3 этапа:

1. Getty - выводит на экран содержимое файла /etc/issue. Выдаёт приглашение login. Запускает процесс login.

2. Login - определяет допустимость введённого имени и пароля (и проверяет их на соответствие в файле etc/passwd). Если запись есть, делает текущим начальный каталог пользователя и запускает shell

3. Shell - выполняет /etc/profile (общесистемный командный файл), а затем.profile (настраивает среду конкретного пользователя, содержится в домашнем каталоге пользователя) и выводит приглашение shell. Таким образом выполняется настройка параметров среды пользователя.

4) Хранимые переменные в shell:

В UNIX различают несколько видов переменных:

В Shell встроены две области переменных:

Установка переменных shell: Для установки переменной необходимо указать имя переменной и значение (<имя>=<значение>). Особенности задания переменных:

Shell хранит переменные или в локальной области пользователя, или в среде. Для передачи переменных из локальной области в среду необходимо выполнить команду export. Пример:

EDITOR=vi

export EDITOR

Пример оболочек:

MC - Midnight comander

DeCo – Demos Comander

5. Принципы организации многозадачного режима в операционных системах.

(лекция 01.09.2003)

Режимы вычислительного процесса. С точки зрения программиста-администратора (?) можно выделить три основных типа вычислительного процесса:

1.1) пакетный режим

1.2) режим разделения времени

1.3) режим реального времени

С точки зрения пользователя-оператора различают:

2.1) диалоговый режим

2.2) режим виртуальных машин.

1.1) Пакетный режим:

Все прикладные программы оформляются в виде отдельных заданий, в каждом из которых содержатся описания требуемых вычислительных ресурсов. Из таких отдельных заданий составляется последовательность, называемая пакетом. В пакете каждое задание является независимым от другого. Задания в пакете выполняются строго последовательно, одно за другим. При этом все ресурсы последовательно передаются очередному заданию:

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

1.2) Режим разделения времени:

Все ресурсы передаются поочерёдно активным задачам, которые одновременно существуют в вычислительной системе. Находится в контуре управления (??):

Для планирования может применяться алгоритм RR (Routine Round?) - круговой циклический алгоритм. Используется в большинстве систем с разделением времени для интерактивных процессов, т.е. процессов, связанных с интерактивными терминалами.

Выделяется квант времени: , где n - число процессов.

1.3) Режим реального времени: характеризуется "немедленной" реакцией системы на предусмотренное внешнее событие (например, на сигналы, поступающие от внешних устройств). Система реального времени характеризуется временем реакции на событие.

2.1) Диалоговый режим: характеризуется интерактивным взаимодействием пользователя и программы, решающей конкретную задачу.

2.2) Режим виртуальных машин:

Вычислительные системы <=> многопользовательский режим. Обеспечивает оптимальное использование ресурсов супермашин. Взаимодействие виртуальных машин обеспечивает монитор виртуальных машин (МВМ):

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

Средства организации многозадачного режима:

Символом * отмечены функции, необходимые для реализации многозадачности.

Типовой состав ОС:

Основные функции ядра ОС:

...подробнее о некоторых из них:

1) Прерывания:

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

Когда происходит некоторое событие, система посылает соответствующий сигнал об этом событии процессу (см. лекция 24.03.2004). По принятому соглашению большинство сигналов вызывает прекращение выполнения процессов. Некоторые сигналы, кроме прекращения процесса, записывают состояние ядра системы в файл.

Замечание: сигналы от клавиатуры могут получать только команды, которые выполняются в приоритетном режиме.

Прерывание представляет собой способ захватывания сигналов, посланных процессом выполнение в соответствии с видом сигнала некоторого действия. Эти действия называются программами обработки прерываний (обработчиками прерываний). Они выполняются только тогда, когда выдаётся соответствующий сигнал. Для управления сигналами служит специальная команда:

trap

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

trap 'команды' сигнал[сиргнал...]

Пример:

$cat > mytrap

trap 'echo bye; exit' INT QUIT TERM

В качестве команды для trap можно использовать специально написанную Shell-процедуру. Обычно команду trap помещают в начало Shell-процедуры.

Супервизорные программы и обработчики прерываний бывают нескольких типов:

1-го рода - полностью резидентные (постоянно находятся в оперативной памяти);

2-го рода - частично резидентные

3-го рода - резидентные по условию.

2) Планировщики - это программы, которые отвечают за распределение времени процессов конкретным задачам. Они различаются по уровню планирования и по дисциплинам планирования. Обычно в системе существует 3 уровня планировщиков:

0. Диспетчеры (самые быстрые)

1. Планировщики первого уровня (оперативные)

2. Планировщики второго уровня- долговременные планировщики.

В качестве дисциплин планирования чаще всего используются дисциплины: FIFI, LIFO, RL (Routine Round (?) - круговой циклический алгоритм) и RL (чем раньше поступил запрос, тем выше приоритет планирования). Классическим примером динамического приоритетного планирования является алгоритм Корбато. По этому алгоритму для планирования выделяется несколько приоритетных уровней, причём каждому уровню соответствует свой квант времени, который может получить активный процесс, находящийся на данном уровне. Существует несколько уровней планирования и каждому соответствует свой квант времени:

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

3) Управление оперативной памятью (некоторые сведения):

Различают связанное и несвязанное распределение памяти. При связанном распределении каждому процессу отводится один сплошной блок памяти. При несвязанном распределении вся память разбивается на ряд отдельных блоков (при этом возникает проблема фрагментации памяти, которая существенно осложняет задачу выделения памяти). Для борьбы с фрагментацией используются 3 вида стратегии: первый подходящий (при просмотре свободного участка, выбирается первый подходящий участок памяти), наиболее подходящий (минимальная разница требуемого и имеющегося объёма участков памяти) и наименее подходящий (выбирается самый большой свободный участок памяти).

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

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

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

6. Коммуникационные средства многопользовательских операционных систем.

В качестве Коммуникационных средств в Unix имеется электронная почта, через почтовый ящик (на базе команды mail) и прямые сообщения на экран определённого терминала (write) либо всех терминалов сразу (wall).

Команда mail имеет множество модификаций, задаваемых ключами и аргументами команды, предоставляя мощные средства поддержки разнообразных форм взаимодействия: от организации обмена сообщениями с их хранением в "почтовом ящике" до формирования и редактирования самих сообщений. Роль почтового ящика выполняет специальный системный файл. Каждое сообщение сопровождается заголовком, идентифицирующим пользователя-отправителя. Если при очередном входе пользователя в систему в почтовом ящике для него есть хотя бы одно сообщение, то система выводит на экран: you have mail

Write -> сообщение на терминал пользователей.

Результатом работы команды является "вторжение" на экран адресата приоритетного по отношению к текущей экранной выдаче приглашения к общению с отправителем и текст передаваемого сообщения с идентификатором конца сообщения <EOT>:

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

$ mesg n <NewLine>

< прием сообщений блокирован >

$ mesg y <NewLine>

< прием сообщений разрешен >

Wall (write all) может отправить только root.

Система UNIX позволяет пользователям, работающим на одной и той же или на разных машинах, посылать почту другим пользователям или общаться друг с другом. Команда mail посылает сообщения (письма) другим пользователям, в то время как команда write используется для связи с пользователем, работающим за другим терминалом, в интерактивном режиме.

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

Команда mail напечатает на терминале первое письмо из текущей почты, снабдив его «почтовым штемпелем». Затем будет выдано приглашение. Полученное письмо можно уничтожить, набрав литеру d, напечатать его снова, набрав р, или напечатать следующее письмо из текущей почты, нажав клавишу возврата каретки. Чтобы сохранить письмо в некотором файле, следует воспользоваться запросом: s имя-файла. Если в запросе s не указано имя файла, письмо будет сохранено в файле mbox в регистрационном оглавлении пользователя. Сохраненные и уничтоженные письма удаляются из почтового файла при выходе из команды mail. Выход осуществляется при помощи запроса q. Чтобы выйти из команды mail без каких-либо изменений в почтовом файле, следует воспользоваться запросом -. Это полезно в случае, если некоторые письма были уничтожены по ошибке. В процессе обработки корреспонденции нажатие клавиши (del. приводит к прекращению выполнения текущего действия (обычно печати письма); выдается приглашение для ввода следующего запроса. Почту можно послать одному или нескольким пользователям с помощью команды:





Дата публикования: 2014-11-29; Прочитано: 2048 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.014 с)...