Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Экзамен / Answers (1-20).docx
Скачиваний:
242
Добавлен:
15.06.2014
Размер:
54.64 Кб
Скачать

1. Понятие операционной системы (ос), ее отношение к аппаратному и программному обеспечению

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

2. Состав и основные функции ос

Основные фукнции:

1) обслуживание информации, хранимой в компьютере;

2) программное управление устройствами компьютера;

3) обеспечение простого диалога компонентов ОС с пользователем или прикладной программой;

4) обеспечение эффективного использования системы путем задействования общих ресурсов или одновременного выполнения нескольких прикладных программ.

Состав:

3. Классификация ос

По кол-ву пользователей

По кол-ву задач

По кол-ву процессоров

По назначению

однопользовательские

многопользовательские

многозадачные

однозадачные

однопроцессорные

много процессорные

специализированные

универсальные

До недавнего времени ОС по типу используемого в них интерфейса с пользователем разделяли на текстовые и графические. К настоящему времени все современные ОС включают графический интерфейс либо как основной (в системах фирмы Microsoft), либо как дополнительную интерфейсную оболочку (в системах Unix).

4. Понятие дескрипторов и хэндлов

File Control Block (FCB) – это учётная информация для управления операционной системой, аналогия человеческого паспорта. Управляющие блоки размещаются в служебной области операционной системы, причем, как правило, в виде таблицы, и для доступа к ним используется номер строк такой таблицы. Этот номер строк таблицы управляющих блоков и называют handle.

Иным наименованием для хэндла, использовавшимся как раз в Unix, служит слово дескриптор.

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

5. Ввод и вывод в стандартные файлы

В Unix для этих целей предназначены универсальные системные функции с прототипами

unsigned int read(int handle, void* buffer, unsigned int len)

unsigned int write(int handle, void* buffer, unsigned int len)

handle – хэндл файла,

buffer - адрес буфера для чтения или записи данных

len – запрашивае­мое для чтения или задаваемое для записи число байтов.

Функции возвращают число байтов, которые им удалось передать при вводе или выводе. Это число может не совпадать с запрошенным, если ввод осуществляется с клавиатуры и завершается символом Enter.

В операционных системах клонов Windows использование стандартных файлов для программиста усложняется за счёт того что в данной системе нет фиксированных значений хэндлов. Их необходимо запрашивать следующей функцией:

HANDLE GetStdHandle(DWORD nStdHandle)

После значения хэндлов можно использовать в следующих функциях:

BOOL WINAPI ReadFile(HANDLE hFile, void* buffer, DWORD len, DWORD *pactualen, OVERLAPPED *pOverlapped);

BOOL WINAPI WriteFile(HANDLE hFile, void* buffer, DWORD len, DWORD *pactualen, OVERLAPPED *pOverlapped),

Ряд функций вывода языка Си используют так называемый буферизованный вывод. К этим функциям относятся все те программные функции, которые используют для обозначения файлов указатели типа FILE*. (printf() и fprintf()). Для их использования нужно явно очищать внутренний буфер следующей функцией:

fflush(stdout)

Соседние файлы в папке Экзамен