Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика_Гуда

.pdf
Скачиваний:
76
Добавлен:
02.06.2015
Размер:
26.2 Mб
Скачать

Глава 2. Устройство персонального компьютера

Как альтернатива, существует пакет программ CorelDRAW Graphics Suite, включающий программы аналогичного назначения.

Под мультимедиа редактированием обычно понимают создание небольших видеороликов, включающих как видео-, так и звуковую дорожку. Записать и оцифровать видео в любительском и полупрофессиональном виде (конечно, при наличии адаптеров видеозахвата) можно с помощью программ Pinnacle Studio, Adobe Premiere Pro или Ulead Media

Studio. Для редактирования только звуковой дорожки подойдет редак-

òîð Sony Sound Forge.

Современные домашние ПК настолько производительны, что легко позволяют работать с трехмерной графикой. Визуальное конструирование трехмерных моделей и их анимацию позволяет осуществлять 3DMax Studio. Другие пользователи среди программ трехмерного моделирования предпочитают программный пакет Maya.

Для нынешних студентов теоретические знания в области математики, безусловно, необходимы, но пакеты символьных вычислений могут значительно облегчить постижение ее глубин. Среди основных математических пакетов следует указать Maplesoft Maple, так как на его символьном ядре разрабатываются другие, например, Mathsoft MathCAD и Wolfram Research Mathematica. Множество программ позволят автоматизировать статистические исследования и анализ данных, например, StatSoft Statistica или SPSS. Выполнять имитационное моделирование можно в программе GPSS World.

Системы автоматизированного проектирования, с внешней стороны «похожие» на графические пакеты программ, обладают совсем другим внутренним содержанием. Например, распространенная САПРAutodesk AutoCAD представляет собой целую систему программирования и управления 2D и 3D графикой на основе языка AutoLisp. Кроме этого, AutoCAD имеет множество надстроек, которые позволяют автоматизировать процесс проектирования в различных областях производства, например, архитектуре, машиностроении и др.

Студентам, изучающим технические дисциплины, связанные с электротехникой и электроникой будет полезно знакомство с программами электронной лаборатории Electronical WorkBench и MicroCap, помогающими освоить новый подход, основанный визуальном составлении электрических схем из списков элементов и имитационного моделирования режимов работы.

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

61

Информатика

кадрового и др. учета. Масштабы автоматизации с помощью программ 1С: Предприятие различны: начиная от индивидуального предприятия и заканчивая крупной корпорацией (1С: Предприятие + SQL).

Современные системы программирования позволяют разрабатывать программы по технологии быстрой разработки приложений RAD (Rapid Application Development). Эта технология состоит из этапа визуального конструирования интерфейса приложения и этапа разработки программного кода, который будет обрабатывать действия пользователя с компонентами интерфейса. Наиболее мощным и включающим значительное числоязыков программирования является Microsoft Visual Studio.Net. Эта средаразработкипрограммдляоперационнойсистемыWindowsявляется стандартом де-факто, и другие разработчики вынуждены подстраиваться под программирование в среде Microsoft Net Framework. Примером можетслужитьизначальноориентированнаянаязыкПаскаль,атеперьвклю- чающая и другие языки программирования RAD Borland Delphi (версии 2005). Visual Studio.Net существует в четырех версиях: Professional,

Enterprise Developer, Enterprise Architect и Academic. Пользователь можетразрабатыватьпрограммунаодномизчетырехосновныхязыковпрограммирования: Visual Basic, Visual C++, Visual C# и Visual J#. Следует, однако, заметить, что в пакет программ Microsoft Office встроен язык программирования Visual Basic for Applications (VBA). В большинстве случаев, связанных с автоматизацией офисной деятельности, пользовательможетобойтисьегоприменением.

Значительное число прикладных программ появляется в связи с ростом интернет-технологий и электронных телекоммуникаций. Работая с Web-серверами Internet, пользователь прибегает к услугам программыбраузера: Internet Explorer, Opera, Netscape Navigator. Какой из них лучше — зависит от вкуса самого пользователя, но объективно можно утверждать, что для удобной работы с электронной почтой понадобится более совершенная программа, например, The Bat!. Лучшим вариантом, чем браузер, для «скачивания» файловых архивов, наверняка будет специализированная программа типа Reget, Flashget, Download Master. Не следует забывать и о программах фильтрации интернет-тра- фика, которые также называют брандмауэрами или файерволами (firewall). Эта «огненная стена» защитит мирного пользователя Internet от нежелательного воздействия злоумышленников на его компьютер, а также избавит от ненужной рекламы и «всплывающих» окон, которые отнимают время соединения или перегружают трафик пользователя. Среди них стоит упомянуть о программе OutPost Firewall. Пожалуй, эта группа программ на сегодняшний день пополняется наиболее интенсивно, являясь одной из самых востребованных.

