Одной из главных функций ОС является управление всеми устройствами ввода-вывода компьютера. ОС должна передавать устройствам команды, перехватывать прерывания и обрабатывать ошибки; она также должна обеспечивать интерфейс
Публикации рубрики - Программирование. Страница: 646
На этой странице собрано около (~) 13675 публикаций, конспектов, лекций и других учебных материалов по направлению: Программирование. Для удобства навигации можете воспользоваться навигацией внизу страницы.
данный метод представляет собой комбинацию страничного и сегментного распределения памяти и, вследствие этого, сочетает в себе достоинства обоих подходов. Виртуальное пространство процесса делится на сегменты, а каждый
Все алгоритмы управления памятью могут быть разделены на два класса: алгоритмы, которые используют перемещение сегментов процессов между оперативной памятью и диском, и алгоритмы, в которых внешняя память не используется.
Гибридное ядро. Это модифицированные микроядра, позволяющие для ускорения работы запускать несущественные части в пространстве ядра. В большинстве случаев современные ОС используют различные комбинации этих подходов.
1) Прием от пользов-ля заданий или команд, сформулированных на соответствующем языке и их обработка. Команда связана c запуском прог и операциями над файлами. 3) Распредел-е памяти. В больш-ве совр. систем организована вирт. память.
Операционные системы. Определение. НазначениеОс – набор прог, обеспечиващих возм-ть использов-я компа. Ос – набор прог, которые распределяют ресурсы процессам. Ос – комплекс взаимосвязанных прог, кот-е действуют как интерфейс
Named Pipe File System является виртуальной файловой системой, которая управляет каналами named pipes. · Каналы named pipes относятся к классу файловых объектов (API Win32). · RPC реализован как надстройка над NPFS; · Канал представляет собой виртуальное
Анонимные каналы· Анонимные каналы не имеют имен. · Не пригодны для обмена через сеть. · Главная цель – служить каналом между родительским и дочерним процессом или между дочерними процессами. · Односторонний обмен. · Не возможен
BOOL SetWaitableTimer( HANDLE hTimer, const LARGE_INTEGER *pDueTime, LONG lPeriod, LPTIMERAPCROUTINE pfnCompletionRoutine, LPVOID pvArgToCompletionRoutine, BOOI fResume); BOOL CancelWaitableTimer (HANDLE hTimer); Эта функция принимает несколько параметров, в которых легко запутаться. Очевидно, что hTimer определяет нужный
Синхронизация потоков с использованием объектов ядра Windows 2000 Простейшей формой связи потоков является синхронизация (synchronization). Синхронизация означает способность потока добровольно приостанавливать свое исполнение и
Рассмотрим использование семафоров на классическом примере взаимодействия двух выполняющихся в режиме мультипрограммирования потоков, один из которых пишет данные в буферный пул, а другой считывает их из буферного пула. Пусть
СемафорыДийкстра (Dijkstra) предложил использовать переменные, которые могут принимать целые неотрицательные значения. Такие переменные, используемые для синхронизации вычислительных процессов, получили название семафоров.
Простая блокировка OpenMP Рекурсивная блокировка OpenMP Win32-функция omp_lock_t omp_nest_lock_t CRITICAL_SECTION omp_init_lock omp_init_nest_lock InitializeCriticalSection omp_destroy_lock omp_destroy_nest_lock DeleteCriticalSection omp_set_lock omp_set_nest_lock EnterCriticalSection omp_unset_lock omp_unset_nest_lock
Самая важная и распространенная директива - parallel. Она создает параллельный регион для следующего за ней структурированного блока, например: #pragma omp parallel раздел]...] структурированный блок Пример: pragma omp parallel { printf("Hello World\n"); }
Использованием технологии OpenMP, блокировки и синхронизация потоков в OpenMP .Атомарные операции и lockless программирование.Lockless программирование – разработка неблокирующих многопоточных приложений. Отказ от использования
VOID Sleep ( DWORD dwMilliseconds ); Эта функция приостанавливает поток па dwMilliseconds миллисекунд. Отметим несколько важных моментов, связанных с функцией Sleep. Вызывая Sleep, поток добровольно отказывается от остатка выделенного ему кванта времени.
64-битные процессы используют 64-битные указатели, так что их теоретическое максимальное ВАП равно 16 экзабайтам (2 в 64-ой степени). Однако, Windows не делит ВАП равномерно между активными процессами и системой, а вместо этого
Кучи (heaps) – это динамически распределяемые области данных. При порождении процесса ему предоставляется куча размером 1 Мбайт по умолчанию. Ее размер может изменяться параметром /HEAP при построении исполняемого модуля. Функции
Работа приложений с виртуальной памятью: Резервирование и выделение памяти производится блоками адресов. Начальный адрес блока должен быть выровнен на границу 64K (округляется вниз), а размер кратен размеру страницы (округляется