Составить таблицу характеристик операционных систем. Основные семейства операционных систем

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

· абстрагирование (abstraction);

· инкапсуляция (encapsulation);

· модульность (modularity);

· иерархия (hierarchy).

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

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

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

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

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

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

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

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

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

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

Зависимости между классами (объектами)

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

Между объектами можно устанавливать зависимости по данным. Эти зависимости выражают связи или отношения между классами указанных объектов. Примеры таких зависимостей изображены на рисунке 2.6 (первые две зависимости - бинарные, третья зависимость - тренарная). Зависимость изображается линией, соединяющей классы над которой надписано имя этой зависимости, или указаны роли объектов (классов) в этой зависимости (указание ролей - наиболее удобный способ идентификации зависимости).

Рис. 2.6. Зависимости между классами

Зависимости между классами являются двусторонними: все классы в зависимости равноправны. Это так даже в тех случаях, когда имя зависимости как бы вносит направление в эту зависимость. Так, в первом примере на рисунке 2.6 имя зависимости имеет_столицу предполагает, что зависимость направлена от класса страна к классу город (двусторонность зависимости вроде бы пропала); но следует иметь в виду, что эта зависимость двусторонняя в том смысле, что одновременно с ней существует и обратная зависимость является_столицей. Точно таким же образом, во втором примере на рисунке 2.6 можно рассматривать пару зависимостей владеет-принадлежит. Подобных недоразумений можно избежать, если идентифицировать зависимости не по именам, а по наименованиям ролей классов, составляющих зависимость.

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

Дальнейшие примеры зависимостей между классами приведены на рисунке 2.7. Первый пример показывает зависимость между клиентом банка и его счетами. Клиент банка может иметь одновременно несколько счетов в этом банке, либо вовсе не иметь счета (когда он впервые становится клиентом банка). Таким образом, нужно изобразить зависимость между клиентом и несколькими счетами, что и сделано на рисунке 2.7. Второй пример показывает зависимость между пересекающимися кривыми (в частности, прямыми) линиями. Можно рассматривать 2, 3, и более таких линий, причем они могут иметь несколько точек пересечения. Наконец, третий пример показывает необязательную (optional) зависимость: компьютер может иметь, а может и не иметь мышь.


Зависимостям между классами соответствуют зависимости между объектами этих классов. На рисунке 2.8 показаны зависимости между объектами для первого примера рисунка 2.6; на рисунке 2.9 показаны зависимости между объектами для примеров, изображенных на рисунке 2.7.

Рис. 2.7. Дальнейшие примеры зависимостей. Обозначения


Рис. 2.8. Зависимости между объектами

Отметим, что при изображении зависимостей между объектами мы, как правило, знаем количество объектов и не нуждаемся в таких обозначениях как "несколько", "два и более", "не обязательно".

При проектировании системы удобнее оперировать не объектами, а классами.

Рис. 2.9. Более сложные зависимости между объектами

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

Теперь у нас есть все необходимые понятия, чтобы описать процесс построения объектной модели. Этот процесс включает в себя следующие этапы:

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

Объектная модель существующего бизнеса показывает как, и за счет чего реализуются прецеденты. Данная модель раскрывает внутреннее устройство бизнеса, а именно: какие виды ресурсов используются для реализации прецедентов и каким образом они взаимодействуют. Описание объектной модели базируется на понятии "объект". Объекты представляют участников процессов и различного рода сущности (готовая продукция, заказ и т.д.).

Интерфейсные объекты, исследуемого бизнес-процесса:

  • 1. Менеджер по работе с клиентами. Атрибуты: ФИО, должность, заработная плата. Обязанности: взаимодействует с клиентами, оформляет заказы, принимает оплату от клиентов за заказы.
  • 2. Материально-ответственный кладовщик. Атрибуты: ФИО, должность, заработная плата. Обязанности: взаимодействие с поставщиками, принимает материалы и подписывает счет-фактуру.
  • 3. Водитель-экспедитор. Атрибуты: ФИО, должность, заработная плата. Обязанности: доставка готового изделия клиенту.

