Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OTVYeT_34-49.docx
Скачиваний:
7
Добавлен:
06.12.2018
Размер:
70.41 Кб
Скачать

36)Функции операционной системы по управлению внешней памятью и распределенными системами.

Поскольку размер основной памяти недостаточен для постоянного хранения всех программ и данных, в компьютерной системе должна быть предусмотрена вторичная (внешняя) память для откачки (back up, swapping) части содержимого основной памяти.

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

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

  • Управление свободной дисковой памятью;

  • Выделение дисковой памяти;

  • Диспетчеризация дисков (disk scheduling).

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

Управление сетевыми (распределенными) системами. Распределенная система – это совокупность процессоров, которые не используют общую память или часы (такты процессора). Каждый процессор имеет собственную локальную память. Процессоры в такой системе соединены в сеть. Сетевое взаимодействие выполняется по определенному протоколу (интерфейсу, набору операций). Наиболее распространенный сетевой протокол – TCP/IP, основанный на IP-адресах машин (hosts); например, 190.100.125.1.

В распределенной системе ОС обеспечивает доступ пользователей к различным общим сетевым ресурсам – например, файловым системам или принтерам. Каждому общему ресурсу ОС присваивает определенное сетевое имя и управляет возможностью доступа к нему с различных компьютеров сети. ОС обеспечивает также удаленный запуск программ на другом компьютере сети – возможность входа на другой компьютер и работы на нем, с использованием памяти, процессора и диска удаленной, как правило, более мощной машины, и использованием клиентского компьютера в качестве терминала. В Windows такая возможность называется удаленный рабочий стол (remote desktop connection), в UNIX, LINUX, Solaris – rsh (remote shell) и rlogin (remote login).

Доступ к общим ресурсам (shared resource) в распределенной системе позволяет:

  • Ускорить вычисления;

  • Расширить границы доступа к данным;

  • Обеспечить более высокую надежность.

37)Система защиты и система поддержки командного интерпретатора операционной системы.

Система защиты (ptotection)

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

Механизм защиты в ОС должен обеспечивать следующие возможности:

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

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

Обеспечивать средства выполнения необходимых для защиты действий (сигналы, исключения, блокировка и др.). Например, система защиты ОС должна фильтровать сетевые пакеты, получаемые извне локальной сети, выбирать и отсеивать "неблагонадежные" (получаемые с подозрительных IP-адресов), сообщать пользователю об обнаруженных и ликвидированных попытках сетевых атак с целью "взлома" Вашего компьютера (что и происходит на практике, например, при работе в Windows, когда Вы выходите в Интернет с Вашего компьютера). Если Вы нарушили условия защиты (например, Ваша программа попыталась обратиться к файлу, работать с которым у Вас нет полномочий), ОС должна выдать понятное сообщение и прекратить работу программы. В современных системах это делается с помощью генерации исключений (exceptions), например, SecurityException.

Система поддержки командного интерпретатора

Большинство команд для ОС задаются с помощью специальных управляющих операторов, предназначенных для выполнения следующих основных функций:

  • создания процессов и управления процессами; например, в UNIX команда ps –a выводит в стандартный вывод процесса информацию обо всех активных процессах в системе, с указанием их номеров (PID);

  • выполнения ввода-вывода; например, в системе MS DOS команда type file_name выполняет вывод на терминал содержимого заданного текстового файла;

  • управления вторичной памятью; например, в UNIX команда share /mydir добавляет директорию /mydir к списку совместно используемых в локальной сети файловых систем;

  • управления основной памятью; например, команда swap в ОС Solaris позволяет управлять размером пространства дисковой памяти для реализации виртуальной памяти (swap) и выводить информацию о его состоянии;

  • доступа к файловой системе; например, в большинстве ОС команда cd new_dir устанавливает заданную директорию в качестве текущей (рабочей);

  • защиты; например, в системе UNIX команда chmod 700 my_home_dir защитит Вашу домашнюю директорию от непрошенных любoпытных глаз – "лазутчик" не сможет даже выполнить команду cd для этой директории и, тем более, читать в ней какие-либо файлы;

  • управления сетью; например, команды telnet host_name и rlogin host_name (последняя доступна в системе UNIX) служат для удаленного входа на другой компьютер сети.

Программа, которая читает и интерпретирует операторы управления, называется командным интерпретатором. В Windows это интерпретатор command.com, доступный для выполнения команд в окне MS DOS prompt. В UNIX, Linux, Solaris это уже упоминавшиеся всевозможные "шеллы": sh, csh, ksh, bash – процессоры для интерпретации мощных командных языков. Функция командного процессора состоит в том, чтобы прочесть и исполнить очередной управляющий оператор (команду).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]