Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Структура файловой системы ОС GNU/Linux. Типы файлов.



 

Планирование заданий. Типы многозадачности.

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

Многозада́ чность — свойство операционной системы или среды выполнения обеспечивать возможность параллельной (или псевдопараллельной) обработки нескольких задач. Истинная многозадачность операционной системы возможна только в распределённых вычислительных системах.

Существует 2 типа многозадачности: Процессная многозадачность. Здесь программа — наименьший элемент управляемого кода, которым может управлять планировщик операционной системы. Более известна большинству пользователей (работа в текстовом редакторе и прослушивание музыки). Поточная многозадачность. Наименьший элемент управляемого кода — поток (одна программа может выполнять 2 и более задачи одновременно).

45 Процессы в ОС GNU/Linux. Ветвление процессов. Организация процессов в фоновом режиме. Идентификатор процесса (pid).

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

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

Начальная загрузка системы состоит в том, что файл с образом ядра считывается в оперативную память, начиная с нулевого адреса. Этот файл находится в каталоге /boot и называется vmlinuz-x.y.z, где x.y.z — это номер версии ядра.

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

Запись в таблице процессов и пространство процесса вместе составляют контекст, или окружение, процесса. В него входят:

  • PID — идентификатор процесса. Он принудительно назначается планировщиком при запуске процесса.
  • PPID — идентификатор родительского процесса (о порождении процессов — дальше в этом же параграфе).
  • TTY — имя управляющего терминала (терминал, с которого запущен процесс).
  • WD — текущий каталог процесса, от которого отсчитываются относительные пути.
  • RID, RGID — реальные ID и групповой ID пользователя, запустившего процесс.
  • NICE — показатель уступчивости. Процессы выполняются в режиме разделения времени, то есть время центрального процессора делится между готовыми к выполнению процессами с учетом их приоритета. Чем выше показатель уступчивости, тем ниже приоритет.
  • Переменные окружения.

Каждый процесс порождается другим процессом, использующим для этого системный вызов fork(). Таким образом, структура процессов древовидна. Корнем этого дерева служит init — процесс инициализации системы. Он запускается ядром первым, получает идентификатор 1 и порождает еще несколько процессов (сколько и каких, можно узнать из его конфигурационного файла /etc/inittab), которые, в свою очередь, при участии пользователя порождают другие процессы.

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

Иерархия процессов: ps и pstree

Команда ps позволяет просмотреть сведения обо всех процессах, протекающих в системе в данный момент(ps aux, ps -l)

Команда pstree представляет дерево процессов сразу в наглядном виде:

Ключ -р выводит вместе с именем процесса его PID, а ключ -и — имя пользователя, запустившего процесс/

Команды df (disk free) и du (disk usage) показывают, сколько места доступно и занято на жестком диске.

Процессы в реальном времени: команда top.

Фоновый режим

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

Чтобы запустить процесс на заднем плане (в фоновом или асинхронном режиме), нужно завершить командную строку управляющим оператором &.

 

Настройка конфигурации ОС MS DOS. Файлы CONFIG.SYS и AUTOEXEC.BAT.

Для настройки операционной системы MS DOS необходимо написать два файла: config.sys и autoexec.bat. Config.sys – текстовый файл, который устанавливает параметры ОС, если его нет, параметры устанавливаются по умолчанию. Находится в корневом каталоге загрузочного диска.

Формат файла config.sys

Имя_команды=значение

Команды, используемые в файле config.sys:

Device = имя_файла_драйвера – загрузка драйверов устройств;

Пример: device=c: \dos\himem.sys;

device=с: \dos\emm386.exe noems – загрузка драйвера верхней памяти emm386.sys, эмуляция EMS - памяти отключен;

Devicehigh = имя_файла_драйвера загрузка драйверов устройств в верхнюю память (от 640 Кб до 1Мб);

DOS=HIGH – переместить часть кода MS DOS в первые 64 Кб расширенной памяти;

DOS=UMB – разрешить использование блоков верхней памяти (с адресами от 640Кб до 1Мб);

DOS= HIGH, UMB – эквивалентна двум предыдущим;

Buffers=n – установка числа буферов для операций ввода – вывода;

Files =m – максимальное число одновременно открытых файлов (рекомендуется от 50 до 80);

Stacks =количество_стеков, размер стеков – задание количества и размера стека для обработки аппаратных прерываний (Пример: stacks=0, 0);

Break=on (off) - установить или отменить для программ DOS режим проверки нажатия клавиш Ctrl+Break или Ctrl+C при операциях ввода - вывода.

Country =код_страны, кодовая_страница, полное_имя_файла_Country.sys– настройка на принятые в стране правила для отображения времени, даты, денежных сумм, перевода прописных букв в строчные и обратно;

Country = 007, 866, c: \dos\country\sys – настройки для России;

Lastdrive =буква – установка последней буквы, которая может использовать в качестве имени дисковода;

Аutoexec.bat – это командный файл, который автоматически выполняется после загрузки файла config.sys. Он находится в корневом каталоге загрузочного диска. В него записываются команды для запуска резидентных программ и других программ, которые целесообразно запускать при каждой загрузки DOS. Autoexec.bat – это командный файл, который устанавливает среду удобную для работы пользователя.

Команды, используемые в файле autoexec.bat:

Path имя_каталога[; имя_каталога] – установка списка каталогов, в которых осуществляется поиск программ.

Prompt символы – установка формата приглашения ($p, $g, $d и т.д)

Для отображения русских букв на экране используется команда:

Mode con codepage prepare =((866) c: \dos\ega3.cpi)

Mode con codepage select =866

(При этом в файле config.sys должно быть device=c: \dos\display.sys con)

Для русификации клавиатуры: keyb ru,, c: \dos\keybrd2.sys.

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

 


Поделиться:



Популярное:

  1. I) Получение передаточных функций разомкнутой и замкнутой системы, по возмущению относительно выходной величины, по задающему воздействию относительно рассогласования .
  2. I. РАЗВИТИИ ЛЕКСИЧЕСКОЙ СИСТЕМЫ ЯЗЫКА У ДЕТЕЙ С ОБЩИМ НЕДОРАЗВИТИЕМ РЕЧИ
  3. II. О ФИЛОСОФСКОМ АНАЛИЗЕ СИСТЕМЫ МАКАРЕНКО
  4. V) Построение переходного процесса исходной замкнутой системы и определение ее прямых показателей качества
  5. VI. ЩЕЛЕВЫЕ И СПЕЦИАЛЬНЫЕ ТИПЫ АНТЕНН
  6. А. Разомкнутые системы скалярного частотного управления асинхронными двигателями .
  7. АВИАЦИОННЫЕ ПРИБОРЫ И СИСТЕМЫ
  8. Автоматизированные информационно управляющие системы сортировочных станций
  9. Автоматизированные системы диспетчерского управления
  10. Автоматическая телефонная станция квазиэлектронной системы «КВАНТ»
  11. Агрегатные комплексы и системы технических средств автоматизации ГСП
  12. Алгебраическая сумма всех электрических зарядов любой замкнутой системы остается неизменной (какие бы процессы ни происходили внутри этой системы).


Последнее изменение этой страницы: 2017-03-09; Просмотров: 829; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.025 с.)
Главная | Случайная страница | Обратная связь