Лекции по "Информатике"

Автор работы: Пользователь скрыл имя, 09 Декабря 2012 в 10:21, курс лекций

Описание работы

Временем появления на Земле вида «человек разумный» вполне можно считать тот момент, когда представители этого вида стали собирать, осмысливать, обрабатывать, хранить и передавать разнообразную информацию. Таким образом, человечество (социум) постоянно имеет дело с информацией.
Строгого научного определения понятия «информация» нет. Существует более 300 толкований этого термина.

Файлы: 1 файл

Лекции по Информатике.doc

— 2.85 Мб (Скачать файл)

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

В зависимости  от аппаратных ресурсов компьютера различают  однозадачные и многозадачные ОС, ОС с текстовым и графическим интерфейсом. К однозадачным ОС с текстовым интерфейсом относят ОС MS DOS, к многозадачным с графическим интерфейсом - UNIX, WINDOWS. Многозадачные ОС управляют, распределяют ресурсы компьютера и обеспечивают:

  • возможность одновременной или поочередной работы нескольких программ;
  • возможность обмена данными между программам;
  • возможность совместного использования ресурсов компьютера несколькими программами.

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

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

Функции операционной системы

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

Итак, операционная система выполняет три основные задачи:

  • распределение (allocates) и назначение (assigns) ресурсов компьютера;
  • планирование (schedules) использования ресурсов и времени исполнения задач;
  • осуществление текущего контроля (monitoring) работы компьютера.

Распределение и назначение

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

Планирование

Компьютер обычно выполняет несколько программ параллельно. Каждая задача разбивается на множество «тактов», которые компьютер обрабатывает, переключаясь между задачами. Такты должны выполняться различными устройствами компьютера – одной программе необходимо произвести расчёт электронной таблицы, второй – распечатать документ на принтере, третья обращается к серверу организации, на котором хранится база данных и т.д.  Задача ОС – скоординировать работу всех компонентов компьютера так, чтобы все приложения выполнялись как можно быстрее и эффективнее. Для этого операционной системе необходимо осуществлять планирование использования различных ресурсов компьютера (прежде всего, ЦП, ОЗУ и жёсткого диска). Как правило, каждой задаче присваивается приоритет выполнения, в соответствии с которым и осуществляется планирование.

Контроль

ОС контролирует работу компьютера. Она отслеживает стадии выполнения каждой задачи, а также ведёт журнал учёта – использования компьютера, запущенных программы, случаи несанкционированного использования программ или данных. В любом случае, ОС любого компьютера – и мэйнфрейма и ПК – сама по себе очень большая программа. Поэтому в оперативной памяти всегда хранится лишь часть ОС, называемая ядром (kernel). Большая же часть ОС хранится на жёстком диске. Когда какая-либо часть операционной системы необходима для выполнения данного приложения, эта часть подгружается с жёсткого диска в ОЗУ. Диск, на котором хранится операционная система, называется системным (system disk).

Характеристики  операционных систем

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

Многозадачность

Многозадачность (multitasking) – механизм, позволяющий выполнять на компьютере несколько задач (tasks). В зависимости от вида компьютера, применяется несколько видов реализации этого механизма. Рассмотрим тот, который применяется в операционных системах микрокомпьютеров.

Рис. 4.1. Многозадачность