Управляющие объекты, исследуемого бизнес-процесса:

  • 1. Проектировщик. Атрибуты: ФИО, должность, заработная плата. Обязанности: проектирование изделия, управление исполнением проекта, контроль.
  • 2. Оператор автоматизированного учета. Атрибуты: ФИО, должность, заработная плата. Обязанности: ведение автоматизированного учета, работа с базой данных.
  • 3. Мебельный мастер (Сборщик). Атрибуты: ФИО, должность, заработная плата. Обязанности: изготовление продукта в соответствии с проектом.

Объекты-сущности, исследуемого бизнес-процесса:

  • 1. Чек - документ, выдаваемый по факту оплаты заказа.
  • 2. Каталог - документ отражающий ассортимент выпускаемой продукции.
  • 3. Бланк заказа - документ, в который входит номер заказа, дата заказа, информация о клиенте, выбранный тип, эскиз изделия, пожелания клиента.
  • 4. Проект изделия - проект заказанной мебели.
  • 5. Заявка на материалы - документ, характеризующий необходимые материалы и их объемы.
  • 6. База данных - программа, позволяющая вести материальный учет в фирме.
  • 7. Материалы - необходимы для производства заказного изделия.
  • 8. Счет-фактура - документ, подписываемый по факту отгрузки материалов.
  • 9. Готовое изделие - результат производства, характеризуется принадлежностью к какому-либо заказу.

В таблице 5.1 приведено описание взаимосвязи объектов друг с другом.

Таблица 5.1 Описание взаимодействия объектов друг с другом

Объекты связи

Вид связи

Клиент - Менеджер по работе с клиентами

отношение коммуникации

Клиент обращается к менеджеру для оформления заказа на изготовление мебели

Менеджер - Клиент

отношение коммуникации

Менеджер предоставляет клиенту каталог возможных эскизов изделий

Клиент - Каталог

отношение использования

Клиент выбирает подходящий эскиз

Клиент - Менеджер

отношение коммуникации

Клиент выказывает свой выбор и пожелания

Менеджер - Клиент

отношение коммуникации

Менеджер объясняет условия и сроки

Клиент - Менеджер

отношение коммуникации

Клиент оплачивает заказ

Менеджер - Чек

отношение использования

Менеджер печатает чек

Менеджер - Клиент

отношение коммуникации

Менеджер отдает клиенту чек

Менеджер - Бланк заказа

отношение использования

Менеджер формирует бланк заказа

Менеджер - Проектировщик

отношение коммуникации

Менеджер относит бланк заказа проектировщику в проектный отдел

Проектировщик - Бланк заказа

отношение использования

Проектировщик принимает бланк заказа

отношение использования

Проектировщик разрабатывает проект

Проектировщик - Проект изделия

отношение использования

Проектировщик оценивает проект

Проектировщик - Заявка на материалы

отношение использования

Проектировщик формирует заявку на материалы

Проектировщик - Оператор автоматизированного учета

отношение коммуникации

Проектировщик передает оператору автоматизированного учета заявку на материалы

Оператор автоматизированного учета - Заявка на материалы

отношение использования

Оператор автоматизированного учета принимает заявку на материалы

Оператор автоматизированного учета - База данных

отношение использования

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

Материально-ответственный кладовщик - Поставщики

отношение коммуникации

Материально-ответственный кладовщик заказывает необходимые материалы у поставщиков

Поставщики - Материально-ответственный кладовщик

отношение коммуникации

Доставка материалов

Материально-ответственный кладовщик - Материалы

отношение использования

Прием материалов

Материально-ответственный кладовщик - Счет-фактура

отношение использования

Подписывает счет-фактуру

Материально-ответственный кладовщик - Сборщик

отношение коммуникации

Сообщение о наличии материалов на складе

Проектировщик - Сборщик

отношение коммуникации

Передача проекта изделия сборщику

Сборщик - Проект изделия

отношение использования

Сборщик мебели получает и изучает проект изделия

Сборщик - Готовое изделие

отношение использования

Сборщик изготавливает изделие

Сборщик - Проектировщик

отношение коммуникации

Сборщик зовет проектировщика для контроля качества изделия

Проектировщик - Готовое изделие

отношение использования

Контроль качества изделия

Проектировщик - Сборщик

отношение коммуникации

Проектировщик говорит оценку качества изделия

