Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OS_REDACTED_БИЛЕТЫ.docx
Скачиваний:
9
Добавлен:
01.04.2022
Размер:
1.15 Mб
Скачать
  1. Опишите алгоритм диспетчеризации процессов sjf

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

Возможны две схемы применения данной стратегии:

1. Без прерывания процессов – пока процессу предоставляется процессор, он не может быть прерван, пока не истечет его квант времени.

2. С прерыванием (SRTF).

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

В данном случае среднее время ожидания = (0 + 6 + 3 + 7)/4 = 4.

  1. Перечислите основные команды языка сценариев BASH

    BASH — Bourne-Again Shell, самый популярный командный интерпретатор в юниксоподобных системах, в особенности в GNU/Linux. 

    Любой bash-скрипт должен начинаться со строки: #!/bin/bash

break — выход из цикла for, while или until;

continue — выполнение следующей итерации цикла for, while или until;

echo — вывод аргументов, разделенных пробелами, на стандартное устройство вывода ($ echo Hello World) ;

cd  позволяет перейти в новый каталог;

exit — выход из оболочки;

export — отмечает аргументы как переменные для передачи в дочерние процессы в среде;

hash — запоминает полные имена путей команд, указанных в качестве аргументов, чтобы не искать их при следующем обращении;

kill — посылает сигнал завершения процессу;

pwd — выводит текущий рабочий каталог;

read — читает строку из ввода оболочки и использует ее для присвоения значений указанным переменным;

return — заставляет функцию оболочки выйти с указанным значением;

shift — перемещает позиционные параметры налево;

test — вычисляет условное выражение;

times — выводит имя пользователя и системное время, использованное оболочкой и ее потомками;

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

unset — вызывает уничтожение переменных оболочки;

wait — ждет выхода из дочернего процесса и сообщает выходное состояние;

man — отображает руководства по командам;

cat — считывает файл, переданный как аргумент, и выводит его содержимое по стандартному каналу вывода:

$ cat users.txt

user:student password:123

user:teacher password:321

less — позволяет перемещаться по переданному файлу или куску текста, причём в обоих направлениях;

$? — переменная, которая содержит выходной статус последней запущенной команды:

$ true

$ echo $?

0

$ false

$ echo $?

1

grep — занимается поиском переданной строки в указанном файле;

history — выводит историю командной строки. Обычно её используют вместе с командой grep для поиска конкретной команды. Например, следующий код найдёт все команды, содержащие строку g++:

$ history | grep g++

155 g++ file1.txt

159 g++ file2.txt

ping — тестирует сетевое подключение.