- Типы работ
- Форма обучения
- Учёба
- Личное развитие
- Общие советы
Что изучает предмет “Операционные системы”
Преподавание курса “Операционные системы” (ОС) ставит перед собой цель предоставить студентам систематическое и целостное представление о значении и месте операционных систем, об основных способах инсталяции, настроек и поддержки программных продуктов.
Курс предполагает постановку следующих задач:
- ознакомление с основными понятиями операционных систем;
- ознакомление с различиями современных операционных систем;
- обучение навыкам работы в различных интерфейсах различных операционных систем;
- ознакомление с инсталляцией и администрированием различных операционных систем;
- ознакомление с различиями в работе с локальными и глобальными сетями.
По завершении курса “Операционные системы” студенты должны быть осведомлены о назначении, функциях и основных составных частях ОС; понимать разницу между разными ОС, знать о порядке и вариантах инсталляции ОС; иметь представление о технологиях работы с глобальными и локальными сетями; иметь знания о том, как пользоваться различными интерфейсами различных операционных систем по курсу «Операционные системы, среды и оболочки».
Информационные технологии проникают во все сферы нашей жизни, все более развиваясь и захватывая больше областей человеческой жизнедеятельности. Кроме ставших уже обыденностью персональных компьютеров, изобретается и появляется все больше других встроенных средств вычислительной техники. Сейчас прогресс добрался до самых далеких деревенек, где пользователей информационных технологий становится все больше, и при всем при этом происходит развитие двух противоположных направлений. С одной стороны, информационные технологии становятся все более сложными, для их использования и дальнейшего развития необходимо обладать довольно глубокими познаниями. Но с другой стороны, развитие направлено на удобство ординарного пользователя и происходит упрощение интерфейсов для взаимодействия пользователей с компьютерами. Компьютеры и информационные системы превращаются во все более доступное и понятное даже для людей, которые не являются специалистами в области информатики. А такое стало возможным прежде всего потому, что пользователи и их программы взаимодействуют с вычислительной техникой при помощи специального (системного) программного обеспечения, а именно: через операционную систему.
Операционная система обеспечивает взаимодействие или интерфейсы и для выполняющихся приложений, и для пользователей. Программы пользователей, да и многие служебные программы делают запрос у операционной системы на выполнение операций, которые довольно часто можно встретить почти в любой программе. Операциями такого рода являются операции ввода-вывода, запуск или остановка какой-нибудь программы, получение дополнительного блока памяти или его освобождение и многие другие. Такие операции нецелесообразно программировать каждый раз заново и размещать в виде двоичного кода в телепрограммы, поэтому их намного рациональнее собрать вместе и предоставлять для выполнения по запросу из программ. Вот это и есть одна из самых важных операционных систем. Прикладные программы, да и многие системные обрабатывающие программы, не имеют прямого доступа к аппаратуре компьютера, а взаимодействуют с ней только через запрос к операционной системе. Так и пользователи, вводя команды операционной системы или выбирая всевозможные действия, которыми обладает система, общаются с компьютером и своими программами. Подобное взаимодействие происходит лишь благодаря возможностям операционной системы. Кроме исполнения данной значимой функции, операционные системы берут на себя ответственность за эффективное распределение вычислительных ресурсов и организацию надежных вычислений.
Итак, операционная система (ОС) является программой, которая делает возможным рациональное использование оборудования компьютера комфортным и благоприятным для пользователя путем.
Любая вычислительная система состоит из двух общих компонентов. Первый - тот, который на английском называют «hardware», или техническим обеспечением, которое включает в себя процессор, память, монитор, дисковые устройства и т.д.
Второй составляющей вычислительной системы является программное обеспечение. Все программное обеспечение разделяют на две части: прикладное и системное. К прикладному программному обеспечению, как правило, относятся разнообразные банковские и прочие бизнес-программы, игры, текстовые процессоры и т.п. Под системным программным обеспечением принято понимать те программы, которые способствуют функционированию и разработке прикладных программ. Необходимо отметить, что такое разделение на прикладное и системное программное обеспечение можно считать условным. Например, для обычного пользователя, который не лезет в дебри программирования, Microsoft Word будет являться системной программой, а для программиста, это – приложение. Компилятор языка Си для обычного программиста – системная программа, а для системного – прикладная. Такое туманное разграничение позволяет, тем не менее, выделять отдельную и общую часть системного программного обеспечения – операционную систему.
Каково же определение операционной системы? И несмотря на то, что все мы пользуемся и эксплуатируем операционные системы каждый день, далеко не каждый из нас может дать точное определение данному явлению. Далее следуют основные точки зрения по этому вопросу.
Операционную систему можно рассматривать как виртуальную машину. При создании ОС применяется абстрагирование, которое является важнейшим способом упрощения и дает возможность сконцентрироваться на взаимодействии высокоуровневых компонентов системы, при этом игнорируются детали их реализации. С этой точки зрения ОС представляет собой взаимодействие или интерфейс между пользователем и компьютером.
Структура большей части компьютеров на уровне машинных команд очень неудобна для использования прикладными программами. Естественно, что программист среднего уровня не может принимать во внимание различные признаки оборудования (а именно, разработки драйверов устройств), а должен иметь простую высокоуровневую абстракцию, например, представляя информационное пространство диска как набор файлов. Файл можно использовать, то есть открыть для чтения или записи, использовать для получения или сброса информации, а потом закрывать. Это легче, чем думать о деталях перемещения головок дисков или организации работы мотора. Точно так же при помощи простых и ясных абстракций, от глаза программиста скрыты все ненужные подробности организации прерываний, работы таймера, управления памятью и т. д. Помимо того, современное оборудование обладает возможностью формирования неограниченного размера оперативной памяти и числа процессоров. Вся ответственность за подобные действия принадлежит операционной системе. Таким образом, операционная система предстает перед пользователем в качестве виртуальной машины, которую легче представить и работать, чем с оборудованием компьютера.
Операционная система совершает также и управление всеми частями сложного строения компьютера. Операционная система, например, определяет очередность запуска программ, а не то, что бы получилось, если бы несколько программ сразу и одновременно попытались выводить на принтер. Начался бы настоящий программный хаос, а так при помощи буферизации информации, все происходит в порядке очереди. Поэтому, здесь операционная система выполняет роль менеджера ресурсов, контролируя и упорядочивая распределение процессоров, памяти и других ресурсов между различными программами.
Еще одно свойство операционных систем – это способность защищать пользователя и программы.
Операционная система сохраняет информацию на диске, не разрешает программам одного пользователя мешать работе программ другого пользователя. Таким образом, здесь операционная система выступает в роли организатора безопасной работы пользователей и их программ.
И в конце концов, операционную систему можно считать программой, которая непрерывано работает на компьютере и взаимодействует со всеми прикладными программами. Это еще одно возможное определение ОС, однако надо принимать во внимание, что во многих современных операционных системах бесперерывно работает только часть операционной системы, которую называют ядром.
Как мы можем заметить, четкого и конкретного определения того, что есть операционная система нет.
Теперь можно рассмотреть классификацию ОС. Существует сравнительно небольшое количество классификаций: по назначению, по режиму обработки задач, по способу взаимодействия с системой и по способам построения.
- Традиционно принято различать операционные системы общего и специального назначения. ОС специального назначения, в свою очередь, подразделяются на ОС для носимых микрокомпьютеров и различных встроенных систем, организации и ведения баз данных, решения задач реального времени и т.п. Современные мультизадачные ОС относят к ОС общего назначения, поскольку их можно использовать для самых разнообразных целей.
- По режиму обработки задач существуют ОС, которые обеспечивают однопрограммный и мультипрограммный (мультизадачный) режимы. К однопрограммным ОС относят, например, MS DOS. Мультипрограммный режим обеспечивает параллельное выполнение нескольких приложений, сама ОС осуществляет необходимую синхронизацию вычислений и взаимодействие.
- По способу взаимодействия с компьютером различают диалоговые системы и системы пакетной обработки. Использование систем пакетной обработки довольно серьезно сократилось по сравнению с диалоговыми системами. Когда система работает диалоговом режиме, то можно различить однопользовательские (однотерминальные) и мультитерминальные ОС. В мультитерминальных ОС с одной вычислительной системой одновременно могут работать несколько пользователей, каждый со своего терминала, Ясно, что для организации мультитерминального доступа к вычислительной системе необходимо обеспечить мультипрограммный режим работы. Например, Linux и частью Windows XP. Здесь каждый пользователь входит в систему и получает свою виртуальную машину. Если возникла необходимость на время передать компьютер другому пользователю, то вычислительные процессы первого пользователя совсем не обязательно завершать, так как для этого другого пользователя система создает новую виртуальную машину и компьютер будет выполнять задачи и первого, и второго пользователя.
- ОС реального времени (ОСРВ) обеспечивает обработку поступающих заданий в течение заданных интервалов времени, которые нельзя превышать. Поток заданий в общем случае не планомерный и не регулируется оператором, то есть задания поступают в непредсказуемые моменты времени и без всякой очередности. А в ОС, которые не решают задач реального времени, работают с опредленными расходами процессорного времени на этапе инициирования задач. Для реализации режима реального времени нужна организация мультипрограммирования. Мультипрограммирование можно считать основным средством повышения производительности вычислительной системы, а для решения задач реального времени производительность становится важнейшим фактором. Лучшая производительность систем реального времени обеспечивется однотерминальными ОСРВ. Средства организации мультитерминального режима замедляют работу системы в целом, но расширяют функциональные возможности системы. Одной из наиболее известных ОСРВ для персональных компьютеров является ОС QNX.
- По основному архитектурному принципу операционные системы бывают микроядерные и макроядерные (монолитные). Пример, микроядерной ОС - ОСРВ QNX, а в качестве монолитной - Windows 95/98 или ОС Linux. Если ядро ОС Windows мы не можем изменить, нам недоступны его исходные коды и у нас нет программы для компиляции этого ядра, то в Linux мы можем сами собрать нужное нам ядро, включив в него те программные модули и драйверы, которые считаем целесообразным включить именно в ядро.
Обратимся к свойствам ОС.
Логично, что свойства операционных систем определяются требованиями, необходимыми для их функционирования.
- Надежность необходимое качество операционной системы. ОС должна уметь определять и проводить диагностику ошибок, а также восстанавливать работоспособность компьютера после тех характерных ошибок, которые имеют место по вине пользователя, а также свести к минимуму проблемы, которые пользователь может причинить системе своими неправильными действиями.
- Защита программ и данных от взаимного влияния их друг на друга еще одно необходимое свойство операционной системы.
- Предсказуемость. Пользователь должен знать, что операционная система ответит на его запросы предсказуемым образом. Команды не должны меняться, они должны быть одинаковыми вне зависимости от последовательности данных команд.
- Удобство – свойство необходимое для облегчения работы пользователя. Операционная система должна действовать в соответствии с учетом основных факторов человеческой психологии.
- Эффективность – свойство ОС, которое позволяет использовать минимум ресурсов системы для ее для собственных нужд, предоставляя эти ресурсы для работающих программ пользователя.
- Гибкость. ОС должна быть гибкой в том плане, чтобы давать возможность увеличивать или уменьшать используемые аппаратные ресурсы с той целью, чтобы улучшать эффективность и скорость работы программ.
- Модифицируемость – свойство, которое позволяет ОС иметь возможность добавления новых функциональных модулей, которые появляются в процессе ее совершенствования.
- Ясность. Система должна содержать информацию о процессах, программах и ходе их выполнения, чтобы пользователь мог знать, что происходит с его компьютером.
Знание основ построения операционных систем и принципов их функционирования позволяет использовать компьютеры более эффективно. Их детальное изучение помогает использовать эти знания во время создания программного обеспечения. Известно, что навыки в использовании основных принципов организации вычислительных процессов, понимание компьютерных проблем и способов их решения дают возможность осознанно подходить к эксплуатации персонального компьютера.