Сборщик - Готовое изделие

отношение использования

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

Сборщик - Водитель-экспедитор

отношение коммуникации

Передача бланка заказа и готового изделия водителю-экспедитору

Водитель-экспедитор - Клиент

отношение коммуникации

Передача готового изделия

Примечание: В случае если необходимые материалы имеются на складе, то пункты 18, 19, 20, 21 данной таблицы пропускаются.

Динамическая модель взаимодействия подразделений и заказчика, в прецеденте "Продажа заказного продукта" изображена на рисунке 5.1 Динамическая модель взаимодействия подразделения, сотрудника и заказчика, в прецеденте "Оформление заказа" изображена на рисунке 5.2 Динамическая модель взаимодействия подразделения, сотрудников и заказчика, в прецеденте "Проектирование" изображена на рисунке 5.3 Динамическая модель взаимодействия сотрудников, в прецеденте "Изготовление" изображена на рисунке 5.4.

Рисунок 5.1 Диаграмма последовательности прецедента "Продажа заказного продукта"

Рисунок 5.2 Диаграмма последовательности прецедента "Оформление заказа"

Рисунок 5.3 Диаграмма последовательности прецедента "Проектирование"

Рисунок 5.4 Диаграмма последовательности прецедента "Изготовление"

Понятие о функции и операционной системы

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

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

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

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

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

  • 1. Организация удобного интерфейса между приложениями и пользователями, с одной стороны, и аппаратурой компьютера, с другой стороны. Сюда можно отнести:
    • · Разработка программ. ОС предоставляет различные инструменты разработки (от библиотек API до редактора)
    • · Исполнение программ. ОС берёт на себя все задачи по загрузке программы в память, предоставлению для программ единообразного интерфейса ввода-вывода различных устройств, подготовке ресурсов и т.п.
    • · Доступ к устройствам ввода-вывода. Для управления любым устройством необходимо знать технические параметры и специфический для данного устройства набор команд. Операционная система скрывает сложность взаимодействия с устройствами и предоставляет пользователю удобный универсальный пользовательский интерфейс всех устройств, а программисту -- удобный программный интерфейс использующий простые команды чтения и записи.
    • · Контролируемый доступ к файлам. Доступ к файлам контролируется ОС в зависимости от типа и структуры файла и описанных прав субъекта, желающего получить доступ к файлу. Кроме того контролируют и урегулируются конфликтные ситуации, возникающие в случае одновременного доступа.
    • · Системный доступ. ОС управляет доступом к совместно используемой и общедоступной вычислительной системе в целом, а также к отдельным системным ресурсам, защищает от несанкционированного использования и разрешает конфликтные ситуации.
    • · Обнаружение ошибок и их обработку. ОС имеет собственные средства контроля возникающих ошибок исполняемых программ и аппаратуры, а также имеет возможность самостоятельно обрабатывать эти ошибки, в случае если конкретная обработка возникшей ошибки не предусмотрена программистами в соответствующей программе или драйвере аппаратуры.
    • · Учёт использования ресурсов. ОС, зачастую, имеет встроенные средства учёта потребления и доступа к ресурсам, примером могут служить счётчики (counters) потребления сетевого трафика в ОС Linux и система аудита действий с файлами в ОС Windows версии 2000 и старше.
  • 2. Организация эффективного использования ресурсов компьютера в зависимости от некоторого выбранного разработчиками ОС критерия эффективности. Критерии выбираются разработчиками в зависимости от назначения ОС. К примеру, для системы, контролирующей некий технический процесс (конвейерная сборка, полёт вертолёта), критерием эффективности будет служить минимальное время реакции на возникающие внешние события, а для настольного компьютера -- обязательная корректная обработка всех действия пользователя (реакции на нажатия клавиш, возможность снять задачу, сохранность данных), даже если какие-то программы работают нестабильно. Управление ресурсами включает решение ряда общих задач, не зависимо от типа ресурса:
    • · Планирование (распределение) -- определение, какому процессу, когда и в каком количестве (если ресурс может выделяться частями) следует выделить этот ресурс.
    • · Отслеживание состояния ресурса
    • · Учёт использования ресурса
    • · Урегулирование конфликтов, возникающих при запросе ресурсов процессами
  • 3. Облегчение процессов эксплуатации аппаратных и программных средств вычислительной системы. Сюда можно отнести служебные программы, обеспечивающие резервное копирование, архивацию данных, проверку, очистку, дефрагментацию дисковых устройств, программы диагностики, средства восстановления данных и прочее.
  • 4. Возможность развития. Многие современные ОС устроены так, что допускают эффективную разработку, тестирование и внедрение новых системных функций, не прерывая процесса функционирования системы.

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

  • 1. Управление процессами. Подсистема управления процессами распределяет между исполняемыми процессами главный ресурс вычислительной системы - процессорное время. Параллельно решается ряд общих задач по распределению других ресурсов и управлению межпроцессорными взаимодействиями, например: синхронизация процессов и предотвращение эффекта гонок.
  • 2. Управление памятью. Подсистема управления памятью распределяет имеющийся объём физической памяти между всеми существующими в данный момент времени процессами, производит загрузку программ в память, настройку адресно-зависимых частей кода процесса на физические адреса выделенной области, а также защищает области памяти каждого процесса от влияния других процессов. Одним наиболее удобных способов управления памятью, используемых в настоящее время, является механизм виртуальной памяти. Этот механизм позволяет программисту работать с памятью как с потенциально бесконечным ресурсом (ограниченным лишь возможностями адресации конкретной архитектуры процессора). Более того, вне зависимости от реального (возможно, весьма сложного) распределения памяти, этот механизм предоставляет программе и программисту память как однородную последовательность ячеек, занумерованную, начиная нуля.
  • 3. Управление файлами. Файловая подсистема ОС виртуализирует в виде файлов набор данных, хранящихся на внешнем накопителе. Для удобство пользователя файлы могут объединяться в группы -- каталоги, в свою очередь, каталоги и файлы также могут группировать в каталоги, образуя древовидную структуру. Многие реализации файловых систем позволяют реализовать не только древовидную структуру организации информации, но более сложные структуры, когда один и тот же файл или каталог отображается одновременно в различных частях структуры (например, в разных каталогах). Такая организация файлов называется сетевой, а соответствующая математическая структура носит название -- сеть и является частным случаем более сложного математического объекта -- графа. Виртуализация информации в виде файлов оказалась настолько удобной, что некоторые операционные системы обобщили этот подход на прочие задачи представления ресурсов компьютерной системы. Так например файловые системы семейства *nix (Linux, Unix, Free BSD и прочие) отображают в файловой системе специальный каталог /dev/ каждый файл которого на самом деле является интерфейсом какого-либо устройства, и для каждого подключенного в систему устройства в этом каталоге создаётся специальный файл. Таким образом, взаимодействия с устройствами сводятся к операциям записи и чтения, производимым с такими специальными файлами.
  • 4. Управление внешними устройствами. Функции управления внешними устройствами образуют подсистему ввода-вывода. Основная сложность построения этой подсистемы заключается в том, что она должна обеспечивать работу с любым подключенным устройством. Изначально ОС не может «знать» как управлять всеми возможными устройствами. Для каждого конкретного устройства производитель пишет специальную программу, встраиваемую в подсистему ввода-вывода ОС и обеспечивающую управление данным устройством. Такая программа называется драйвером. Т.е. подсистема ввода-вывода должна быть устроена так, чтобы допускать встраивание модулей (драйверов), написанных сторонними программистами (например, производителями оборудования), при этом взаимодействия между подсистемой ввода-вывода и прочими частями ОС должны оставаться корректными.
  • 5. Защита и администрирование. Соответствующая подсистема обеспечивает сохранность данных, контроль доступа, отказоустойчивость, контроль и отработку ошибок исполнения процессов и аппаратуры. Эта подсистема влияет на работу прочих подсистем. Одна из важнейших её задач -- определение прав субъекта, получающего доступ к компьютерной системе. С этой целью используется процедура логического входа в систему, в процессе которого «устанавливается личность пользователя» (введённые имя и пароль проверяются на соответствие хранимым). Такая процедура называется аутентификацией.

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

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

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

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

  • 6. Интерфейс прикладного программирования. Развитие модулей этой подсистемы происходит особенно бурно в последнее время. Изначально предусматривалось, что подсистема интерфейса прикладного программирования (API, Application Programming Interface) будет предоставлять прикладным программам набор функций, упрощающий написание приложений. Например, функции, отвечающие за графический интерфейс (отрисовка окон приложений, их масштабирование, перенос на экране и т.п.). Приложения выполняют обращения к функциям API с помощью системных вызовов, по логике работы похожих на вызовы подпрограмм. Таким образом, в прикладных программах эти функции не описаны, но успешно используются, что сокращает объём кода и времени написания программ, а также повышает надёжность. В последствие различных библиотек таких «удобных» функций становилось всё больше, сами библиотеки расширялись, покрывая целые предметные области. Со временем концепция интерфейса прикладного программирования эволюционировала в концепцию программных прикладных сред, которая будет рассмотрена позже.
  • 7. Пользовательский интерфейс. Подсистема пользовательского интерфейса обеспечивает удобство взаимодействия пользователя (программиста, администратора) с компьютерной системой, предоставляет удобный и интуитивно понятный для человека интерфейс, обеспечивает интерактивность работы за терминалом (алфавитно-цифровым либо графическим). При работе с алфавитно-цифровым терминалом, пользователь взаимодействует с ОС с помощью команд, набираемых в командной строке. Если ОС поддерживает графический интерфейс, то взаимодействие осуществляется через множество. Кроме того, существуют системы с голосовым пользовательским интерфейсом, но они менее распространены из-за сложности задачи распознавания голоса произвольно взятого человека. Такие системы, как правило, либо распознают очень ограниченный набор голосовых команд произвольного человека; либо распознают достаточно большой набор команд, но при этом «натренированы» на голос одного конкретного человека. Во втором случае процесс «тренировки» занимает много времени.

