- •Вопросы к экзамену по спо
- •Перечислите и охарактеризуйте средства аппаратной поддержки функций ос.
- •Механизм виртуальной памяти и его реализация в процессорах фирмы Интел.
- •Понятие процесса и потока: раскройте и охарактеризуйте.
- •6. Перечислите и охарактеризуйте средства аппаратной поддержки функций ос.
- •7. Механизм виртуальной памяти и его реализация в процессорах фирмы Интел.
- •Страничное распределение
- •Сегментное распределение
- •Свопинг
- •8. Понятие процесса и потока: раскройте и охарактеризуйте.
- •9Двоичное кодирование информации. Представление элементарных типов данных: натуральные числа, целые числа со знаком, числа с плавающей точкой.
- •Странично-сегментное распределение
- •10.Компилятор ассемблер-программ, редактор связей (загрузчик).
- •11.Общая структура машинных команд.
- •12.История развития вт в связи с историей развития системного программного обеспечения.
- •13.Организация ввода-вывода, классификация внешних устройств.
- •14.Константы, метки, условная компиляция.
- •15.Атрибуты сегментов
- •17.Этапы проектирования и выполнения программ.
- •Обработка прерываний. Контекст процесса (потока). Особенности операционных систем реального времени.
Странично-сегментное распределение
Виртуальное пространство процесса делится на сегменты, а каждый сегмент в свою очередь делится на виртуальные страницы, которые нумеруются в пределах сегмента. Оперативная память делится на физические страницы. Загрузка процесса выполняется операционной системой постранично, при этом часть страниц размещается в оперативной памяти, а часть на диске. Для каждого сегмента создается своя таблица страниц, структура которой полностью совпадает со структурой таблицы страниц, используемой при страничном распределении. Для каждого процесса создается таблица сегментов, в которой указываются адреса таблиц страниц для всех сегментов данного процесса. Адрес таблицы сегментов загружается в специальный регистр процессора, когда активизируется соответствующий процесс.
Свопинг
Процесс перемещается между памятью и диском целиком, то есть в течение некоторого времени процесс может полностью отсутствовать в оперативной памяти. Существуют различные алгоритмы выбора процессов на загрузку и выгрузку, а также различные способы выделения оперативной и дисковой памяти загружаемому процессу.
8. Понятие процесса и потока: раскройте и охарактеризуйте.
Процесс – адресное пространство (~рассматривается операционной системой как заявка на потребление всех видов ресурсов, кроме одного-проц.вр.) - выполняемое приложение, обладающее собственной памятью, описателями файлов и другими системными ресурсами. С каждым процессом связано свое адресное пространство. Любой процесс, обращаясь при доступе к ядру, приобретает привилегии ядра, переходит в режим ядра; а после выполнения процесса переходит обратно в пользовательский процесс.
Поток – последовательность команд (~ последовательность/список команд, которые должен выполнять процессор) - код, исполняемый внутри процесса. Процессорное время распределяется операционной системой между потоками.
Внутри процесса существует хотя бы один поток. Процесс может иметь как один поток, так и множество параллельно выполняющихся потоков. Все потоки одного и того же процесса используют одни и те же ресурсы.
Все пространство кода и данных процесса доступно всем его потокам. Несколько потоков могут обращаться к одним и тем же глобальным переменным или функциям.
Потоками управляет операционная система, и у каждого потока есть свой собственный стек.
9Двоичное кодирование информации. Представление элементарных типов данных: натуральные числа, целые числа со знаком, числа с плавающей точкой.
Состояния “установлен” и “сброшен” соотв. 2 цифрам двоичной системы счисления, фундаментальной для ЭВМ. Эти цифры называются битами.Двоичное кодирование – представление данных последовательностью битов.При двоичном кодировании числовой информации степень двойки при каждой двоичной цифре на единицу больше, чем у предшествующей цифры. Пример конструкции двоичного кода: 1012=(1*22)+(0*21)+(1*20)=510.
Таким образом осуществляется представление целых чисел без знака.Отрицательные числа со знакомпредставляются в дополнительном коде – в форме дополнения до двух. Чтобы найти двоичное представление отрицательного числа, надо взять его полжительную форму, проинвертировать ее и добавить к полученному результату 1.
Числами с плавающей точкой называются числа вида x=M*Pq, где М – мантисса,P – порядок,q – основание системы счисления. Нормализованная форма таких чисел:
M – дробное,|M| < 1.
Q – фиксировано.
P – целое число со знаком.
В машине в двоичных кодах хранится M и P. Порядок, как правило,выравнивается, т.е. приводится к большему по модулю порядку, путем сдвига мантиссы вправо с меньшим порядком на кол-во разрядов, равное(Pmax-Pmin)log2Q.
Правила арифметических и логических операций с элементарными типами данных.
Свойства точности вычислений при работе с плавающей точкой. Приемы программирования, обеспеч. необходимую точность вычислений.
При работе с плавающими числами следует иметь в виду, что результат не полностью соответствует арифметике действительных чисел. Диапазон представления чисел: -1*Qp<x<1*Qp. Для этих чисел понятие абсолютной точности заменяется на понятие относительная точность – это минимальное число x, при которомR*(1+x) будет иметь другой код, чем числоR. Потеря точности связана с ситуацией поглощения меньших операндов большими, которая в свою очередь связана с фиксированным размером мантиссы. Способ увеличения точности – увеличение размера мантиссы (числа одинарной, двойной, повышенной точности в языках высокого уровня). При программировании операций с плавающей точкой многих проблем можно избежать, если правильно подобрать необходимые программисту типы данных в зависимости от размерности и точности предполагаемо обрабатываемых вещественных чисел. Некоторые ситуации приводят к ошибкам обработки таких чисел:
а) Поглощение меньших операндов большими.
б) Ситуация потери точности (lost precision). Данный эффект проявляется, когда вычитаются 2 почти одинаковых числа.
в) Ситуация переполнения. В результате операции порядок превышает максимально допустимое значение.
г) Ситуация обратная переполнению (underflow) – если порядок становится меньше минимального значения.
д) Потеря значимости – если мантисса стала равна нулю при ненулевом порядке.
Представление нечисловой информации. Текстовые данные, символьные коды ASCII,EBSDIC, UNICODE. Особенности кодирования русского алфавита.
Любой текст представляет собой послдовательность литер 0..9 A..Z a..z А..Я а..я. Набор литер весьма широк за счет наличия национальных языков. Первые машины имели алфавит только из цифр и латинских букв. Эти литеры образовали набор символов ASCII, EBSDIC. В этих кодировках общее количество символов не превышает 128 (7 бит).
При представлении в памяти текст имеет вид последовательности байтов.
Способы представления текста
Фиксированная длина - |_|_|_|_|_|_|_|.
ASCIIZ - |_|_|_|_|_|_|0|. Конец такой строки обозначает зарезервированный символ (не печатаемый). Получила широкое распространение благодаря языкуC.
Variable Lenght - |x|_|_|_|_|_|. Строка содержит длину и последовательность байтов этой длины. Распространено в языкеPASCAL.
Для представления национальных языков, в частности русского, 128 символов в общем случае недостаточно. Здесь используется:
Расширение ASCII – испольование 8 бита, теперь можно кодировать 256 символов;
UNICODE – использование 7 битов, но более чем 1 символа кодировки для представления большего количества литер (например для совместимости с сетями, отсекающими 8-й бит при передаче).
В настоящее время почти повсеместно используется 8-битовое кодирование символов. Кодовая таблица – графическое представление символов, по которым можно определить код. Проблемы при представлении русского алфавита - а) необходимость сортировки по кодам; б) при этом надо оставить на старых местах символы рисования рамок и заполнения (псевдографики) для совместимости с иностранными программами. Русская кодировка –основная ГОСТ– имела расположение символов по алфавиту, но в ней были смещены символы псевдографики. В настоящее время исп.альтернативная кодировка ГОСТ– в ней псевдографика оставлена на старом месте, но малые буквы русского алфавита разорваны (160-175, 224-239, 240-241). Это немного затрудняет сортировку – единственный недостаток. Кроме того, есть и другие кириллические кодировки –MIC, КОИ-8, ISO-8859, т.п.