62

ГЛАВА 3

Глава 3. Операционные системы

 

 

 

 

 

 

 

 

 

 

 

 

ОПЕРАЦИОННЫЕ СИСТЕМЫ

3.1. Основные сведения из теории операционных систем

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

ОС классифицируются:

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

по числу процессов, одновременно выполняемых под управлением системы: одно- и многозадачные;

по количеству поддерживаемых процессоров: одно– и многопроцессорные;

по разрядности кода ОС: 32– и 64-разрядные;

по типу интерфейса: командные (текстовые) и объектно-ориенти- рованные (графические);

по типу доступа пользователя к ПК: с пакетной обработкой, с разделением времени, реального времени;

по типу использования ресурсов: локальные и сетевые.

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

KПриложение ОС — прикладная программа, которая не относится к компонентам ОС, но работает под ее управлением.

Пользователь взаимодействует с ОС на уровне пользовательского интерфейса (UI — User Interface). Программист взаимодействует с ОС на уровне программного интерфейса (API — Application Program

63

Информатика

Interface). На рис. 3.1 представлено взаимодействие пользователей, программистов и операционной системы. ОС, как интерфейс между пользователем и аппаратными средствами компьютера, на прикладном уровне, предоставляет возможности исполнения программ, доступ к периферийным устройствам ввода-вывода и файловой системе. На программном уровне пользователи ОС могут разрабатывать свои прикладные и системные приложения, пользуясь интерфейсами программирования, например, в ОС Windows XP базовым является программный интерфейс Win32 API. Существуют также интерфейсыMAPI, TAPI, CryptoAPI идр. ПрограммныйинтерфейсОСпредставляетсобойдокументированныеразработчиком,вызываемыенаязыкахпрограммированиявысокогоуровня подпрограммы.ВсовременныхОСнаборывызываемыхподпрограммAPI сходногоназначенияобъединяютсяводиндвоичныйфайл,которыйприложение может использовать, динамически загружая в процессе своей работы — динамически подключаемую библиотеку (DLL).

ОС, играя роль посредника, служит двум целям:

эффективно использовать ресурсы вычислительной системы;

создавать условия для эффективной работы пользователя. Основные функции ОС:

распределение ресурсов;

Пользователь ¹ 1

Пользователь ¹ 2 Пользователь ¹ 3

Программист

Текстовые Электронные Работа с документы таблицы графикой

Интерфейс пользователя

User Interface

Интерфейс прикладного программирования

Application Programming Interface

Операционная система Аппаратура компьютера

Рис. 3.1

64

Глава 3. Операционные системы

управление заданиями, задачами, данными, памятью, процессорами, устройствами ввода-вывода;

организация режимов работы (пакетного, однопрограммного, мультипрограммного, реального);

выполнение программ;

разработка программ;

отладка программ.

Компонентный состав ОС определяется набором функций, для выполнения которых она предназначена. Все программы, входящие в е¸ состав, можно разбить на две группы: управляющие программы и системные обрабатывающие программы (рис. 3.2).

Управляющая программа (микроядро ОС) — обязательный компонент, выполняющий следующие функции:

планирование прохождения непрерывного потока заданий;

управление распределением ресурсов;

реализация принятых методов организации данных;

управление операциями ввода-вывода;

Операционная

система

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управляющие

 

 

 

Системные

 

 

 

программы

 

 

 

программы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

 

 

Ассемблеры

 

 

 

статическими

 

 

 

 

 

 

 

 

 

 

 

ресурсами

 

 

 

 

 

 

 

 

 

 

 

(управление заданиями)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

 

 

Трансляторы

 

 

динамическими

 

 

 

 

 

с языков высокого

 

 

ресурсами

 

 

 

 

 

 

 

уровня

 

 

(управление задачами)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

 

 

Редакторы

 

 

 

данными

 

 

 

 

 

 

 

связей

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Управление

 

 

 

 

 

Загрузчики

 

 

 

восстановлением

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.2

65

Информатика

организация мультипрограммной работы;

управление работоспособностью системы после сбоев.

При управлении статическими ресурсами (заданиями) микроядро ОС осуществляет предварительное планирование потока заданий для выполнения и статическое распределение ресурсов между одновременно выполняемыми заданиями в процессе подготовки к выполнению (инициализации). К таким ресурсам относятся разделы памяти (оперативной, дисковой, внешней) и устройства, допускающие только монопольное использование. Такие ресурсы закрепляются за заданием или его частью с момента его инициализации до момента завершения. Обычно такое управление носит название мониторинга, а программы, его осуществляющие — мониторы.

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

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