Таблица 1. Данные о движении товаров за месяц по предприятию.

номер цеха

наименование товара

цена за единицу

заглушка

шестигранник

золотник

крыльчатка

Таблица 1.1 Отсортированные данные о движении товаров за месяц по предприятию.

номер цеха

наименование товара

цена за единицу

остаток на начало месяца кол-во

обороты за месяц приход кол-во

обороты за месяц расход кол-во

шестигранник

крыльчатка

золотник

заглушка

Таблица 2. Оборотная ведомость движения товаров за месяц.

номер цеха

наименование товара

цена за единицу

остаток на начало месяца кол-во

обороты за месяц приход кол-во

обороты за месяц расход кол-во

остаток на конец месяца сумма

шестигранник

крыльчатка

золотник

заглушка

Таблица 2.1 Наименование товара, который имеет наименьшую цену.

Таблица 2.2 Наименование товаров, которых осталось на конец месяца в количестве от 10 до 20 включительно.

Таблица 2.3 Записи о товарах, которых поступило за месяц более 10.

номер цеха

наименование товара

цена за единицу

остаток на начало месяца кол-во

обороты за месяц приход кол-во

обороты за месяц расход кол-во

остаток на конец месяца кол-во

остаток на конец месяца сумма

шестигранник

крыльчатка

