Прикладное программирование
Характеристика интерфейса прикладного программирования. Изучение одноранговых и серверных сетевых операционных систем. Исследование особенностей семафоров. Рассмотрение процесса кэширования данных. Анализ главных принципов управления файловой системой.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | учебное пособие |
Язык | русский |
Дата добавления | 06.10.2017 |
Размер файла | 806,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Оглавление
Введение
1. Назначение и функции операционной системы
1.1 Функциональные компоненты операционной системы автономного компьютера
1.1.1 Управление процессами
1.1.2 Управление памятью
1.1.3 Управление файлами и внешними устройствами
1.1.4 Защита данных и администрирование
1.1.5 Интерфейс прикладного программирования
1.1.6 Пользовательский интерфейс
1.2 Сетевые операционные системы
1.2.1 Сетевые и распределенные ОС
1.2.2 Два значения термина «сетевая ОС»
1.2.3 Функциональные компоненты сетевой ОС
1.2.4 Сетевые службы и сетевые сервисы
1.2.5 Встроенные сетевые службы и сетевые оболочки
1.3 Одноранговые и серверные сетевые операционные системы
1.3.1 ОС в одноранговых сетях
1.3.2 ОС в сетях с выделенными серверами
1.4 Требования к современным операционным системам
2. Архитектура операционной системы
2.1 Ядро и вспомогательные модули ОС
2.2 Ядро и привилегированный режим
2.3 Многослойная структура ОС
2.4 Аппаратная зависимость и переносимость ОС
2.5 Переносимость операционной системы
2.6 Микроядерная архитектура
2.6.1 Концепция
2.6.2 Преимущества и недостатки микроядерной архитектуры
2.7 Совместимость и множественные прикладные среды
2.7.1 Двоичная совместимость и совместимость исходных текстов
2.7.2 Трансляция библиотек
2.7.3 Способы реализации прикладных программных сред
3. Процессы и потоки
3.1 Мультипрограммирование
3.1.1 Мультипрограммирование в системах пакетной обработки
3.1.2 Мультипрограммирование в системах разделения времени
3.1.3 Мультипрограммирование в системах реального времени
3.2 Мультипроцессорная обработка
3.3 Планирование процессов и потоков
3.4 Понятия «процесс» и «поток»
3.4.1 Создание процессов и потоков
3.4.2 Планирование и диспетчеризация потоков
3.4.3 Состояния потока
3.4.4 Вытесняющие и невытесняющие алгоритмы планирования
3.4.5 Алгоритмы планирования, основанные на квантовании
3.4.6 Алгоритмы планирования, основанные на приоритетах
3.4.7 Смешанные алгоритмы планирования
3.5 Мультипрограммирование на основе прерываний
3.5.1 Назначение и типы прерываний
3.5.2 Механизм прерываний
3.5.3 Программные прерывания
3.5.4 Диспетчеризация и приоритезация прерываний в ОС
3.5.5 Функции централизованного диспетчера прерываний на примере Windows NT
3.5.6 Процедуры обработки прерываний и текущий процесс
3.5.7 Системные вызовы
3.6. Синхронизация процессов и потоков
3.6.1 Цели и средства синхронизации
3.6.2 Необходимость синхронизации и гонки
3.6.3 Критическая секция
3.6.4 Блокирующие переменные
3.6.5 Семафоры
3.6.6 Тупики
3.6.7 Синхронизирующие объекты ОС
3.6.8 Сигналы
4. Управление памятью
4.1 Функции ОС по управлению памятью
4.2 Типы адресов
4.3 Алгоритмы распределения памяти
4.3.1 Алгоритмы распределения без использования внешней памяти
4.3.2 Алгоритмы распределения с использованием внешней памяти
4.4 Кэширование данных
4.4.1 Иерархия запоминающих устройств
4.4.2 Кэшпамять
4.4.3 Проблема согласования данных
4.4.4 Способы отображения основной памяти на кэш
5. Вводвывод и файловая система
5.1 Задачи ОС по управлению файлами и устройствами
5.2 Специальные файлы
5.3 Логическая организация файловой системы
5.3.1 Цели и задачи файловой системы
5.3.2 Типы файлов
5.3.3 Иерархическая структура файловой системы
5.3.4 Имена файлов
5.3.5 Монтирование
5.3.6 Атрибуты файлов
5.3.7 Логическая организация файла
5.4 Физическая организация файловой системы
5.4.1 Диски, разделы, секторы, кластеры
5.4.2 Физическая организация и адресация файла
5.5 Физическая организация FAT
5.6 Физическая организация s5 и ufs
5.7 Физическая организация NTFS
5.7.1 Структура тома NTFS
5.7.2 Структура файлов NTFS
5.7.3 Каталоги NTFS
5.8 Контроль доступа к файлам
5.8.1 Доступ к файлам как частный случай доступа к разделяемым ресурсам
5.8.2 Механизм контроля доступа
5.8.3 Организация контроля доступа в ОС UNIX
5.8.4 Организация контроля доступа в ОС Windows NT
5.9 Отказоустойчивость и RAID-массивы
Библиографический список
Ответы на вопросы для самопроверки
Введение
За почти полувековой период своего существования операционные системы (ОС) прошли сложный путь, насыщенный многими важными событиями. Огромное влияние на развитие операционных систем оказали успехи в совершенствовании элементной базы и вычислительной аппаратуры, поэтому многие этапы развития ОС тесно связаны с появлением новых типов аппаратных платформ, таких, как миникомпьютеры или персональные компьютеры. Серьезную эволюцию операционные системы претерпели в связи с новой ролью компьютеров в локальных и глобальных сетях. Важнейшим фактором развития ОС стал Интернет. По мере того как эта сеть приобретает черты универсального средства массовых коммуникаций, ОС становятся все более простыми и удобными в использовании, включают развитые средства поддержки мультимедийной информации, снабжаются надежными средствами защиты.
Особое внимание в течение последнего десятилетия уделялось корпоративным сетевым операционным системам. Их дальнейшее развитие представляет одну из наиболее важных задач и в обозримом будущем. К настоящему времени достаточно явно определились три лидера в классе корпоративных ОС это Novell NetWare 4.x, 5.х и 6.0, Microsoft Windows NT 4.0, Windows 2000 и Windows XP, а также UNIXсистемы различных производителей аппаратных платформ.
В последние годы получила дальнейшее развитие долговременная тенденция повышения удобства работы человека с компьютером. Эффективность работы человека становится основным фактором, определяющим эффективность вычислительной системы в целом. Современная операционная система берет на себя выполнение задачи выбора параметров операционной среды, используя для этого различные адаптивные алгоритмы. Постоянно повышается удобство интерактивной работы с компьютером путем включения в операционную систему развитых графических интерфейсов, использующих наряду с графикой звук и видеоизображение. Пользовательский интерфейс операционной системы становится все более интеллектуальным, направляя действия человека в типовых ситуациях и принимая за него рутинные решения.
Уровень удобств в использовании ресурсов, которые сегодня предоставляют операционные системы изолированных компьютеров пользователям, администраторам и разработчикам приложений, для сетевых операционных систем является только заманчивой перспективой. В настоящее время пользователи и администраторы сети тратят значительное время на попытки выяснить, где находится тот или иной ресурс, а разработчики сетевых приложений прилагают много усилий для определения местоположения данных и программных модулей в сети. Операционные системы будущего должны обеспечить высокий уровень прозрачности сетевых ресурсов, взяв на себя задачу организации распределенных вычислений, превратив сеть в виртуальный компьютер.
1. Назначение и функции операционной системы
Операционная система компьютера представляет собой комплекс взаимосвязанных программ, который действует как интерфейс между приложениями и пользователями, с одной стороны, и аппаратурой компьютера - с другой.
В соответствии с этим определением ОС выполняет две группы функций:
предоставление пользователю или программисту вместо реальной аппаратуры компьютера расширенной виртуальной машины, с которой удобней работать и которую легче программировать;
повышение эффективности использования компьютера путем рационального управления его ресурсами в соответствии с некоторым критерием.
ОС как виртуальная машина. Для того чтобы успешно решать свои задачи, современный пользователь или даже прикладной программист может обойтись без досконального знания аппаратного устройства компьютера. Ему не обязательно быть в курсе того, как функционируют различные электронные блоки и электромеханические узлы компьютера. Такие частности, как используемая при записи частотная модуляция или текущее состояние двигателя механизма перемещения магнитных головок чтения/записи, не должны волновать программиста. Именно операционная система скрывает от программиста большую часть особенностей аппаратуры и предоставляет возможность простой и удобной работы с требуемыми файлами.
В результате реальная машина, способная выполнять только небольшой набор элементарных действий, определяемых ее системой команд, превращается в виртуальную машину, выполняющую широкий набор гораздо более мощных функций. Виртуальная машина тоже управляется командами, но это уже команды другого, более высокого уровня, такие, как удалить файл с определенным именем, запустить на выполнение некоторую прикладную программу, повысить приоритет задачи, вывести текст из файла на печать. Таким образом, назначение ОС состоит в предоставлении пользователю/программисту некоторой расширенной виртуальной машины, которую легче программировать и с которой легче работать, чем непосредственно с аппаратурой, составляющей реальный компьютер или реальную сеть.
ОС как система управления ресурсами. Операционная система не только предоставляет пользователям и программистам удобный интерфейс к аппаратным средствам компьютера, но и является механизмом, распределяющим ресурсы компьютера.
К основным ресурсам современных вычислительных систем могут быть отнесены такие ресурсы, как процессоры, основная память, таймеры, наборы данных, диски, накопители на магнитных лентах, принтеры, сетевые устройства и некоторые другие. Ресурсы распределяются между процессами. Процесс (задача) представляет собой базовое понятие большинства современных ОС и часто кратко определяется как программа в стадии выполнения. Программа это статический объект, представляющий собой файл с кодами и данными. Процесс это динамический объект, который возникает в операционной системе после того, как пользователь или сама операционная система решает «запустить программу на выполнение», то есть создать новую единицу вычислительной работы.
Управление ресурсами вычислительной системы с целью наиболее эффективного их использования является назначением операционной системы.
Управление ресурсами включает решение следующих общих задач, не зависящих от типа ресурса:
планирование ресурса то есть определение, какому процессу, когда и в каком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;
удовлетворение запросов на ресурсы;
отслеживание состояния и учет использования ресурса - то есть поддержание оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;
разрешение конфликтов между процессами.
Управление ресурсами составляет важную часть функций любой операционной системы, в особенности мультипрограммной. Многие функции управления ресурсами выполняются операционной системой автоматически и прикладному программисту недоступны.
1.1 Функциональные компоненты операционной системы автономного компьютера
Функции операционной системы автономного компьютера обычно группируются либо в соответствии с типами локальных ресурсов, которыми управляет ОС, либо в соответствии со специфическими задачами, применимыми ко всем ресурсам. Иногда такие группы функций называют подсистемами. Наиболее важными подсистемами управления ресурсами являются подсистемы управления процессами, памятью, файлами и внешними устройствами, а подсистемами, общими для всех ресурсов, являются подсистемы пользовательского интерфейса, защиты данных и администрирования.
1.1.1 Управление процессами
Важнейшей частью операционной системы, непосредственно влияющей на функционирование вычислительной машины, является подсистема управления процессами.
Для каждого вновь создаваемого процесса ОС генерирует системные информационные структуры, которые содержат данные о потребностях процесса в ресурсах вычислительной системы, а также о фактически выделенных ему ресурсах.
Чтобы процесс мог быть выполнен, операционная система должна назначить ему область оперативной памяти, в которой будут размещены коды и данные процесса, а также предоставить ему необходимое количество процессорного времени. Кроме того, процессу может понадобиться доступ к таким ресурсам, как файлы и устройства вводавывода.
В мультипрограммной операционной системе одновременно может существовать несколько процессов. Часть процессов порождается по инициативе пользователей и их приложений. Такие процессы обычно называют пользовательскими. Другие процессы, называемые системными, инициализируются самой операционной системой для выполнения своих функций.
Поскольку процессы часто одновременно претендуют на одни и те же ресурсы, то в обязанности ОС входит поддержание очередей заявок процессов на ресурсы, например, очереди к процессору, к принтеру, к последовательному порту.
Важная задача операционной системы - защита ресурсов, выделенных данному процессу, от остальных процессов. Одним из наиболее тщательно защищаемых ресурсов процесса являются области оперативной памяти, в которой хранятся коды и данные процесса. Совокупность всех областей оперативной памяти, выделенных операционной системой процессу, называется его адресным пространством. Защищаются и другие типы ресурсов, такие, как файлы, внешние устройства и т. д. Операционная система может не только защищать ресурсы, выделенные одному процессу, но и организовывать их совместное использование, например, разрешать доступ к некоторой области памяти нескольким процессам.
На протяжении периода существования процесса его выполнение может быть многократно прервано и продолжено. Для того чтобы возобновить выполнение процесса, необходимо восстановить состояние его операционной среды. Состояние операционной среды идентифицируется состоянием регистров и программного счетчика, режимом работы процессора, указателями на открытые файлы, информацией о незавершенных операциях вводавывода, кодами ошибок выполняемых данным процессом системных вызовов и т. д. Эта информация называется контекстом процесса. Говорят, что при смене процесса происходит переключение контекстов.
Таким образом, подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими в системе процессами, занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми системными ресурсами.
1.1.2 Управление памятью
Память является для процесса таким же важным ресурсом, как и процессор, так как процесс может выполняться процессором только в том случае, если его коды и данные (не обязательно все) находятся в оперативной памяти. Управление памятью включает функции распределения имеющейся физической памяти между всеми существующими в системе в данный момент процессами, загрузки кодов и данных процессов в отведенные им области памяти, настройки адреснозависимых частей кодов процесса на физические адреса выделенной области, а также защиты областей памяти каждого процесса.
Существует большое разнообразие алгоритмов распределения памяти, которые могут отличаться, например, количеством выделяемых процессу областей памяти (в одних случаях память выделяется процессу в виде одной непрерывной области, а в других в виде нескольких несмежных областей), степенью свободы границы областей (она может быть жестко зафиксирована на все время существования процесса или же динамически перемещаться при выделении процессу дополнительных объемов памяти). В некоторых системах распределение памяти выполняется страницами фиксированного размера, а в других сегментами переменной длины.
Одним из наиболее популярных способов управления памятью в современных операционных системах является механизм виртуальной памяти. Наличие в ОС этого механизма позволяет программисту писать программу так, как будто в его распоряжении имеется однородная оперативная память большого объема, часто существенно превышающего объем имеющейся физической памяти. В действительности все данные, используемые программой, хранятся на диске и при необходимости частями (сегментами или страницами) отображаются в физическую память.
Защита памяти это избирательная способность предохранять выполняемую задачу от записи или чтения памяти, назначенной другой задаче. Правильно написанные программы не пытаются обращаться к памяти, назначенной другим. Однако реальные программы часто содержат ошибки, в результате которых такие попытки иногда предпринимаются. Средства защиты памяти, реализованные в операционной системе, должны пресекать несанкционированный доступ процессов к чужим областям памяти.
Таким образом, функциями ОС по управлению памятью являются отслеживание свободной и занятой памяти; выделение памяти процессам и освобождение памяти при завершении процессов; защита памяти; вытеснение процессов из оперативной памяти на диск, когда размеры основной памяти недостаточны для размещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место; настройка адресов программы на конкретную область физической памяти.
1.1.3 Управление файлами и внешними устройствами
Способность ОС к «экранированию» сложностей реальной аппаратуры очень ярко проявляется в одной из основных подсистем ОС - файловой системе. Операционная система представляет отдельный набор данных, хранящихся на внешнем накопителе, в виде файла - простой неструктурированной последовательности байтов, имеющей символьное имя. Для удобства работы с данными файлы группируются в каталоги, которые, в свою очередь, образуют группы каталоги более высокого уровня. Пользователь может с помощью ОС выполнять над файлами и каталогами такие действия, как поиск по имени, удаление, вывод содержимого на внешнее устройство (например, на дисплей), изменение и сохранение содержимого.
Чтобы представить большое количество наборов данных, разбросанных случайным образом по цилиндрам и поверхностям дисков различных типов, в виде хорошо всем знакомой и удобной иерархической структуры файлов и каталогов, операционная система должна решить множество задач. В частности, файловая система выполняет преобразование символьных имен файлов, с которыми работает пользователь или прикладной программист, в физические адреса данных на диске, организует совместный доступ к файлам, защищает их от несанкционированного доступа.
1.1.4 Защита данных и администрирование
Безопасность данных вычислительной системы обеспечивается средствами отказоустойчивости ОС, направленными на защиту от сбоев и отказов аппаратуры и ошибок программного обеспечения, а также средствами защиты от несанкционированного доступа. В последнем случае ОС защищает данные от ошибочного или злонамеренного поведения пользователей системы. Первым рубежом обороны при защите данных от несанкционированного доступа является процедура логического входа. Операционная система должна убедиться, что в систему пытается войти пользователь, вход которого разрешен администратором. Функции защиты ОС вообще очень тесно связаны с функциями администрирования, так как именно администратор определяет права пользователей при их обращении к разным ресурсам системы файлам, каталогам, принтерам, сканерам и т. п. Кроме того, администратор ограничивает возможности пользователей в выполнении тех или иных системных действий. Например, пользователю может быть запрещено выполнять процедуру завершения работы ОС, устанавливать системное время, завершать чужие процессы, создавать учетные записи пользователей, изменять права доступа к некоторым каталогам и файлам. Администратор может также урезать возможности пользовательского интерфейса, убрав, например, некоторые пункты из меню операционной системы, выводимого на дисплей пользователя.
Важным средством защиты данных являются функции аудита ОС, заключающиеся в фиксации всех событий, от которых зависит безопасность системы. Например, попытки удачного и неудачного логического входа в систему, операции доступа к некоторым каталогам и файлам, использование принтеров и т. п. Список событий, которые необходимо отслеживать, определяет администратор ОС.
Поддержка отказоустойчивости реализуется операционной системой, как правило, на основе резервирования. Чаще всего в функции ОС входит поддержание нескольких копий данных на разных дисках или разных дисковых накопителях. Резервируются также принтеры и другие устройства вводавывода. При отказе одного из избыточных устройств операционная система должна быстро и прозрачным для пользователя образом произвести реконфигурацию системы и продолжить работу с резервным устройством. Поддержка отказоустойчивости также входит в обязанности системного администратора. В состав ОС обычно входят утилиты, позволяющие администратору выполнять регулярные операции резервного копирования для обеспечения быстрого восстановления важных данных.
1.1.5 Интерфейс прикладного программирования
Прикладные программисты используют в своих приложениях обращения к ОС, когда для выполнения тех или иных действий им требуется особый статус, которым обладает только операционная система. Например, в большинстве современных ОС все действия, связанные с управлением аппаратными средствами компьютера, может выполнять только ОС. Помимо этих функций, прикладной программист может воспользоваться набором сервисных функций ОС, которые упрощают написание приложений. Функции такого типа реализуют универсальные действия, часто требующиеся в различных приложениях, такие, например, как обработка текстовых строк. Эти функции могли бы быть выполнены и самим приложением, однако гораздо проще использовать уже готовые, отлаженные процедуры, включенные в состав операционной системы. В то же время даже при наличии в ОС соответствующей функции программист может реализовать ее самостоятельно в рамках приложения, если предложенный операционной системой вариант его не вполне устраивает.
Возможности операционной системы доступны прикладному программисту в виде набора функций, называющегося интерфейсом прикладного программирования (Application Programming Interface, API). От конечного пользователя эти функции скрыты за оболочкой алфавитноцифрового или графического пользовательского интерфейса.
Для разработчиков приложений все особенности конкретной операционной системы представлены особенностями ее API. Поэтому операционные системы с различной внутренней организацией, но с одинаковым набором функций API кажутся им одной и той же ОС, что упрощает стандартизацию операционных систем и обеспечивает переносимость приложений между внутренне различными ОС, соответствующими определенному стандарту на API. Например, следование общим стандартам API UNIX, одним из которых является стандарт POSIX (Portable Operating System Interface for Computer Environment), позволяет говорить о некоторой обобщенной операционной системе UNIX, хотя многочисленные версии этой ОС от разных производителей иногда существенно отличаются внутренней организацией.
Приложения выполняют обращения к функциям API с помощью системных вызовов. Способ, которым приложение получает услуги операционной системы, очень похож на вызов подпрограмм. Информация, нужная ОС и состоящая обычно из идентификатора команды и данных, помещается в определенное место памяти, в регистры и/или стек. Затем управление передается операционной системе, которая выполняет требуемую функцию и возвращает результаты через память, регистры или стеки. Если операция проведена неуспешно, то результат включает индикацию ошибки.
Способ реализации системных вызовов зависит от структурной организации ОС, которая, в свою очередь, тесно связана с особенностями аппаратной платформы. Кроме того, он зависит от языка программирования. При использовании языков высокого уровня функции ОС вызываются тем же способом, что и написанные пользователем подпрограммы, требуя задания определенных аргументов в определенном порядке.
Вопросы для самопроверки
1. Какие функции выполняет ОС, выступая в качестве виртуальной машины?
2. Какие функции возложены на подсистему управления процесса-ми?
3. Для каких целей современные ОC используют виртуальную па-мять?
4. Какие задачи возлагает ОС на файловую систему?
5. Какие действия предпринимает ОС для того, чтобы защитить данные от несанкционированного доступа?
Контрольные вопросы
6. Что представляет собой операционная система?
7. Какие основные функции выполняет ОС?
8. Назовите основные ресурсы вычислительной системы.
9. В чем сходство и различие терминов «программа» и «процесс»?
10. Какие задачи по управлению ресурсами возложены на ОС?
11. Какой смысл в терминах ОС вкладывается в слово «подсистема»?
12. Какие основные подсистемы относятся к подсистемам управления ресурсами?
13. Какие подсистемы являются общими для всех ресурсов?
14. Какие типы процессов Вам известны?
15. Что подразумевают под термином «адресное пространство»?
16. Что такое «контекст процесса»?
17. Какие функции выполняет подсистема управления памятью?
18. Какие задачи решает подсистема управления виртуальной па-мятью?
19. В чем суть механизма защиты памяти?
20. Для каких целей служит файловая система (ФС)?
21. Как организована поддержка отказоустойчивости системы?
22. Какое средство предусмотрено в ОС для того, чтобы пользова-тельское приложение могло управлять аппаратными средствами ПК?
1.1.6 Пользовательский интерфейс
Операционная система должна обеспечивать удобный интерфейс не только для прикладных программ, но и для человека, работающего за терминалом. Этот человек может быть конечным пользователем, администратором ОС или программистом.
Современные ОС поддерживают развитые функции пользовательского интерфейса для интерактивной работы за терминалами двух типов: алфавитноцифровыми и графическими.
При работе за алфавитноцифровым терминалом пользователь имеет в своем распоряжении систему команд, мощность которой отражает функциональные возможности данной ОС. Обычно командный язык ОС позволяет запускать и останавливать приложения, выполнять различные операции с файлами и каталогами, получать информацию о состоянии ОС (количество работающих процессов, объем свободного пространства на дисках и т. п.), администрировать систему. Команды могут вводиться не только в интерактивном режиме с терминала, но и считываться из так называемого командного файла, содержащего некоторую последовательность команд. Программный модуль ОС, ответственный за чтение отдельных команд или же последовательности команд из командного файла, иногда называют командным интерпретатором.
Ввод команды может быть упрощен, если операционная система поддерживает графический пользовательский интерфейс. В этом случае пользователь для выполнения нужного действия с помощью мыши выбирает на экране нужный пункт меню или графический символ.
1.2 Сетевые операционные системы
Сетевые операционные системы устанавливаются на компьютеры, объединенные в вычислительную сеть.
Компьютерная сеть это набор компьютеров, связанных коммуникационной системой и снабженных соответствующим программным обеспечением, позволяющим пользователям сети получать доступ к ресурсам этого набора компьютеров. Сеть могут образовывать компьютеры разных типов, которыми могут быть небольшие микропроцессоры, рабочие станции, миникомпьютеры, персональные компьютеры или суперкомпьютеры. Коммуникационная система может включать кабели, повторители, коммутаторы, маршрутизаторы и другие устройства, обеспечивающие передачу сообщений между любой парой компьютеров сети. Компьютерная сеть позволяет пользователю работать со своим компьютером как с автономным ПК и добавляет к этому возможность доступа к информационным и аппаратным ресурсам других компьютеров сети.
При организации сетевой работы операционная система играет роль интерфейса, скрывающего от пользователя все детали низкоуровневых программноаппаратных средств сети. Например, вместо числовых адресов компьютеров сети, таких, как МАСадрес (уникальный адрес, присваиваемый изготовителем сетевых плат) и IPадрес, операционная система компьютерной сети позволяет оперировать удобными для запоминания символьными именами. В результате в представлении пользователя сеть с ее множеством сложных и запутанных реальных деталей превращается в достаточно понятный набор разделяемых ресурсов.
1.2.1 Сетевые и распределенные ОС
В зависимости от того, какой виртуальный образ создает операционная система, чтобы подменить им реальную аппаратуру компьютерной сети, различают сетевые ОС и распределенные ОС.
Сетевая ОС предоставляет пользователю некую виртуальную вычислительную систему, работать с которой гораздо проще, чем с реальной сетевой аппаратурой. В то же время эта виртуальная система не полностью скрывает распределенную природу своего реального прототипа, то есть является виртуальной сетью.
При использовании ресурсов компьютеров сети пользователь сетевой ОС всегда помнит, что он имеет дело с сетевыми ресурсами и что для доступа к ним нужно выполнить некоторые особые операции, например, отобразить удаленный разделяемый каталог на вымышленную локальную букву дисковода или поставить перед именем каталога еще и имя компьютера, на котором тот расположен. Пользователи сетевой ОС обычно должны быть в курсе того, где хранятся их файлы, и должны использовать явные команды передачи файлов для перемещения файлов с одной машины на другую.
Работая в среде сетевой ОС, пользователь, хотя и может запустить задание на любой машине компьютерной сети, всегда знает, на какой машине выполняется его задание. По умолчанию пользовательское задание выполняется на той машине, на которой пользователь сделал логический вход. Если же он хочет выполнить задание на другой машине, то ему нужно либо выполнить логический вход в эту машину, либо ввести специальную команду удаленного выполнения, в которой он должен указать информацию, идентифицирующую удаленный компьютер.
Магистральным направлением развития сетевых операционных систем является достижение как можно более высокой степени прозрачности сетевых ресурсов. В идеальном случае сетевая ОС должна представить пользователю сетевые ресурсы в виде ресурсов единой централизованной виртуальной машины. Для такой операционной системы используют специальное название распределенная ОС или истинно распределенная ОС.
Распределенная ОС, динамически и автоматически распределяя работы по различным машинам системы для обработки, заставляет набор сетевых машин работать как виртуальный унипроцессор. Пользователь распределенной ОС не имеет сведений о том, на какой машине выполняется его работа. Распределенная ОС существует как единая операционная система в масштабах вычислительной системы. Каждый компьютер сети, работающий под управлением распределенной ОС, выполняет часть функций этой глобальной ОС. Распределенная ОС объединяет все компьютеры сети в том смысле, что они работают в тесной кооперации друг с другом для эффективного использования всех ресурсов компьютерной сети.
1.2.2 Два значения термина «сетевая ОС»
В настоящее время практически все сетевые операционные системы еще очень далеки от идеала истинной распределенности. Степень автономности каждого компьютера в сети, работающей под управлением сетевой операционной системы, значительно выше по сравнению с компьютерами, работающими под управлением распределенной ОС.
В результате сетевая ОС может рассматриваться как набор операционных систем отдельных компьютеров, составляющих сеть. На разных компьютерах сети могут выполняться одинаковые или разные ОС. Например, на всех компьютерах сети может работать одна и та же ОС UNIX. Более реалистичным вариантом является сеть, в которой работают разные ОС, например, часть компьютеров работает под управлением UNIX, часть под управлением NetWare, а остальные под управлением Windows NT и Windows 98. Все эти операционные системы функционируют независимо друг от друга в том смысле, что каждая из них принимает независимые решения о создании и завершении своих собственных процессов и управлении локальными ресурсами. Но в любом случае операционные системы компьютеров, работающих в сети, должны включать взаимно согласованный набор коммуникационных протоколов для организации взаимодействия процессов, выполняющихся на разных компьютерах сети, и разделения ресурсов этих компьютеров между пользователями сети.
Если операционная система отдельного компьютера позволяет ему работать в сети, то есть предоставлять свои ресурсы в общее пользование и/или потреблять ресурсы других компьютеров сети, то такая операционная система отдельного компьютера также называется сетевой ОС.
Таким образом, термин «сетевая операционная система» используется в двух значениях: во-первых, как совокупность ОС всех компьютеров сети и, во-вторых, как операционная система отдельного компьютера, способного работать в сети. Исходя из этого определения следует, что такие операционные системы, как, например, Windows NT, NetWare, Linux, Solaris, являются сетевыми, поскольку все они обладают средствами, которые позволяют их пользователям работать в сети.
1.2.3 Функциональные компоненты сетевой ОС
К основным функциональным компонентам сетевой ОС можно отнести средства управления локальными ресурсами компьютера, которые реализуют все функции ОС автономного компьютера (распределение оперативной памяти между процессами, планирование и диспетчеризацию процессов, управление процессорами в мультипроцессорных машинах, управление внешней памятью, интерфейс с пользователем и т. д.).
Сетевые средства, в свою очередь, можно разделить на три компонента:
серверная часть ОС - средства предоставления локальных ресурсов и услуг в общее пользование;
клиентская часть ОС - средства запроса доступа к удаленным ресурсам и услугам;
транспортные средства ОС, которые совместно с коммуникационной системой обеспечивают передачу сообщений между компьютерами сети.
Упрощенно работа сетевой ОС происходит следующим образом. Предположим, что пользователь компьютера «А» решил разместить свой файл на диске другого компьютера сети компьютера «В». Для этого он набирает на клавиатуре соответствующую команду и нажимает клавишу <Enter>. Программный модуль ОС, отвечающий за интерфейс с пользователем, принимает эту команду и передает ее клиентской части ОС компьютера «А».
Клиентская часть ОС не может получить непосредственный доступ к ресурсам другого компьютера в данном случае к дискам и файлам компьютера «В». Она может только «попросить» об этом серверную часть ОС, работающую на том компьютере, которому принадлежат эти ресурсы. Эти «просьбы» выражаются в виде сообщений, передаваемых по сети. Сообщения могут содержать не только команды на выполнение некоторых действий, но и собственно данные, например, содержимое некоторого файла. Управляют передачей сообщений между клиентской и серверными частями по коммуникационной системе сети транспортные средства ОС. Эти средства выполняют такие функции, как формирование сообщений, разбиение сообщения на части (пакеты, кадры), преобразование имен компьютеров в числовые адреса, организацию надежной доставки сообщений, определение маршрута в сложной сети и т. д. и т. п. Правила взаимодействия компьютеров при передаче сообщений по сети фиксируются в коммуникационных протоколах, таких, как Ethernet, Token Ring, IP, IPX и пр. Чтобы два компьютера смогли обмениваться сообщениями по сети, транспортные средства их ОС должны поддерживать некоторый общий набор коммуникационных протоколов. Коммуникационные протоколы переносят сообщения клиентских и серверных частей ОС по сети, не вникая в их содержание.
На компьютере «В», на диск которого пользователь хочет поместить свой файл, должна работать серверная часть ОС, постоянно ожидающая прихода запросов из сети на удаленный доступ к ресурсам этого компьютера. Серверная часть, приняв запрос из сети, обращается к локальному диску и записывает в один из его каталогов указанный файл. Конечно, для выполнения этих действий требуется не одно, а целая серия сообщений, переносящих между компьютерами команды ОС и части передаваемого файла.
Очень удобной и полезной функцией клиентской части ОС является способность отличить запрос к удаленному файлу от запроса к локальному файлу. Если клиентская часть ОС умеет это делать, то приложения не должны заботиться о том, с локальным или удаленным файлом они работают, - клиентская программа сама распознает и перенаправляет (redirect) запрос к удаленной машине. Отсюда и название, часто используемое для клиентской части сетевой ОС, редиректор. Иногда функции распознавания выделяются в отдельный программный модуль, в этом случае редиректором называют не всю клиентскую часть, а только этот модуль.
1.2.4 Сетевые службы и сетевые сервисы
Совокупность серверной и клиентской частей ОС, предоставляющих доступ к конкретному типу ресурса компьютера через сеть, называется сетевой службой. В приведенном выше примере клиентская и серверная части ОС, которые совместно обеспечивают доступ через сеть к файловой системе компьютера, образуют файловую службу.
Говорят, что сетевая служба предоставляет пользователям сети некоторый набор услуг. Эти услуги иногда называют также сетевым сервисом (от англоязычного термина «service»). Хотя указанные термины иногда используются как синонимы, следует иметь в виду, что в некоторых случаях различие в значениях этих терминов носит принципиальный характер. Далее в тексте под «службой» мы будем понимать сетевой компонент, который реализует некоторый набор услуг, а под «сервисом» описание того набора услуг, который предоставляется данной службой. Таким образом, сервис это интерфейс между потребителем услуг и поставщиком услуг (службой).
Каждая служба связана с определенным типом сетевых ресурсов и/или определенным способом доступа к этим ресурсам. Например, служба печати обеспечивает доступ пользователей сети к разделяемым принтерам сети и предоставляет сервис печати, а почтовая служба предоставляет доступ к информационному ресурсу сети электронным письмам. Способом доступа к ресурсам отличается, например, служба удаленного доступа она предоставляет пользователям компьютерной сети доступ ко всем ее ресурсам через коммутируемые телефонные каналы. Для получения удаленного доступа к конкретному ресурсу, например, к принтеру, служба удаленного доступа взаимодействует со службой печати. Наиболее важными для пользователей сетевых ОС являются файловая служба и служба печати.
Среди сетевых служб можно выделить такие, которые ориентированы не на простого пользователя, а на администратора. Такие службы используются для организации работы сети. Например, служба Bindery операционной системы Novell NetWare 3.x позволяет администратору вести базу данных о сетевых пользователях компьютера, на котором работает эта ОС. Более прогрессивным является подход с созданием централизованной справочной службы или, подругому, службы каталогов, которая предназначена для ведения базы данных не только обо всех пользователях сети, но и обо всех ее программных и аппаратных компонентах. В качестве примеров службы каталогов часто приводятся NDS компании Novell. Другими примерами сетевых служб, предоставляющих сервис администратору, являются служба мониторинга сети, позволяющая захватывать и анализировать сетевой трафик, служба безопасности, в функции которой может входить, в частности, выполнение процедуры логического входа с проверкой пароля, служба резервного копирования и архивирования.
От того, насколько богатый набор услуг предлагает операционная система конечным пользователям, приложениям и администраторам сети, зависит ее позиция в общем ряду сетевых ОС.
Сетевые службы по своей природе являются клиентсерверными системами. Поскольку при реализации любого сетевого сервиса естественно возникают источник запросов (клиент) и исполнитель запросов (сервер), то и любая сетевая служба содержит в своем составе две несимметричные части клиентскую и серверную. Сетевая служба может быть представлена в операционной системе либо обеими (клиентской и серверной) частями, либо только одной из них.
Обычно говорят, что сервер предоставляет свои ресурсы клиенту, а клиент ими пользуется. Необходимо отметить, что при предоставлении сетевой службой некоторой услуги используются ресурсы не только сервера, но и клиента. Клиент может затрачивать значительную часть своих ресурсов (дискового пространства, процессорного времени и т. п.) на поддержание работы сетевой службы. Принципиальной разницей между клиентом и сервером является то, что инициатором выполнения работы сетевой службой всегда выступает клиент, а сервер всегда находится в режиме пассивного ожидания запросов. Например, почтовый сервер осуществляет доставку почты на компьютер пользователя только при поступлении запроса от почтового клиента.
Обычно взаимодействие между клиентской и серверной частями стандартизуется, так что один тип сервера может быть рассчитан на работу с клиентами разного типа, реализованными различными способами и, может быть, разными производителями. Единственное условие для этого клиенты и сервер должны поддерживать общий стандартный протокол взаимодействия.
1.2.5 Встроенные сетевые службы и сетевые оболочки
На практике сложилось несколько подходов к построению сетевых операционных систем, различающихся глубиной внедрения сетевых служб в операционную систему:
сетевые службы глубоко встроены в ОС;
сетевые службы объединены в виде некоторого набора оболочки;
сетевые службы производятся и поставляются в виде отдельного продукта.
Первые сетевые ОС представляли собой совокупность уже существующей локальной ОС и надстроенной над ней сетевой оболочки. При этом в локальную ОС встраивался минимум сетевых функций, необходимых для работы сетевой оболочки, которая выполняла основные сетевые функции.
Однако в дальнейшем разработчики сетевых ОС посчитали более эффективным подход, при котором сетевая ОС с самого начала работы над ней задумывается и проектируется специально для работы в сети. Сетевые функции у этих ОС глубоко встраиваются в основные модули системы, что обеспечивает ее логическую стройность, простоту эксплуатации и модификации, а также высокую производительность. Важно, что при таком подходе отсутствует избыточность. Если все сетевые службы хорошо интегрированы, то есть рассматриваются как неотъемлемые части ОС, то все внутренние механизмы такой операционной системы могут быть оптимизированы для выполнения сетевых функций. Например, ОС Windows NT компании Microsoft за счет встроенных сетевых средств обеспечивает более высокие показатели производительности и защищенности информации по сравнению с сетевой ОС LAN Manager той же компании, являющейся надстройкой над локальной операционной системой OS/2. Другими примерами сетевых ОС со встроенными сетевыми службами являются все современные версии UNIX, NetWare, OS/2 Warp.
Другой вариант реализации сетевых служб - объединение их в виде некоторого набора (оболочки), при этом все службы такого набора должны быть между собой согласованы, то есть в своей работе они могут обращаться друг к другу, могут иметь в своем составе общие компоненты, например, общую подсистему аутентификации пользователей или единый пользовательский интерфейс. Для работы оболочки необходимо наличие некоторой локальной операционной системы, которая бы выполняла обычные функции, необходимые для управления аппаратурой компьютера, и в среде которой выполнялись бы сетевые службы, составляющие эту оболочку. Оболочка представляет собой самостоятельный программный продукт и, как всякий продукт, имеет название, номер версии и другие соответствующие характеристики.
Сетевые оболочки часто подразделяются на клиентские и серверные. Оболочка, которая преимущественно содержит клиентские части сетевых служб, называется клиентской. Например, типичным набором программного обеспечения рабочей станции в сети NetWare является система MSDOS с установленной над ней клиентской оболочкой NetWare, состоящей из клиентских частей файловой службы и службы печати, а также компонента, поддерживающего пользовательский интерфейс.
Серверная сетевая оболочка, примерами которой могут служить серверы Samba для ОС Linux, File and Print Services for NetWare, ориентирована на выполнение серверных функций. Серверная оболочка как минимум содержит серверные компоненты двух основных сетевых служб - файловой службы и службы печати. Именно такой набор серверных компонентов реализован в упомянутых выше продуктах.
Сетевые оболочки создаются как для локальных, так и для сетевых операционных систем, дополняя набор сетевых служб, встроенных в сетевую ОС, другими службами, составляющими некоторую сетевую оболочку.
Существует и третий способ реализации сетевой службы в виде отдельного продукта. Например, сервер удаленного управления WinFrame продукт компании Citrix предназначен для работы в среде Windows NT. Он дополняет возможности встроенного в Windows NT сервера удаленного доступа Remote Access Server. Аналогичную службу удаленного доступа для NetWare также можно приобрести отдельно, купив программный продукт NetWare Connect.
С течением времени сетевая служба может получить разные формы реализации. Так, например, компания Novell поставляет справочную службу NDS, первоначально встроенную в сетевую ОС NetWare, для других ОС. Для этого служба NDS переписывается в виде отдельных продуктов, каждый из которых учитывает специфику соответствующей ОС. Уже имеются версии NDS для работы в средах SCO UNIX и HPUX, Linux RedHat7.3, Solaris 2.5 и Windows NT.
1.3 Одноранговые и серверные сетевые операционные системы
В зависимости от того, как распределены функции между компьютерами сети, они могут выступать в трех разных ролях:
· компьютер, занимающийся исключительно обслуживанием запросов других компьютеров, играет роль выделенного сервера сети;
· компьютер, обращающийся с запросами к ресурсам другой машины, исполняет роль клиентского узла;
· компьютер, совмещающий функции клиента и сервера, является одноранговым узлом.
Очевидно, что сеть не может состоять только из клиентских или только из серверных узлов. Сеть, оправдывающая свое назначение и обеспечивающая взаимодействие компьютеров, может быть построена по одной из трех следующих схем:
· сеть на основе одноранговых узлов -- одноранговая сеть;
· сеть на основе клиентов и серверов -- сеть с выделенными серверами;
· сеть, включающая узлы всех типов, -- гибридная сеть.
Каждая из этих схем обладает своими достоинствами и недостатками, определяющими их области применения.
1.3.1 ОС в одноранговых сетях
Одноранговая сеть
В одноранговых сетях все компьютеры равны в возможностях доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какойлибо ресурс своего компьютера разделяемым, после чего другие пользователи могут его использовать. В одноранговых сетях на всех компьютерах устанавливается такая операционная система, которая предоставляет всем компьютерам в сети потенциально равные возможности. Сетевые операционные системы такого типа называются одноранговыми ОС. Очевидно, что одноранговые ОС должны включать как серверные, так и клиентские компоненты сетевых служб (на рисунке они обозначены буквами соответственно С и К). Примерами одноранговых ОС могут служить LANtastic, Personal Ware, Windows for Workgroups, Windows NT Workstation, Windows 95/98.
При потенциальном равноправии всех компьютеров в одноранговой сети часто возникает функциональная несимметричность. Обычно в сети имеются пользователи, которые не желают предоставлять свои ресурсы в совместное пользование. В таком случае серверные возможности их операционных систем не активизируются и компьютеры выполняют роль «чистых» клиентов (на рисунке неиспользуемые компоненты ОС изображены затемненными).
В то же время администратор может закрепить за некоторыми компьютерами сети только функции по обслуживанию запросов остальных компьютеров, превратив их таким образом в «чистые» серверы, за которыми не работают пользователи. В такой конфигурации одноранговые сети становятся похожи на сети с выделенными серверами, но это только внешняя схожесть -- между этими двумя типами сетей остается существенное внутреннее различие. Изначально в одноранговых сетях специализация ОС не зависит от того, какую функциональную роль выполняет компьютер -- клиента или сервера. Изменение роли компьютера в одноранговой сети достигается за счет того, что функции серверной или клиентской частей просто не используются.
Одноранговые сети проще в организации и эксплуатации, по этой схеме организуется работа в небольших сетях, в которых количество компьютеров не превышает 1020. В этом случае нет необходимости в применении централизованных средств администрирования -- нескольким пользователям нетрудно договориться между собой о перечне разделяемых ресурсов и паролях доступа к ним.
Однако в больших сетях средства централизованного администрирования, хранения и обработки данных, а особенно защиты данных становятся необходимыми, и такие возможности легче обеспечить в сетях с выделенными серверами.
1.3.2 ОС в сетях с выделенными серверами
В сетях с выделенными серверами используются специальные варианты сетевых ОС, которые оптимизированы для работы в роли серверов и называются серверными ОС. Пользовательские компьютеры в этих сетях работают под управлением клиентских ОС.
Специализация операционной системы для работы в качестве сервера является естественным способом повышения эффективности серверных операций. А необходимость такого повышения часто ощущается весьма остро, особенно в крупной сети. При существовании в сети сотен или даже тысяч пользователей интенсивность запросов к совместно используемым ресурсам может быть очень большой, и сервер должен справляться с этим потоком запросов без больших задержек. Очевидным решением этой проблемы является использование в качестве сервера компьютера с мощной аппаратной платформой и операционной системой, оптимизированной для серверных функций.
Чем меньше функций выполняет ОС, тем более эффективно можно их реализовать, поэтому для оптимизаций серверных операций разработчики ОС вынуждены ущемлять некоторые другие ее функции, причем иногда вплоть до полного их отбрасывания. Одним из ярких примеров такого подхода является серверная ОС NetWare. Ее разработчики поставили перед собой цель оптимизировать выполнение файлового сервиса и сервиса печати. Для этого они полностью исключили из системы многие элементы, важные для универсальной ОС, в частности графический интерфейс пользователя, поддержку универсальных приложений, защиту приложений мультипрограммного режима друг от друга, механизм виртуальной памяти. Все это позволило добиться уникальной; скорости файлового доступа вывело эту операционную систему в лидеры серверных ОС на долгое время.
...Подобные документы
Разработка и анализ интерфейса пользователя базы данных. Ознакомление с процессом поэтапного создания проекта и добавления файла локальной базы данных. Исследование и характеристика главных принципов программирования функциональной части интерфейса.
дипломная работа [3,0 M], добавлен 27.09.2017Назначение серверных операционных систем. Сравнительный анализ серверных операционных систем Windows и Linux и сравнение их по важным показателям таким как: пользовательский графический интерфейс, безопасность, стабильность работы, возможность и цена.
курсовая работа [50,1 K], добавлен 03.07.2012Интерфейс API, реализация функций API на уровне ОС, системы программирования и с помощью внешних библиотек. Характеристики сетевого интерфейса прикладного программирования Winsock, особенности его применения в операционных системах UNIX и Windows.
контрольная работа [74,2 K], добавлен 04.06.2015Операционная система - программа, которая загружается при включении компьютера. Способы реализации интерфейса и классификация операционных систем. Организация файловой системы, типы файлов и их наименования. Понятие каталога, атрибуты файловой системы.
реферат [16,6 K], добавлен 25.02.2011Сущность web–программирования, понятие и характеристика главных клиентских и серверных языков. Основные события JavaScript. История и виды баннера, особенности его создание, формирование формата и скрипт показа. Пример программирования flаsh-баннера.
курсовая работа [706,0 K], добавлен 13.01.2014Ознакомление с языком программирование PHP. Операторы управления и передачи данных, конструкции разветвления и повторения. Создание функции в PHP. Работа с числами, строками и датой/временем в PHP. Работа с массивами данных. Работа с файловой системой.
курсовая работа [1,5 M], добавлен 09.09.2011История развития и классификация высокоуровневых языков логического программирования. Определение понятий графического интерфейса, сетевых протоколов и моделей баз данных. Современные системы программирования компании Borland/Inprise и фирмы Microsoft.
курсовая работа [72,3 K], добавлен 11.07.2011Изучение особенностей операционной системы, набора программ, контролирующих работу прикладных программ и системных приложений. Описания архитектуры и программного обеспечения современных операционных систем. Достоинства языка программирования Ассемблер.
презентация [1,3 M], добавлен 22.04.2014История создания и общая характеристика операционных систем Windows Server 2003 и Red Hat Linux Enterprise 4. Особенности установки, файловых систем и сетевых инфраструктур данных операционных систем. Использование протокола Kerberos в Windows и Linux.
дипломная работа [142,7 K], добавлен 23.06.2012Изучение особенностей структурного программирования и процесса применения многомодульности оконного интерфейса приложения. Описание внутренних переменных модуля. Рассмотрение и характеристика преимуществ современных интегрированных сред разработки.
контрольная работа [487,0 K], добавлен 05.07.2017Описания сетевых протоколов прикладного уровня, позволяющих производить удалённое управление операционной системой. Основные характеристики протокола CMIP. Изучение особенностей Telnet, сетевого протокола для реализации текстового интерфейса по сети.
реферат [47,0 K], добавлен 24.01.2014Прорыв на рынок Windows как графической оболочки MS-DOS. Рассмотрение интерфейса, функций, системных требований и отличительных особенностей поколений операционных систем Windows: 9x, NT, NET, Vista. Анализ мобильности и безопасности последней версии ОС.
реферат [1,4 M], добавлен 16.01.2010Обзор существующих систем управления базы данных. Основные характеристики языка программирования MS VB 2010. Содержание базы данных для хранения информации об успеваемости. Программирование системных модулей программы, содержание интерфейса пользователя.
курсовая работа [1,1 M], добавлен 22.02.2014Исследование теоретических аспектов разработки программы посредством использования Visual Basic. Анализ достоинств и недостатков данного языка программирования. Изучение особенностей создания интерфейса приложения. Основные этапы реализации программы.
практическая работа [460,6 K], добавлен 22.01.2013Проблемы и тенденции проектирования операционных систем, структура ОС. Руководящие принципы при разработке интерфейса. Парадигмы пользователя, исполнения и данных. Примеры применения ортогональности и связывания. Методы практической реализации систем.
реферат [60,9 K], добавлен 26.01.2011Изучение этапов возникновения компьютерных операционных систем. Особенности их прикладного программного интерфейса и конфигурации. Характеристика набора вспомогательных программ - редакторов, компиляторов, программ работы с файлами (системные утилиты).
презентация [98,0 K], добавлен 29.05.2010Характеристики и свойства языков программирования. Исследование эволюции объектно-ориентированных языков программирования. Построение эволюционной карты механизмов ООП. Разработка концептуальной модели функционирования пользовательского интерфейса.
курсовая работа [2,6 M], добавлен 17.11.2014Рассмотрение особенностей среды программирования Delphi, анализ клиент-серверной версии. Знакомство с библиотекой визуальных компонентов. Основные функции интеллектуального редактора. Характеристика требований к базам данных. Функции программы "Магистр".
дипломная работа [1,5 M], добавлен 10.03.2013Microsoft Office как пример прикладного программного обеспечения (ПО). Проблемы выбора и использования прикладного ПО. Роль программных продуктов пакетного типа, обеспечивающих свободную конвертацию данных между различными компьютерными технологиями.
реферат [18,2 K], добавлен 21.02.2010Общая характеристика преимуществ взаимодействующих процессов: модульность, ускорение вычислений. Знакомство с основами современных операционных систем. Анализ особенностей использования общего почтового ящика, рассмотрение способов создания и удаления.
презентация [1,6 M], добавлен 24.01.2014