Управление восстановлением регистрирует машинные сбои и отказы и восстанавливает работоспособность системы после их возникновения, если это возможно.

В качестве основных аппаратных ресурсов компьютера, подлежащих распределению, обычно рассматривают:

время работы процессора;

адресное пространство основной памяти;

оборудование ввода — вывода;

файлы, хранящиеся во внешней памяти.

Основными подсистемами, обеспечивающими распределение указанных ресурсов ОС, являются:

1)подсистема управления процессами (распределяет ресурс «процессорное время»);

2)подсистема управления памятью (распределяет ресурс «адресное пространство основной памяти»);

66

Глава 3. Операционные системы

3)подсистемауправления устройствами(распределяет ресурсы«оборудование ввода – вывода»;

4)подсистема управления данными (распределяет ресурс «данные или файлы»).

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

адресное пространство памяти, которое доступно процессу;

код программы и данные, помещаемые в адресное пространство для исполнения и обработки;

идентификатор процесса и его контекст, то есть информация о состоянии аппаратных средств, выделенных процессу, и стадии его выполнения;

список ресурсов компьютера, которые требуются процессу;

средства защиты памяти процесса от постороннего вмешательства в код и данные процесса;

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

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

При исполнении программ на процессоре различаются следующие характерные отдельные состояния:

порождение — подготавливаются условия для первого исполнения на процессоре;

67

Информатика

активное состояние — программа исполняется на процессоре;

ожидание — программа не исполняется на процессоре по причи- не занятости какого-либо требуемого ресурса;

готовность — программа не исполняется, но для исполнения предоставлены все необходимые в текущий момент ресурсы, кроме процессора;

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

Процесс находится в каждом из своих допустимых состояний в тече- ние некоторого времени, после чего переходит в какое-либо другое допустимое состояние. Состав допустимых состояний обычно задается в виде графа (рис. 3.3).

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

валом существования процесса.

Процессы можно разделить на следующие классы:

1)обычные (пакетные) — длительность интервала существования не определенная;

2)интерактивные — интервал существования не более времени реакции компьютера на запросы пользователя;

3)реального времени — интервал существования процесса менее некоторого определенного момента времени (гарантированного интервала).

Порождение

Готовность

Активное

 

 

 

Ожидание

Окончание

Рис. 3.3

68

Глава 3. Операционные системы

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

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

1)эквивалентные — при одинаковых исходных данных, различных программах обработки информации и трассах процессов достигается одинаковый конечных результат;

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

3)равные — трассы процессов и все остальное совпадают.

Во всех остальных случаях процессы различны.

По времени существования друг относительно друга процессы делятся на:

1)последовательные — интервалы существования процессов не пересекаются во времени;

2)параллельные — на рассматриваемом интервале времени процессы существуют одновременно;

3)комбинированные — на рассматриваемом интервале времени есть точка, в которой существует один процесс и не существует другой, и точка, в которой два процесса существуют одновременно.

По принадлежности к ОС процессы могут быть:

1)системные;

2)пользовательские. По связности:

1)изолированные — нет связей друг с другом;

2)информационно-независимые — процессы совместно используют

некоторые ресурсы, но не обмениваются информацией;

3)взаимодействующие — процессы взаимосвязаны обменом информацией;

4)конкурирующие — процессы взаимосвязаны по ресурсам. Порядок выполнения процессов определяет ряд отношений между

ними, которые в совокупности называются синхронизирующими правилами.

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

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

69

Информатика

условий: в состоянии готовности этого процесса не существует процессов с большим приоритетом, и процессор либо свободен, либо используется процессом с меньшим, чем Р, приоритетом.

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

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

В общем случае ресурс — это запас неких материальных предметов в составе некоторого объекта.

KРесурс вычислительной системы — это средство компьютера, которое может быть выделено процессу на определенный интервал времени.

Ресурсы можно классифицировать по следующим признакам. По реальности существования:

1)физические;

2)виртуальные.

Главным виртуальным ресурсом можно считать память компьютерной системы, причем следует учесть, что объем физической оперативной памяти гораздо меньше, чем виртуальной оперативной памяти. Виртуальная оперативная память организуется за счет дисковой памяти в результате выгрузок (swapping) программ из первой и замещения программами из второй.

По характеру использования:

1)параллельно-используемый;

2)последовательно-используемый. По возможности расширения свойств:

1)жесткий;

2)расширяемый. По активности:

1)активный;

2)пассивный.

70