золотник

заглушка

Таблица 3. Итоговые данные по каждому цеху и общие итоги по предприятию.

номер цеха

наименование товара

цена за единицу

остаток на начало месяца кол-во

обороты за месяц приход кол-во

обороты за месяц расход кол-во

остаток на конец месяца кол-во

остаток на конец месяца сумма

шестигранник

крыльчатка

цех 1 итого

золотник

цех 2 итого

заглушка

цех 3 итого

общий итог

Столбиковая диаграмма остатков товаров на начало и конец месяца по одному цеху.

Круговая диаграмма суммарных остатков за месяц по всем цехам предприятия.


Список используемой литературы

  • 1. Методические указания по выполнению контрольной работы по информатике для студентов заочного отделения / сост. Н.Д. Белова, Н.И. Щадрина. - Хабаровск, 2010.
  • 2. Указания по выбору контрольных работ. Хабаровск, 2011.
  • 3. Информатика. Учебник для вузов / Под ред. Н.В. Макаровой. - М., 2001 Степанов А.Н. Информатика. Учебник для вузов. Спб.: Питер,2008.
  • 4. Безручко В.Т. Практикум по курсу «Информатика». Работа в Windows, Word, Excel: учеб. Пособие для вузов / В.Т. Безручко. - М. : Финансы и статистика, 2002.

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

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

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

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

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

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