Как показано на Рис. 4.1, система без поддержки многозадачности может выполнять в каждый момент времени только одно приложение. Такой режим работы компьютера зачастую не позволяет полностью задействовать все его ресурсы – процессор может быть недогружен, большая часть оперативной памяти будет оставаться свободной, периферийные устройства будут ожидать команд ввода или вывода информации. В случае же применения механизма многозадачности, можно запустить несколько приложений. Самое важное при реализации этого механизма – не позволять каким-либо двум приложениям одновременно задействовать одни и те же ресурсы компьютера – будь то ЦПУ, память или периферийные устройства. В случае с оперативной памятью применяется разделение её адресного пространства на отдельные непересекающиеся области и выделение таких областей каждому запущенному приложению. Таким образом, получается, что каждая отдельная программа работает в отведенной ей области памяти и не конфликтует с другими программами. С разделением ресурсов процессора дело обстоит иначе, поскольку процессор как правило один, и может выполнять только одну инструкцию за цикл. Чтобы программы, находящиеся в ОЗУ могли выполняться вместе, каждой из них выделяется определённый интервал времени работы процессора (около. Пользователь не замечает, что компьютер обрабатывает все программы по очереди – ему кажется, что все запущенные приложения выполняются одновременно. Кроме того, каждой программе может быть назначен приоритет. В первую очередь обрабатываются команды программ с более высоким приоритетом; в случае равного приоритета инструкции приложений выполняются в порядке очерёдности; наивысший приоритет всегда имеет ядро операционной системы.

Многопоточность

Механизм многопоточности чем-то напоминает многозадачность. Чтобы  ещё более эффективно использовать ресурсы компьютера, некоторые задачи делятся на отдельные потоки, каждому из которых также назначается приоритет и выделяется интервал процессорного времени. В некоторых операционных системах такие процессы получили название нитей (threads). Благодаря многопоточности, можно в одном приложении, например в мультимедийном графическом редакторе, одновременно обрабатывать один объект, производить расчёт траектории движения другого объекта и распечатывать третий. Кстати, многопоточность широко используется именно для печати. Чтобы не ждать, пока приложение обработает задание на печать, этот процесс выполняется в так называемом фоновом режиме (background printing).

Виртуальная память

Как известно, адресное пространство – это размер памяти компьютера, которую система может использовать. Механизм виртуальной памяти (virtual storage) позволяет выделить часть памяти на жёстком диске, чтобы в дальнейшем система рассматривала эту часть как продолжение первичной. В результате компьютер может адресовать больше памяти. Применение этого механизма, также как многозадачности и многопоточности, позволяют добиться существенного повышения эффективности работы компьютера. Из-за того, что размер первичной памяти ограничен, часть программного кода каждой из программ записывается на жёсткий диск в так называемый файл подкачки (swap file), освобождая, таким образом, оперативную память для других программ. Однако следует помнить, что жёсткие диски намного медленнее ОЗУ, поэтому размер первичной памяти должен быть достаточно большим.

Симметричная многопроцессорная  обработка

Симметричная многопроцессорная  обработка (Symmetric MultiProcessing, SMP) – это  способность операционной системы  работать с компьютером, в котором  установлены два и более процессора. Операционная система в данном случае должна обеспечивать балансировку нагрузки, чтобы дать работу каждому из процессоров. Механизм SMP может использоваться как при выполнении одной программы, так и нескольких приложений – в любом случае нагрузка распределяется равномерно.

Графический интерфейс пользователя

Одной из основных «обязанностей» операционной системы является обеспечение и поддержка диалога пользователя с компьютером, что достигается с помощью пользовательского интерфейса. Интерфейс пользователя (user interface) – это средства взаимодействия компьютера с пользователем.

У ранних операционных систем, таких как DOS, интерфейс был построен на базе командной строки (command prompt). Для выполнения какой-либо операции, пользователю нужно было набрать в командной строке соответствующую команду. Например, чтобы удалить документ text, требовалось ввести следующую команду:

delete c:\text

Поскольку пользователю необходимо выполнять  множество различных действий с программами и документами, требовалось помнить довольно много различных команд, причём у большинства программ был ещё и набор своих собственных команд. Разумеется, работу с компьютером такой интерфейс делал отнюдь не приятной. Современные операционные системы обладают графическим пользовательским интерфейсом (Graphical User Interface, GUI). Каждый объект системы, будь то документ или программа, отображается графическим символом, называемым пиктограммой или иконкой (icon). Большинство команд выполняется с помощью мыши – с помощью курсора объект выделяется, а затем пользователь одним движением руки выполняет команду. GUI помогает пользователю при использовании многозадачного режима – каждая запущенная программа отображается на экране в отдельной области – окне (window). Чтобы перейти из одного запущенного приложения в другое, достаточно просто щелкнуть мышью по любой части окна нужной программы. Многие GUI используют систему всплывающих экранных меню (pull-down menu) и дополнительные диалоговые окна, чтобы облегчить пользователю ввод команд и данных. Сторонники GUI утверждают, что этот механизм позволяет сэкономить время обучения начинающих пользователей. С этим трудно не согласиться – часто у пользователей просто нет времени на запоминание команд не только операционной системы, но ещё и каждого приложения. GUI позволяет выполнять основные операции, такие как получение помощи, сохранение или печать документов одним и тем же способом в любом приложении. Сложный набор команд может быть выполнен несколькими щелчками мыши по пиктограммам. Даже работа с сетями может полностью вестись через GUI. Единственное исключение в применении графического интерфейса – тонкая настройка системы и некоторых приложений: здесь ещё не все автоматизировано, и профессионалы часто обращаются к режиму командной строки.

Классификация операционных систем по назначению

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

Системы реального времени

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

Операционные системы реального  времени принято делить на два  класса: жёсткого и мягкого реального времени. Можно выделить признаки необходимости использования систем жёсткого реального времени:

  • недопустимость никаких задержек ни при каких условиях;
  • бесполезность результатов при опоздании;
  • катастрофа при задержке реакции;
  • цена опоздания бесконечно велика.

Хорошим примером системы жёсткого реального времени является бортовая система управления самолётом. Среди систем с жёстким реальным временем можно выделить распространённую коммерческую операционную систему QNX, которая основывается на UNIX и имеет схожий интерфейс.

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

  • за опоздание результатов приходится платить;
  • снижение производительности системы, вызванное запаздыванием реакций, приемлемо.

Операционные системы мягкого  реального времени могут использоваться в мобильных и коммуникационных системах - там, где цена опоздания не так велика. В настоящее время многие многозадачные операционные системы разделения времени модифицируются для того, чтобы соответствовать требованием мягкого реального времени. Среди примеров можно выделить варианты Windows NT и специфические версии ядра Linux.

Встраиваемые системы

Такие системы работают на специфическом аппаратном обеспечении (автомобили, микроволновые печи, роботы) и удовлетворяют некоторым требованиям ко времени отклика системы. Как правило, в таких операционных системах применяются специфичные алгоритмы, минимизирующие потребляемые ресурсы. В настоящее время широкое распространение имеют операционные системы Windows Embedded фирмы Microsoft и различные версии операционной системы Linux.

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

Для решения очень сложных и объёмных вычислительных задач создаются специализированные компьютеры, содержащие сотни и тысячи процессоров. Для управления такими системами применяются специальные операционные системы, в которых особенно важны вопросы производительности и скорости обмена между элементами системы.

Операционные системы для серверов

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

Примерами таких систем могут служить: банковские системы, веб-серверы и серверы баз данных, файловые серверы масштаба предприятия, многопользовательские терминальные серверы. Традиционно этот класс систем обслуживается коммерческими операционными системами - различными версиями UNIX, операционными системами от компаний IBM, Novell, Sun, Microsoft. Сейчас все большую популярность в этом классе систем завоёвывают открытые свободнораспространяемые операционные системы.

Информация о работе Лекции по "Информатике"