Операционные системы. Макушкина Л.А - 41 стр.

UptoLike

41
предсказанием - не используется, 3. Вытесняющий SJF - полное
время выполнения процесса, 4. Приоритетное планирование с
абсолютным приоритетом - номер приоритета, 5. Многоуровневая
очередь (2 уровня: высокий приоритет Round robin, низкий
приоритет FCFS) - номер приоритета, функция должна вернуть
номер для созданного процесса;
3.7
DLLFUNC void osDeleteProcess(int nProcess) - удалить процесс с
указанным номером
4. Функции ОС, управление памятью - прототипы функций, которые
необходимо реализовать согласно варианту:
4.1
DLLFUNC void osMakeAddressSpace(int nProcess, int bBlockCount,
int * lpBlockLength) - создать адресное пространство для
указанного процесса, nProcess - номер процесса для которого
создается адресное пространство, bBlockCount - количество блоков
адресного пространства, для страничного распределения
bBlockCount всегда равен 1, для сегментного и сегментно-
страничного распределения - количество сегментов, lpBlockLength
- длины блоков аресного пространства;
enum MEMORY_OPERATION { MemoryRead = 0, MemoryWrite =
1};
4.2
DLLFUNC int osTranslateAddress(int nProcess, int nVirtualAdress, int
nOperationType) - выполнить трансляцию адреса, nProcess - номер
процесса, в адресном пространстве которого выполняется
преобразование, nVirtualAdress - виртуальный адрес, по которому
пытаемся произвести обращение, nOperationType - выполняемая
операция при доступе к ячейке памяти (MemoryRead или
MemoryWrite), функция должна вернуть номер физ. ячейки или -1
если необходимая часть адресного пространства отсутствует в
оперативной памяти;
4.3
DLLFUNC int osTranslateAddress2(int nProcess, int nSegment, int
nOffset, int nOperationType) - выполнить трансляцию адреса,
nProcess - номер процесса, в адресном пространстве которого
выполняется преобразование, nSegment - номер сегмента, к
которому пытаемся произвести обращение, nOffset - смещение в
сегменте, nOperationType - выполняемая операция при доступе к
ячейке памяти (MemoryRead или MemoryWrite), функция должна
вернуть номер физ. ячейки или -1 если необходимая часть
адресного пространства отсутствует в оперативной памяти;
5. Функции ОС, управление вводом/выводом - прототипы функций, которые
необходимо реализовать согласно варианту:
          предсказанием - не используется, 3. Вытесняющий SJF - полное
          время выполнения процесса, 4. Приоритетное планирование с
          абсолютным приоритетом - номер приоритета, 5. Многоуровневая
          очередь (2 уровня: высокий приоритет – Round robin, низкий
          приоритет – FCFS) - номер приоритета, функция должна вернуть
          номер для созданного процесса;
      3.7 DLLFUNC void osDeleteProcess(int nProcess) - удалить процесс с
          указанным номером
4. Функции ОС, управление памятью - прототипы функций, которые
   необходимо реализовать согласно варианту:
      4.1 DLLFUNC void osMakeAddressSpace(int nProcess, int bBlockCount,
          int * lpBlockLength) - создать адресное пространство для
          указанного процесса, nProcess - номер процесса для которого
          создается адресное пространство, bBlockCount - количество блоков
          адресного пространства, для страничного распределения
          bBlockCount всегда равен 1, для сегментного и сегментно-
          страничного распределения - количество сегментов, lpBlockLength
          - длины блоков аресного пространства;

         enum MEMORY_OPERATION { MemoryRead = 0, MemoryWrite =
         1};

      4.2 DLLFUNC int osTranslateAddress(int nProcess, int nVirtualAdress, int
          nOperationType) - выполнить трансляцию адреса, nProcess - номер
          процесса, в адресном пространстве которого выполняется
          преобразование, nVirtualAdress - виртуальный адрес, по которому
          пытаемся произвести обращение, nOperationType - выполняемая
          операция при доступе к ячейке памяти (MemoryRead или
          MemoryWrite), функция должна вернуть номер физ. ячейки или -1
          если необходимая часть адресного пространства отсутствует в
          оперативной памяти;
      4.3 DLLFUNC int osTranslateAddress2(int nProcess, int nSegment, int
          nOffset, int nOperationType) - выполнить трансляцию адреса,
          nProcess - номер процесса, в адресном пространстве которого
          выполняется преобразование, nSegment - номер сегмента, к
          которому пытаемся произвести обращение, nOffset - смещение в
          сегменте, nOperationType - выполняемая операция при доступе к
          ячейке памяти (MemoryRead или MemoryWrite), функция должна
          вернуть номер физ. ячейки или -1 если необходимая часть
          адресного пространства отсутствует в оперативной памяти;

5. Функции ОС, управление вводом/выводом - прототипы функций, которые
   необходимо реализовать согласно варианту:

                                   41