#memory #memory-management #operating-system
#память #управление памятью #операционная система
Вопрос:
Питер Б. Гэлвин говорит, что основным фактором, влияющим на это решение, является местоположение вектора прерывания. Поскольку вектор прерывания обычно находится в области нехватки памяти, программисты обычно также помещают операционную систему в область нехватки памяти. Я действительно не понимаю, почему операционная система должна быть рядом с вектором прерывания.
Комментарии:
1. Какая операционная система? Я, по крайней мере, понятия не имею, о чем вы спрашиваете. Это похоже на утверждение, а не на вопрос.
2. Аргумент звучит странно. Я бы ожидал, что режимы адресации памяти процессора в целом будут играть более важную роль в определении того, где находятся ОС и программы.
Ответ №1:
Звучит так, как будто вы находитесь в разгаре учебника BS. Для начала, вы говорите только о частях операционной системы, которые имеют физическое расположение. Остальная часть ядра будет находиться в виртуальных / логических расположениях.
Вектор прерывания будет частью ядра, которая была в физической памяти. В большинстве систем вы можете поместить вектор прерывания в любое место памяти.
Вектор прерывания является частью операционной системы. Имело бы смысл выделить физическую память для операционной системы в непрерывном блоке (игнорируя области физической памяти, используемые устройствами). Таким образом, вектор прерывания, вероятно, находится в том же блоке зарезервированной физической памяти, который использует остальная часть операционной системы. Вектор прерывания МОЖЕТ быть единственным и отделенным от остальной памяти, используемой операционной системой, но проще сделать все это одним.
Итак, вы пишете свою операционную систему. Куда вы собираетесь поместить этот блок зарезервированной памяти?
Интуитивно, люди собираются выбрать либо верхний, либо нижний уровень физической памяти.
Комментарии:
1. Ну и что, что вы не поместили ОС рядом с вектором прерывания? Будут ли у этого какие-либо недостатки?