- •Содержание
- •Глава 1. Операционные системы 17
- •Глава 2. Сервисное программное обеспечение 97
- •Основные понятия программного обеспечения
- •Характеристика программного продукта
- •Классификация программных продуктов
- •1. Проблемно-ориентированные ппп
- •2. Методо-ориентированные ппп
- •3. Ппп автоматизированного проектирования.
- •4. Ппп общего назначения
- •6. Офисные ппп
- •7. Настольные издательские системы
- •8. Программные средства мультимедиа
- •9. Системы искусственного интеллекта
- •Ресурсы и процессы
- •Понятие ресурса и процесса
- •Концепция прерываний процесса
- •Понятие операционной системы
- •Назначение, функции и состав ос
- •Функции операционной системы
- •Основной состав операционных систем
- •Программы-драйверы
- •Классификация операционных систем.
- •Загрузка компьютера
- •Порядок загрузки ос
- •Файловая организация данных на диске
- •Логическая структура диска
- •Системная область
- •Подкаталоги
- •Файловая структура диска
- •Иерархия данных на диске
- •Операционная система ms-dos
- •Назначение, состав и загрузка ms-dos
- •Состав операционной системы ms dos
- •Порядок загрузки ms-dos
- •Файловая система ms-dos
- •Общие сведения о командах ms-dos
- •Запуск и выполнение команд
- •Команды общесистемного назначения
- •Команды работы с каталогами
- •Команды работы с файлами
- •Программная оболочка norton commander
- •Назначение, запуск и завершение nc
- •Интерфейс nc. Назначение функциональных клавиш
- •Управляющее меню
- •Основные параметры конфигурации nc
- •Работа с архивными файлами
- •Операционная система Windows
- •Объекты файловой системы Windows Объект-файл
- •Объект — папка
- •Назначение ярлыка
- •Иерархическая структура подчиненности папок
- •Объекты пользовательского уровня – приложение и документ
- •Техника запуска программ
- •Графический интерфейс пользователя Основные понятия
- •Окна — объекты графического интерфейса
- •Назначение Рабочего стола
- •Программа Проводник
- •Навигация с помощью значка Мой компьютер.
- •Файловые операции в Windows
- •Ярлыка.
- •Создание ярлыка перетаскиванием
- •Выделение одного или нескольких объектов.
- •Роль буфера обмена
- •1 Способ
- •2 Способ
- •3 Способ
- •4 Способ
- •1 Способ
- •4 Способ
- •6 Способ (Удаление, минуя Корзину)
- •Операции с Корзиной
- •Поиск папок и файлов
- •Конфигурирование Windows
- •Конфигурирование системы с помощью Панели управления (Control Panel).
- •Шрифты для Windows
- •Терминология
- •Рубленые шрифты и шрифты с засечками
- •Равноширинные и пропорциональные шрифты
- •Масштабируемые и немасштабируемые шрифты Векторные и растровые шрифты
- •Шрифты и таблицы кодировки
- •Добавление шрифтов
- •Удаление шрифтов
- •Учетные записи в Windows nt
- •Стандартные приложения Windows
- •Графический редактор Paint
- •Текстовые редакторы Блокнот и WordPad
- •Калькулятор
- •Стандартные приложения служебного назначения
- •Внедрение и связывание объектов
- •Защита программных продуктов Лицензионные, условно-бесплатные и бесплатные программы
- •Основные понятия о защите программных продуктов
- •Установка и удаление программ
- •Общие сведения об установке программ
- •Установка и удаление приложений Особенности установки приложений ms-dos
- •Особенности установки приложений Windows
- •Удаление приложений Windows
- •Установка операционной системы Windows
- •Установка компонентов Windows
- •Программы обслуживания дисков
- •Проверка диска Физические и логические дефекты дисков
- •Дефрагментация диска Проблема фрагментации дисков
- •Восстановление удаленных файлов и каталогов
- •Архивация файлов Понятие процесса архивации файлов
- •Программы-архиваторы
- •Многофункциональный интегрированный архиватор rar Основные особенности программы
- •Вирусы и антивирусные средства
- •Вредоносные программы
- •Компьютерные вирусы и их свойства
- •Структура вируса
- •История появления компьютерных вирусов
- •Классификация компьютерных вирусов
- •Логические бомбы
- •Троянские кони
- •Бактерии
- •Антивирусная защита
- •Характеристика антивирусных программ
9. Системы искусственного интеллекта
Данный класс программных продуктов реализует отдельные функции интеллекта человека. Основными компонентами систем искусственного интеллекта являются база знаний, интеллектуальный интерфейс с пользователем и программы анализа суждений, формирования логических выводов. Их разработка идет по следующим направлениям:
программы-оболочки для создания экспертных систем путем наполнения баз знаний и правил логического вывода;
готовые экспертные системы для принятия решений в рамках определенных предметных областей;
системы управления базами знаний для поддержания семантических моделей (процедуральной, семантической сети, фреймовой, продукционной и др.);
системы анализа и распознавания речи и др.
Как правило, интеллектуальный интерфейс включает:
диалоговый процессор на естественном языке;
планировщик, преобразующий описание задачи в программу решения на основе информации базы знаний;
монитор, осуществляющий управление компонентами интерфейса.
Контрольные вопросы
Можно ли назвать тождественными понятия «программное обеспечение» и «программы»? Обоснуйте свой ответ.
Можно ли назвать программным продуктом любую программу? Обоснуйте свой ответ.
Какие программы относятся к системному ПО?
Какие системы программирования и языки программирования вам известны?
Для чего предназначены проблемно-ориентированные ППП?
Приведите примеры и назначение ППП общего назначения, графических ППП, мультимедийного ПО.
Согласны ли вы с данной классификацией ПО? Предложите свою классификацию ПО.
Операционные системы
Ресурсы и процессы
Понятие ресурса и процесса
Понятие процесса играет ключевую роль и вводится применительно к каждой программе отдельного пользователя. Любая запущенная программа и является процессом. Следует различать понятия процесса и программы. Программа – это план действий, а процесс – это само действие. Управление процессами - важнейшая функция операционной системы (ОС).
Процесс — это совокупность системных ресурсов, задействованная для выполнения определенной задачи.
Процесс — минимальный программный объект (запущенный файл .exe), обладающий собственными системными ресурсами.
Процессы состоят из потоков и ассоциированных с ними средств хранения. Каждому процессу выделяется область памяти компьютера. Мой текстовый редактор со всеми потоками ввода с клавиатуры, корректировки правописания и хранения в памяти является одним процессом. Система следит за тем, какая область памяти (адресное пространство) принадлежит каждому процессу. Поэтому потоки одного процесса не могут манипулировать памятью другого. Вообще говоря, процесс может и не знать, что в системе помимо него работают и другие процессы, поскольку он не может «видеть» память соседа.
Все программное обеспечение компьютера (включая и саму операционную систему) в активном режиме представляет собой набор процессов, которые, в свою очередь, являются наборами потоков. Таким образом, мы говорим о процессах и потоках. Самое главное, что нужно запомнить: процессы владеют системными ресурсами, а потоки выполняют задачи.
Когда процессу необходимо что-либо сделать, он создает поток и выделяет для него дополнительную память системы. После завершения работы процесса все его потоки уничтожаются и занимаемая им оперативная память освобождается для другой работы.
Потоки — это мысли компьютера
Каждый поток похож на процесс. Единственным различием является то, что все потоки в пределах одной программы работают в одном адресном пространстве памяти. Это позволяет им разделять один общий буфер.
Поток — это непрерывная последовательность инструкций, выполняющих определенную задачу.
Процесс состоит как минимум из одного потока. Поток (thread) — это часть кода программы, которую можно исполнять одновременно с другими частями кода.
Хорошей иллюстрацией тому служит оболочка Windows. Она представляет собой Win32-npoцecc, а каждое открываемое в ней окно папки является потоком. Поэтому, когда Вы инициируете в оболочке операцию копирования между двумя окнами папок, она исполняется потоком окна-приемника. Ну а Вы тем временем можете пользоваться другими окнами в оболочке и даже копировать файлы в другом окне.
Пример1. в текстовом процессоре для увеличения скорости обработки и упрощения взаимодействия с пользователем можно реализовать несколько потоков. Один поток обрабатывает набираемый на клавиатуре текст, другой выполняет фоновые операции, например проверку орфографии или разбиение документа на страницы, а третий — отвечает за фоновую печать документа.
Вы вполне можете думать о нескольких вещах одновременно.
Пример2. В преддверие экзамена вы думаете о нем. О чем же вы думаете? Первое, какие вопросы вам придется изучить, второе, где взять ответы на эти вопросы, и третье, как составить план ответа, чтобы ничего не забыть. О всех трех вещах вы думаете, как бы, параллельно.
В приведенном примере мысль об экзамене – это процесс, мысль о вопросах – это поток1, мысль об ответах – поток2, мысль о составлении плана – поток3 (см. рис.1).
Благодаря операционной системе компьютер может делать то же самое. ОС позволяет множеству потоков работать одновременно. При многопоточности процессов ОС определяет, какой поток должен выполняться в данный момент времени и в течение какого времени он будет распоряжаться ресурсом центрального процессора. Именно операционная система определяет момент времени выполнения потока.
Для выполнения потока необходимы две вещи: системное время и системное пространство. Поток должен иметь возможность захвата ресурсов центрального процессора в течение времени, позволяющего выполнить осмысленную операцию. Кроме того, потоку необходимо пространство хранения данных — место для размещения всей нужной ему в процессе работы информации.
Рис.1. Граф «Процесс – поток»
Когда в системе одновременно выполняется несколько процессов, необходимо разрешить ряд важных проблем:
каждому потоку необходимо выделить достаточно системного времени и пространства для работы.
потоки не должны мешать друг другу.
В компьютере с несколькими процессорами каждый из нескольких взаимодействующих потоков можно приписать к одному определенному процессору, чтобы выполнять действия одновременно. Поэтому в данном случае имеет место реальный параллелизм. Если компьютер содержит только один процессор, потоки разделяются во времени на одном процессоре. В этом случае потоки будут выполняться по очереди, каждый понемножку. Иными словами, процессор будет разделяться между несколькими потоками.
Рис. 2. Параллельная обработка с несколькими процессорами (а); моделирование параллельной обработки путем переключения одного процессора с одного процесса на другой (в данном случае всего три процесса) (б)
Понятие «ресурс» применительно к вычислительной технике следует понимать как функциональный элемент вычислительной системы, который может быть выделен процессу на определенный промежуток времени.
Системные ресурсы, предоставляемые активному процессу, можно разделить на две категории: информационные и вычислительные.
К информационным относятся все необходимые данные для работы программы или устройства (файлы с расширением .nfo, .inf, .txt и др.)
Вычислительные ресурсы делятся на:
Аппаратные ресурсы, такие как процессор, оперативная память, карты расширения, объем дисковой памяти, периферийные устройства. Эти устройства должны обладать определенными характеристиками, которые будут удовлетворять потребностям инициализации и работы программы.
Программные ресурсы. К ним относятся драйверы, кодеки, проигрыватели, операционная система определенной версии, и другое специализированное ПО.
Наряду с физическими ресурсами, реальными устройствами ЭВМ, - средствами современных ОС могут создаваться и использоваться виртуальные (воображаемые) ресурсы, являющиеся моделями физических. Например, характерным представителем виртуального ресурса является виртуальная оперативная память.
Физически виртуальная память представляет собой область внешней памяти (жесткого диска), задействованную под основную память компьютера (оперативную память). Выполняемый процесс частично может располагаться во внешней памяти, а другая часть - в основной для выполнения центральным процессором. Таким образом, виртуальная память позволяет выполнять программы, размеры которых превышают размеры физического адресного пространства.
Требования к системным ресурсам компьютера необходимо учитывать при установке любого программного продукта. Они указаны в документации, приложенной к программному продукту.
Пример3.
Для использования Microsoft Office Базовый 2007 необходимы следующие системные ресурсы:
Компонент |
Требование |
Компьютер и процессор |
с частотой не ниже 500 мегагерц (МГц) |
Память |
ОЗУ не менее 256 мегабайт (МБ) |
Место на жестком диске |
1,5 гигабайт (ГБ). Часть места на диске будет освобождена после установки при удалении с него исходного установочного пакета. |
Устройство чтения дисков |
устройство чтения компакт-дисков или DVD-дисков |
Экран |
с разрешением не менее 1024x768 |
Операционная система |
Microsoft Windows XP с пакетом обновления 2, Windows Server 2003 с пакетом обновления 2 или более поздняя версия |
После установки (инсталляции) программы пользователь может эксплуатировать её, для чего ему необходимо программу запустить или загрузить.
Под загрузкой программы понимается копирование с внешнего носителя в оперативную память тела основной программы (файла с расширением .exe) и необходимых программных модулей и данных.
Во время загрузки происходит инициализация программы (подготовка к началу работы), которая включает проверку наличия системных ресурсов и дальнейшую перезапись программы. После успешной загрузки программы, она становится процессом, занимаемым определенное адресное пространство, и готовым создавать потоки для выполнения их процессором.
Те программы, которые после выполнения продолжают занимать своё адресное пространство в оперативной памяти и освобождают её только после принудительной выгрузки, называются резидентными.
Программы, которые после выполнения освобождают оперативную память, называются транзитными.