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

Конспект лекций по курсу операционные системы 1 страница



Что же такое свобода? Сухие определения словарей и энциклопедий (вроде следующего: свобода С это Зспособность человека действовать в соответствии со своими интересами и целями, опираясь на познание объективной необходимостиИ) не отражают всей многозначности этого понятия. В. И. Даль говорит о свободе как о Зволе, просторе, возможности действовать по-своему; отсутствии стесненья, неволи, рабства, подчинения чужой волеИ. Он же считает, что свобода С понятие сравнительное: Зона может относиться до простора частного, ограниченного, к известному делу относящемуся, или к разным степеням этого простора, и наконец к полному, необузданному произволу или самовольствуИ.

Лингвисты отмечают, что в понимании русских слово ЗсвободаИ хорошо соответствует образу распелёнутого ребёнка, испытывающего удовольствие от того, что он может двигать ручками и ножками без каких-либо ограничений.

Вопрос о свободе С ЗвечныйИ вопрос философии. Ведь здесь речь идёт о соотношении индивидуального (свободы воли конкретного человека) и общего (всей реальности, частью которой является человек). Может ли часть претендовать на независимость от целого, и если да, то до какой степени?

Античная философия предлагала самые разнообразные ответы на этот вопрос С от утверждения абсолютной свободы человека (Эпикур) до жёсткого детерминизма, настаивавшего на предопределённости человеческой судьбы и любого выбора (стоики). В христианстве вопрос о свободе стал особенно актуален, поскольку требовалось совместить всемогущество Бога с относительной автономностью человека. ЗК свободе призваны вы, братия, С писал апостол Павел, уточняя: С Только бы свобода ваша не была поводом к угождению плотиИ (Гал 5:13). Знаменитый спор между монахом Пелагием, придававшим огромное значение свободе человеческой воли, и богословом Августином Блаженным, указывавшим на невозможность свободных поступков без Божественной помощи С благодати, Церковь решила в пользу последнего. В дальнейшем учение Августина воспринял и развил протестантизм, отказавшийся признать за человеком любое свободное волеизъявление. Позиции детерминизма занимали Лейбниц, Гоббс, Спиноза. Горячими поборниками свободы воли были Фихте, Бергсон, Сартр, Камю.

ЗРыцарем свободыИ называли русского философа Н. Бердяева. Он считал: личность не просто обладает свободой, она и есть свобода. Вот что он писал в ЗСамопознанииИ: ЗВ школьной философии проблема свободы обычно отождествлялась со гсвободой волиТ. Свобода мыслилась как свобода выбора, как возможность повернуть направо или налево. Выбор между добром и злом предполагает, что человек поставлен перед нормой, различающей добро и зло. Для меня свобода означала что-то совсем другое. Свобода есть моя независимость и определённость моей личности изнутри, и свобода есть моя творческая сила, не выбор между поставленными передо мной добром и злом, а моё созидание добра и злаИ. По Бердяеву, свободный человек С это творец, преображающий себя и мир.

КОНСПЕКТ ЛЕКЦИЙ ПО КУРСУ ОПЕРАЦИОННЫЕ СИСТЕМЫ

1. Основные понятия и определения. 1

2. Управление процессами. 7

3. Управление памятью.. 14

4. Управление вводом-выводом.. 26

5. Принципы построения и классификация. 38

6. Защита от сбоев и несанкционированного доступа. 43

1. Основные понятия и определения.
1.1. Назначение и функции операционных систем.

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

· удобство: операционная система делает исполнение компьютера простым и удобным

· эффективность: операционная система позволяет эффективно использовать ресурсы компьютерной системы

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

Согласно многолетней традиции, при рассмотрении основ функционирования ОС принято выделять четыре основных группы функций, выполняемых системой.
Управление устройствами. Имеются в виду все периферийные устройства, подключаемые к компьютеру, — клавиатура, монитор, принтеры, диски и т.п.
Управление данными. Под этим старинным термином сейчас понимается работа с файлами, хотя были времена, когда обращение к данным на магнитных носителях выполнялось путем указания адреса размещения данных на устройстве, а понятия файла не существовало.
Управление процессами. Эта сторона работы ОС связана с запуском и завершением работы программ, обработкой ошибок, обеспечением параллельной работы нескольких программ на одном компьютере.
Управление памятью. Оперативная память компьютера — это такой ресурс, которого всегда не хватает. В этих условиях разумное планирование использования памяти является важнейшим фактором эффективной работы.
Имеется еще несколько важных обязанностей, ложащихся на ОС, которые трудно втиснуть в рамки традиционной классификации функций. К ним, прежде всего, относятся следующие.
Организация интерфейса с пользователем. Формы интерфейса могут быть разнообразными, в зависимости от типа и назначения ОС: язык управления пакетами заданий, набор диалоговых команд, средства графического интерфейса.
Защита данных. Как только система перестает быть достоянием одного изолированного от внешнего мира пользователя, вопросы защиты данных от несанкционированного доступа приобретают первостепенную важность. ОС, обеспечивающая работу в сети или в системе разделения времени, должна соответствовать имеющимся стандартам безопасности.
Ведение статистики. В ходе работы ОС должна собираться, храниться и анализироваться разнообразная информация: о количестве времени, затраченном различными программами и пользователями, об интенсивности использования ресурсов, о попытках некорректных действий пользователей, о сбоях оборудования и т.п. Собранная информация хранится в системных журналах и в учетных записях пользователей.

1.2. Операционная среда

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

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

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

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

1.3. Прерывания

Прерывания аппаратные — это сигналы, при поступлении которых нормальная последовательность выполнения программы может быть прервана, при этом система запоминает информацию, необходимую для возобновления работы прерванной программы, и передает управление подпрограмме обработки прерывания ISR, Interrupt Service Routine. По завершению обработки, как правило, управление возвращается прерванной программе.

Все прерывания можно разделить на три основных типа:

1. аппаратные прерывания от периферийных устройств

2. внутренние аппаратные прерывания называемые также исключениями, exceptions

3. программные прерывания.

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

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

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

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

Одним из важнейших источников прерываний являются периферийные устройства. Как правило, устройство генерирует сигнал прерывания в одном из двух случаев:

· при переходе в состояние готовности

· при возникновении ошибки выполнения операции.

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

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

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

1.4. Процессы и потоки

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

В простейшем случае процесс состоит из одного потока, и именно таким образом трактовалось понятие процесс до середины 80-х годов например, в ранних версиях UNIX и в таком же виде оно сохранилось в некоторых современных ОС. В таких системах понятие поток полностью поглощается понятием процесс, то есть остается только одна единица работы и потребления ресурсов — процесс. Мультипрограммирование осуществляется в таких ОС на уровне процессов.

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

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

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

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

1.5. Файлы и файловые системы

Старинный термин управление данными в настоящее время всегда понимается как управление файлами.

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

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

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

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





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



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