Для работы с ОС необходимо владеть языком этой среды – совокупностью команд, структура которых определяется синтаксисом языка.

ОС выполняет следующие функции :

    управление работой каждого блока ПК и их взаимодействием;

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

    организация хранения информации на внешних носителях;

    взаимодействие пользователя с ПК (поддержка интерфейса пользователя).

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

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

ОС для ПК подразделяются на:

    одно - имногозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);

    одно - имногопользовательские (в зависимости от числа пользователей, одновременно работающих с ОС);

    непереносимые ипереносимые на другие типы компьютеров;

    несетевые исетевые , обеспечивающие работу в локальной вычислительной сети.

2.2. Развитие операционных систем персональных эвм

За более чем 30-летнюю историю использования ПК сменилось несколько поколений ОС.

Наиболее широко распространенной и универсальной ОС для большинства типов ЭВМ в 1970-80 гг. являлась многозадачная и многопользовательская операционная система UNIX , разработанная компаниейBell Labs (одно из подразделений компанииAT&T ). В настоящее времяUNIX используется преимущественно в высокопроизводительных системах - серверах и мощных рабочих станциях.

Первой распространенной ОС для 8-разрядных ПК, основанных на микропроцессоре Intel 8080 , стала в 70-е годы системаCP/M-80 фирмыDigital Research .

Основной ОС компьютеров IBM PC и совместимых с ними, изначально основанных на микропроцессоре Intel 8088 , а в дальнейшем - на последующих моделях микропроцессоров Intel, стала (с 1981 г.) 16-разрядная однозадачнаяMS-DOS (Microsoft Disk Operating System ). Кстати,MS-DOS не была оригинальной разработкой компанииMicrosoft– она лишь доработала ОС под названиемQDOS , созданную компаниейSeattle Computer Products . Позднее появились клоны, совместимые с MS-DOS, такие, какPC-DOS фирмыIBM ,DR-DOS фирмыDigital Research (впоследствии стала продуктом фирмыNovell под маркойNovell DOS ).

Попыткой уйти от стандарта MS-DOS была совместно разработанная фирмами Microsoft иIBM операционная системаOS/2 (1987 г.). С 1990 г. фирмаMicrosoft отошла от разработки OS/2 и полностью сконцентрировалась на линии операционных системWindows . Многооконный интерфейсWindows быстро завоевал популярность во всем мире и фактически стал промышленным стандартом, а различные версии этой ОС установлены в настоящее время на подавляющем большинстве ПК.

Разработка графической оболочки Windows для ОСMS - DOS началась в 1981 г. В 1985 г. была выпущенаWindows 1.0 , а позднее в 1987 г. –Windows 2.0 , которые из-за отсутствия пользовательских приложений не получили широкого распространения. К концу 80-х годов такие приложения (текстовые процессоры, процессоры электронных таблиц, системы управления базами данных и др.) появились на рынке и сразу жеMicrosoftвыпускает системуWindows 3.0 (1990 г.). В 1992 г. выпускается версияWindows 3.1 , которая как и практически идентичная ейWindows 3.11 (1993 г.), работала только в стандартном и 386-м расширенном режимах. В 1993 г.Microsoftвыпускает систему для работы в одноранговых сетяхWindows for Workgroups 3.11 .

В августе 1995 г. компания Microsoft выводит на рынок полноценную 32-разрядную многозадачную ОС Windows 95 , обладающую рядом несомненных достоинств по сравнениюс MS-DOS. В состав этой ОС в качестве подсистемы была включенаMS-DOS 7.0 , служащая для обеспечения совместимости с предыдущими версиями MS-DOS. ВWindows 95 впервые был интегрирован программно-драйверный комплексDirectX , предоставляющий приложениямWindowsпрямой доступ к аппаратным устройствам ПК – звуковой плате, видеоплате и т.п. Другая система –ActiveMovie– обеспечивала поддержку воспроизведения различных мультимедийных файлов. Windows 95 могла автоматически распознавать большое количество комплектующих и обладала развитым механизмом настройки и конфигурации.

