Информатика конспект лекций_2012
.pdfЛЕКЦИЯ 13. ПОНЯТИЕ И НАЗНАЧЕНИЕ ОПЕРАЦИОННОЙ СИСТЕМЫ. РАЗНОВИДНОСТИ ОПЕРАЦИОННЫХ СИСТЕМ. СЛУЖЕБНОЕ (СЕРВИСНОЕ) ПО
Операционная система (ОС) – это комплекс системных программ, расширяющий возможности вычислительной системы, а также обеспечивающий управление её ресурсами, загрузку и выполнение прикладных программ, взаимодействие с пользователями. В большинстве вычислительных систем ОС являются основной, наиболее важной (а иногда единственной) частью системного ПО.
Основные функции (простейшие ОС):
1.Загрузка приложений в оперативную память и их выполнение.
2.Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).
3.Управление оперативной памятью (распределение между процессами, виртуальная память).
4.Управление доступом к данным на энергонезависимых носителях (таких, как жёсткий диск, компакт-диск и т. д.), организованным
втой или иной файловой системе.
5.Пользовательский интерфейс.
6.Сетевые операции, поддержка стека протоколов. Дополнительные функции ОС:
1.Параллельное или псевдопараллельное выполнение задач (многозадачность).
2.Взаимодействие между процессами: обмен данными, взаимная синхронизация.
3. Защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.
4. Разграничение прав доступа и многопользовательский режим работы (аутентификация, авторизация).
Существуют две группы определений ОС: «набор программ, управляющих оборудованием» и «набор программ, управляющих другими программами». Обе они имеют свой точный технический смысл, который однако становится ясен только при более детальном рассмотрении вопроса о том, зачем вообще нужны ОС.
Есть приложения вычислительной техники, для которых ОС излишни. Например, встроенные микрокомпьютеры содержатся сего-
130
дня во многих бытовых приборах, автомобилях (иногда по десятку в каждом), сотовых телефонах и т. п. Зачастую такой компьютер постоянно исполняет лишь одну программу, запускающуюся по включении. И простые игровые приставки – также представляющие собой специализированные микрокомпьютеры – могут обходиться без ОС, запуская при включении программу, записанную на вставленном в устройство «картридже» или компакт-диске. Тем не менее, некоторые микрокомпьютеры и игровые приставки всё же работают под управлением особых собственных ОС. В большинстве случаев это UNIX-подобные системы (последнее особенно верно в отношении программируемого коммутационного оборудования: межсетевых экранов, маршрутизаторов).
ОС необходима, если:
вычислительная система используется для различных задач, причём программы, исполняющие эти задачи, нуждаются в сохранении данных и обмене ими. Современные ОС, кроме того, предоставляют возможность непосредственно «связать» вывод одной программы со вводом другой, минуя относительно медленные дисковые операции;
различные программы нуждаются в выполнении одних и тех же рутинных действий. Например, простой ввод символа с клавиатуры
иотображение его на экране может потребовать исполнения сотен машинных команд, а дисковая операция – тысяч. Чтобы не программировать их каждый раз заново, ОС предоставляют системные библиотеки часто используемых подпрограмм (функций);
между программами и пользователями системы необходимо распределять полномочия, чтобы пользователи могли защищать свои
данные от несанкционированного доступа, а возможная ошибка
впрограмме не вызывала тотальных неприятностей;
необходима возможность имитации «одновременного» исполнения нескольких программ на одном компьютере (даже содержащем лишь один процессор), осуществляемая с помощью приёма, известного как «разделение времени». При этом специальный компонент, называемый планировщиком, делит процессорное время на короткие отрезки и предоставляет их поочерёдно различным исполняющимся программам (процессам);
наконец, оператор должен иметь возможность так или иначе управлять процессами выполнения отдельных программ. Для этого служат операционные среды, одна из которых – оболочка и набор
131
стандартных утилит – является частью ОС (прочие, такие, как графическая операционная среда, образуют независимые от ОС прикладные платформы).
Таким образом, современные универсальные ОС можно охарактеризовать, прежде всего, как:
•использующие файловые системы (с универсальным механизмом доступа к данным);
•многопользовательские (с разделением полномочий);
•многозадачные (с разделением времени).
Многозадачность и распределение полномочий требуют определённой иерархии привилегий компонентов самой ОС. В составе ОС различают три группы компонентов:
•ядро, содержащее планировщик; драйверы устройств, непосредственно управляющие оборудованием; сетевая подсистема, файловая система;
•системные библиотеки;
•оболочка с утилитами.
Большинство программ, как системных (входящих в ОС), так и прикладных, исполняются в непривилегированном («пользовательском») режиме работы процессора и получают доступ к оборудованию (и, при необходимости, к другим ресурсам ядра, а также ресурсам иных программ) только посредством системных вызовов. Ядро исполняется в привилегированном режиме: именно в этом смысле говорят, что ОС (точнее, её ядро) управляет оборудованием.
В определении состава ОС значение имеет критерий операциональной целостности (замкнутости): система должна позволять полноценно использовать (включая модификацию) свои компоненты. Поэтому в полный состав ОС включают и набор инструментальных средств (от текстовых редакторов до компиляторов, отладчиков и компоновщиков).
Ядро – центральная часть операционной системы, управляющая выполнениемпроцессов, ресурсамивычислительной системыи предоставляющая процессам координированный доступ к этим ресурсам. Основными ресурсами являютсяпроцессорное время, памятьиустройства ввода-вывода. Доступ кфайловой системе и сетевое взаимодействие такжемогутбытьреализованынауровнеядра.
Как основополагающий элемент ОС, ядро представляет собой наиболее низкий уровень абстракции для доступа приложений к ре-
132
сурсам вычислительной системы, необходимым для их работы. Как правило, ядро предоставляет такой доступ исполняемым процессам
соответствующих приложений за счёт |
использования механиз- |
мов межпроцессного взаимодействия и |
обращения приложений |
к системным вызовам ОС. |
|
Описанная задача может различаться в зависимости от типа архитектуры ядра и способа её реализации.
Операционные системы могут быть классифицированы по базовой технологии (UNIX-подобные, пост-UNIX/потомки UΝΙΧ), типу лицензии (проприетарная или открытая), уровню развития в настоящее время (устаревшие или современные), назначению (универсальные, ОС встроенных систем, ОС PDA, ОС реального времени, для рабочих станций или для серверов), а также по множеству других признаков.
Microsoft Windows 7 – операционная система (рис. 36) семей-
ства Windows NT, следующая за Windows Vista. В линейке Windows
NT система |
носит номер версии |
6.1 |
(Windows |
2000 – 5.0, |
||
Windows |
XP – |
5.1, Windows |
Server |
2003 – |
5.2, Windows |
|
Vista и Windows |
Server 2008 – |
6.0). |
Серверной версией являет- |
ся Windows Server 2008 R2, версией для интегрированных систем –
Windows Embedded Standard 2011 (Quebec), мобильной – Windows Embedded Compact 2011(Chelan, Windows CE 7.0).
Операционная система поступила в продажу 22 октября 2009 г., меньше чем через три года после выпуска предыдущей операционной системы, Windows Vista.
В состав Windows 7 вошли как некоторые разработки, исключённые из Windows Vista, так и новшества в интерфейсе и встроенных программах. Операционная система обладает поддержкой мультитачуправления.
Сетевая технология Branch Cache позволяет кешировать содержимое интернета-трафика. Если пользователю в локальной сети потребуется файл, который уже был загружен кем-то из пользователей его сети, – он сможет получить его из локального кэш-хранилища, а не использовать канал с ограниченной пропускной способностью. Сетевой кеш может работать в двух режимах – Hosted Cache и Distributed Cache. В первом случае файл хранится на выделенном локальном сервере под управлением Windows Server 2008 R2, во втором случае сервер не требуется, а кеш распределеяется для
133
хранения на компьютерах пользователей. Технология рассчитана на крупные сети и предлагается для внедрения на предприятиях в составе корпоративной и максимальной версий ОС.
Рис. 36. Вид рабочего стола в ОС Windows 7
В ОС также встроено около 120 фоновых рисунков, уникальных для каждой страны и языковой версии. Так, русская версия включает тему «Россия» с шестью уникальными обоями высокого разрешения. Все версии включают 50 новых шрифтов. Существующие шрифты доработаны для корректного отображения всех символов. Windows 7 – первая версия Windows, которая включает больше шрифтов для отображения нелатинских символов, чем для отображения латинских. Панель управления шрифтами также подверглась улучшению– по умолчанию, в ней будут отображаться только те шрифты, раскладка для которых установлена в системе. Реализована поддержкаUnicode 5.1. Панель поискаInstant Search теперь распознаёт больше языков. К примеру, распознаются русскиепадежи, склонения, род, единственноеимножественноечисла.
Дополнительным преимуществом Windows 7 можно считать более тесную интеграцию с производителями драйверов. Большинство из них определяются автоматически, при этом в 90 % случаев сохраняется обратная совместимость с драйверами для Windows Vista.
134
Windows 7 поддерживает псевдонимы для папок на внутреннем уровне. К примеру, папка Program Files в некоторых локализованных версиях Windows была переведена и отображалась с переведённым именем, однако на уровне файловой системы оставалась англоязычной.
Новая, 11-я версия DirectX, впервые выпущенная именно в составе этой операционной системы, имеет следующие улучшения: добавлена поддержка новых вычислительных шейдеров, возможность многопоточного рендеринга, улучшена тесселяция, появились новые алгоритмы компресии текстур и др.
Проигрыватель Windows Media Player 12 получил новый интерфейс и стал поистине «всеядным», в отличие от предшественника, которому требовалось большое количество кодеков для воспроизведения. Однако он не может воспроизводить лицензионные BluRay диски с видео, хотя имеет возможность считывать и записывать на них данные.
Несмотря на то, что Центр мобильности Windows не претерпел значительных изменений со времён Windows Vista, Windows 7 работает дольше предшественницы на ноутбуках и потребляет меньше энергии, особенно при воспроизведении DVD.
В Windows 7 реализована более гибкая настройка User Account Control (UAC), которая, в отличие от Windows Vista, имеет ещё два промежуточных состояния между режимами «Всегда уведомлять» и «Никогда не уведомлять» – «Уведомлять, только при попытках программ внести изменения в компьютер» (положение по умолчанию), «Уведомлять, только при попытках программ внести изменения в компьютер (не затемнять рабочий стол)». Стоит заметить, что в отличие от Vista, затемнение происходит только в случае, если программа активна и находится на переднем плане. Если пользователь совершил клик в момент открытия UAC и деактивировал программу, затемнения может и не произойти.
Внесены изменения в технологию шифрования BitLocker, и добавлена функция шифрования съёмных носителей BitLocker to go, позволяющая шифровать съёмные носители, причём даже при отсутствии модуля TPM. Улучшения коснулись и брандмауэра Windows – вернулась функция уведомления пользователя о блокировке программы, которая пытается получить доступ к сети. С помощью групповой политики и функции AppLocker можно будет запретить запуск определенных приложений. Функция DirectAccess позво-
135
ляет устанавливать безопасное соединение с сервером в фоновом режиме, в отличие от VPN, которому требуется участие пользователя. Также DirectAccess может применять групповые политики до входа пользователя в систему.
Примером открытой операционной системы может служить
Linux – ядро операционной |
системы, соответствующее стандар- |
там POSIX (рис. 37). Разработка была начата финским сту-дентом |
|
Линусом Торвальдсом в 1991 |
году. В основном код написан на С |
и с некоторыми расширениями Gcc и на Ассемблере (с использовани-
ем AT&T-синтаксиса GNU Assembler).
Рис. 37. Вид рабочего стола одной из версий ОС Linux
Распространяется в основном свободно на условиях GNU General Public License.
Торговая марка «Linux» зарегистрирована на Л. Торвальдса. Ядро Linux поддерживает многозадачность, виртуальную память,
динамические библиотеки, отложенную загрузку, производительную систему управления памятью и многие сетевые протоколы.
136
На сегодняшний день Linux – монолитное ядро с поддержкой загружаемых модулей. Драйверы устройств и расширения ядра обычно запускаются на «кольце 0», с полным доступом к оборудованию. В отличие от обычных монолитных ядер, драйверы устройств легко собираются в виде модулей и загружаются или выгружаются во время работы системы.
Не задуманный изначально как многоплатформенное ядро, Linux на данный момент портирован на очень широкий круг архитектур. Системы на основе Linux используются в качестве основных практически на всех суперкомпьютерах (более 80 % списка Top500), в том числе и на самых мощных.
Сервисное программное обеспечение – это совокупность про-
граммных продуктов, предоставляющих пользователю дополнительные услуги в работе с компьютером и расширяющих возможности операционных систем.
По функциональным возможностям сервисные средства можно подразделить на средства:
•улучшающие пользовательский интерфейс;
•защищающие данные от разрушения и несанкционированного доступа;
•восстанавливающие данные;
•ускоряющие обмен данными между диском и ОЗУ;
•средства архивации и разархивации;
•антивирусные средства.
По способу организации и реализации сервисные средства могут быть представлены: оболочками, утилитами и автономными программами. Разница между оболочками и утилитами зачастую выражается лишь в универсальности первых и специализации вторых.
Оболочки, являющиеся надстройками над операционными системами (ОС), называются операционными оболочками. Утилиты и автономные программы имеют узкоспециализированное назначение
ивыполняют каждая свою функцию. Но утилиты, в отличие от автономных программ, выполняются в среде соответствующих оболочек. При этом они конкурируют в своих функциях с программами ОС
идругими утилитами. Поэтому классификация сервисных средств по их функциям и способам реализации является достаточно размытой
ивесьма условной. Оболочки предоставляют пользователю качественно новый интерфейс и освобождают его от детального знания операций и команд ОС.
137
Утилиты предоставляют пользователю дополнительные услуги (не требующие разработки специальных программ) в основном по обслуживанию дисков и файловой системы. Эти утилиты чаще всего позволяют выполнять следующие функции:
•обслуживание дисков (форматирование, обеспечение сохранности информации, возможности ее восстановления в случае сбоя
ит. д.);
•обслуживание файлов и каталогов (аналогично оболочкам);
•создание и обновление архивов;
•предоставление информации о ресурсах компьютера, дисковом пространстве, распределении ОЗУ между программами;
• печать текстовых и других файлов в различных режимах и форматах;
• защита от компьютерных вирусов.
Из утилит, получивших наибольшую известность, можно назвать многофункциональный комплекс Norton Utilities. Под программами технического обслуживания понимается совокупность программноаппаратных средств для диагностики и обнаружения ошибок в процессе работы компьютера или вычислительной системы в целом.
Утилиты включают в себя:
•средства диагностики и тестового контроля правильности работы ЭВМ и ее отдельных частей, в том числе автоматического поиска ошибок и неисправностей с определенной локализацией их в ЭВМ;
•специальные программы диагностики и контроля вычислительной среды информационной системы в целом, в том числе про- граммно-аппаратный контроль, осуществляющий автоматическую проверку работоспособности системы обработки данных перед началом работы вычислительной системы в очередную производственную смену.
138
ЛЕКЦИЯ 14. ОСНОВЫ МАШИНОЙ ГРАФИКИ
Долгое время пользоваться и заниматься машинной графикой могли позволить себе лишь наиболее передовые в техническом отношении организации (институты военной и космической техники, крупные архитектурно-строительные, автомобиле- и авиастроительные фирмы и корпорации). Однако в последние десятилетия электроника добилась больших успехов в повышении мощности и одновременно снижении стоимости и габаритов вычислительной техники. Мышление и программирование на языке графических образов становится неотъемлемой частью процесса обучения, а машинная графика – привычным занятием людей самых разных профессий.
Машинная графика – это совокупность методов и приемов для преобразования при помощи персонального компьютера данных в графическое представление или графическое представление в данные. Таким образом, машинная графика представляет собой комплекс аппаратных и программных средств для создания, хранения, обработки и наглядного представления графической информации с помощью компьютера.
Обработка информации, представленной в виде изображений с помощью персонального компьютера, имеет несколько разновидностей и практических приложений. Исторически сложилось так, что область манипулирования с изображениями разделяют на три направления: компьютерная (машинная) графика, обработка изображений, распознавание (анализ) образов.
В задачи компьютерной графики входит синтез (воспроизведение) изображения, когда в качестве исходных данных выступает смысловое описание объекта (образа). Простейшие примеры задач компьютерной графики: построение графика функции одной переменной y = f(x), визуализация процесса вращения трехмерного тела (куб, тетраэдр и т.д.), синтез сложного рельефа с наложением текстуры и добавлением источника света. Здесь также можно выделить бурно развивающуюся в настоящее время интерактивную компьютерную графику. Это система, с которой пользователь может вести «диалог» на уровне команд. Примерами могут быть всевозможные системы автоматизированного проектирования (САПР), геоинфор – мационные системы (ГИС), компьютерные игры.
Обработка изображений представляет собой направление, задачей которого в качестве входной и выходной информации выступают
139