Летом 1996 г. свет увидела версия Windows 95 OSR 2 (OES Service Release ), предназначенная только для поставки вместе с готовыми компьютерами, в которой были исправлены многие ошибки предшествующей версии. Однако основным прорывом явился переход к более совершенной файловой системе –FAT32, позволяющей сэкономить место на диске.

На смену этой системы в 1998 г. приходит Windows 98 , основное отличие которой отWindows 95 состояло в тесной интеграции с Интернетом: в новой ОС была окончательно стерта разница меж ирной паутины (WWW World Wide Web ) – основным средством работы с информационными объектами становится Проводник (Explorer ). Расширились и возможности управления интерфейсом

Последней ОС с использованием DOS-ядра в линейке систем Windows 9x явилась система для пользователей домашних ПК –Windows Millennium Edition (Windows Me) , появившаяся в продаже в сентябре 2000 г. Нововведением стали: усовершенствованный браузерInternet Explorer 5.5 , расширенный пакет драйверовDirectX 7.1 , универсальный проигрывательMicrosoft Media Player , поддержка цифровых устройств ввода (фото- и видеокамер, сканеров). Серьезные изменения претерпела система безопасности самой ОС – в составWindows Me вошел ряд новых инструментов обеспечения сохранности конфигурации и системных файлов.

Многозадачные 32-разрядные ОС на базе ядра NT (New Technology ) , обеспечивающего повышенную надежность, появились в 1993 г.:Windows NT Workstation иWindows NT Server . Эти ОС были ориентированы на корпоративных пользователей, работали в расширенном режиме и могли поддерживать несколько параллельно работающих микропроцессоров (МП).

Логическим продолжением Windows NT сталаWindows 2000 - многозадачная ОС, способная поддерживать до 32 параллельно работающих МП и ориентированная, прежде всего, на работу с бизнес-приложениями. Официальный выпуск «коробочной» версии состоялся в феврале 2000 г. ОС выпускалась в следующих вариантах -универсальном (Windows 2000 Professional ) исерверных (Windows 2000 Server ,Advanced Server иDataCenter Server ). Унаследовав защищенность, отличные сетевые возможности и сервисыNT,Windows 2000 стала удобней и дружественней пользователю.

В феврале 2001 г. была представлена Windows XP – ОС, известная какWhistler в период разработки (символыXP являются сокращением от англ.eXPerience -опыт ), обладающая повышенной защищенностью, вытесняющей многозадачностью, интегрируемостью с Интернетом и т.д. Под именемWindows XP миру была явлена целая линейка ОС: корпоративныеWindows XP иServer Windows XP Professional , и «домашняя»Windows XP Home . Внутреннее устройство новой версии Windows не претерпело значительных изменений со времен Windows 2000, однако появилось ряд нововведений – встроенная система распознавания голосовых команд, переход к поддержке 64-разрядных приложений, широкая возможность настройки пользовательского интерфейса, поддержка записиCD-R/RWна уровне самой ОС и др.

В конце 2002 г. Билл Гейтс заявил, что все силы компании Microsoftбудут брошены не на шлифовку рюшечек, а на обеспечение стабильности и безопасности своих продуктов. И первым продуктом, созданным в соответствии с этим принципом, стала ОСWindows Server 2003 – серверная, 64-разрядная, многозадачная ОС, способная централизовано или распределено управлять различными наборами ролей, появившаяся на рынке в начале 2004 г. ПК, оснащенный такой ОС, может выступать в качестве файлового сервера и сервера печати; веб-сервера и веб-сервера приложений; почтового сервера; сервера терминалов; сервера удаленного доступа/сервера виртуальной частной сети (VPN ); сервера службы каталогов, системы доменных имен (DNS ), сервера протокола динамической настройки узлов (DHCP ) и службыWindows Internet Naming Service (WINS ); сервера потокового мультимедиа-вещания.

Семейство Windows Server 2003 включает следующие варианты:Standard Edition (сетевая ОС для предприятий малого бизнеса и отдельных подразделений организации),Enterprise Edition (ОС, удовлетворяющая общим ИТ-требованиям предприятий любого размера и обеспечивающая работу любых приложений, веб-служб и инфраструктур),Datacenter Edition (ОС для ответственных бизнес-приложений и для приложений, используемых в решении важнейших задач, требующих масштабируемости и доступности высокого уровня) иWeb Edition (ОС, предназначенный для использования в качестве веб-сервера).

64-разрядные версии Windows Server 2003 Enterprise Edition иWindows Server 2003 Datacenter Edition могут использоваться только в системах на базе 64-разрядных МПIntelItanium. Они не могут быть установлены на компьютеры с 32-разрядными процессорами.

В конце 2002 г. Microsoftначала работу над новой ОС, названнойWindows Longhorn , бета-версии которой появились во второй половине 2004 г. В 2005 г. компания объявила, что коммерческая версия появится в 2006 г. под торговой маркойWindows Vista . Революционным новшеством является поддержка новой файловой системыWinFS , имеющей больше сходства с классической базой данных. А это значит, что традиционная древообразная структура папок уходит в историю – при работе сVista будет совершенно безразлично, где именно на диске расположен файл. Его можно найти с помощью усовершенствованного поискового механизма, работающего на основе стандартных для баз данных запросов. На смену папкам с фиксированным набором файлов приходят «виртуальные» папки, объединяющие файлы на основе выбранных пользователем критериев. При таком подходе поиск файлов и открытие папки на деле станет обозначать одну и ту же операцию. Примерно так же организован Интернет и его поисковые системы: пользователю совершенно безразлично, что нужные документы могут быть разбросаны по всему свету. Главное – в случае необходимости их всегда можно вызвать с помощью поисковиков.

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

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

И наконец, изменился интерфейс. Он стал истинно трехмерным благодаря использованию 3D-технологий.

Сравнительные характеристики современных операционных систем персональных компьютеров приведены в табл. 1.

Обзор альтернативных ОС для персональных компьютеров приведен в приложении 1.

Таблица 1. Сравнение современных операционных систем персональных компьютеров

Функции ОС

MacOS X

Win 9.x/ME

Win NT/2000

Win 2003 Server

Управление внешними устройствами

Режимы работы

клиент, (сервер)

клиент/сервер

клиент/сервер

клиент, (сервер)

клиент/сервер

клиент/сервер

(клиент), сервер

Файловая система

owner (владелец)

group (группа)

Управление прикладными программами

Устойчивость ОС

Переустановка ОС

легко, долго

сложно, долго

сложно, долго

сложно, долго

сложно, долго

Связь документа с программой

T/C, расширения

расширения

расширения

расширения

расширения

расширения

Организация памяти

сквозное

сквозное

платф-завис.

страничное

страничное

страничное

защищ. кольца

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

переключатель

вытесняющая

вытесняющая

переключатель

вытесняющая

вытесняющая

невытесняющая

Программная совместимость

эмулятор (68k)

эмулятор (68k)

эмулятор (68k)

PC (DOS, Win 9.x, Win NT/2000/XP)

эмулятор

эмулятор

эмулятор

эмулятор (-)

эмулятор

эмулятор

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

виды интерфейса

графический

граф/терминал

терминал/ Х

графический

графический

графический

консоль/Java

Совместимость данных

Mac(Cyr), utf16

рус. шрифты

DivX, QuickTime, MediaPlayer

Базы Данных

SQL, ODBC, JDBC

Требования к аппаратной части ПК

Разрядность

не ниже Р1

не ниже Р3

не ниже Р3

Частота процессора:

не менее 300 МГц

Объем оперативной памяти:

максимальный

64 Мбайта

128-256 Мбайт

64 Мбайта

128-512 Мбайт

256-1024 Мбайт

4-512 Гбайт

Поддержка нескольких процессоров

Пространство на жестком диске для установки

200-540 Мбайт

1-2 Гбайта

1,5 Гбайта

1,5-2 Гбайта

    Программа – четкая, подробная и упорядоченная последовательность команд (инструкций) компьютера для решения задачи. Процесс ее создания представляется как последовательность этапов постановки задачи, ее алгоритмизации и программирования.

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

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

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

    ОС для ПК подразделяются на одно- и многозадачные, одно- и многопользовательские, непереносимые и переносимые на другие типы компьютеров, несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: