Свобода кода

блог программиста

Поиск по блогу

Кольца защиты

19 Март 2010 . Alex пишет -

- Обычным программам запрещается выполнять некоторые команды;
- Обычным программам должны быть недоступны определенные регионы памяти, доступные операционной системе;
- Получение привилегий операционной системы невозможно кроме как входом в нее в разрешенной точке входа.
(далее…)

Рубрики: Управление памятью

Контроль буферных кэшей

19 Март 2010 . Alex пишет -

В процессе построения ядра системы под дисковый буфер выделяется определенное пространство, размер которого зависит от общего объема памяти и требований к производительности дисковой подсистемы. Буфер состоит из двух частей, собственно буфера, где хранятся данные считываемые или записываемые на диск и заголовка, содержащего информацию о файлах с которыми производится операция ввода-вывода, последний состоит из номера внешнего устройства и номера блока данных на диске. Не оптимально выбранный размер буфера может существенно влиять на производительность подсистемы дисковой памяти. (далее…)

Рубрики: Управление памятью

Подкачка

19 Март 2010 . Alex пишет -

Часто случается, что в системе нет резерва свободной памяти. Что бы удовлетворить потребности одного из процессов в памяти, приходится временно удалять из памяти редко используемый объект - другой процесс или его часть, перенести его на уровень внешней памяти, называемый устройством подкачки. В качестве устройства подкачки используется секция диска с именем /swap.
(далее…)

Рубрики: Управление памятью

Буферизация

19 Март 2010 . Alex пишет -

Помимо пользовательских и системных процессов за “обладание” физической памятью борется подсистема буферизации работы с внешними накопителями. Поскольку быстродействие процессора всегда много больше чем у подсистемы ввода-вывода, то для согласования скоростей используется буферизация. При записи в накопитель, применяется отложенная запись - прежде чем попасть на внешний носитель информация помещается в пул, состоящий из набора буферов, размещенных в оперативной памяти, каждый размером в один блок. (далее…)

Рубрики: Управление памятью

Адресное пространство

19 Март 2010 . Alex пишет -

Адресное пространство вычислительной системы делится на две части: занимаемую процессами пользователя и закрепленную за ядром операционной системы. Пользовательский процесс может перейти в системный режим - начать исполнять инструкции или работать с внутренними глобальными таблицами, расположенными в пространстве ядра, только в результате выполнения системного вызова. При этом обязательно проверяются полномочия процесса на выполнение тех или иных действий.

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

Рубрики: Управление памятью

Динамические разделяемые библиотеки

19 Март 2010 . Alex пишет -

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

Рубрики: Управление памятью

Разделяемые библиотеки

18 Март 2010 . Alex пишет -

Частным случает совместно используемых процедур являются библиотеки стандартных функций. Существуют статические и динамически компонуемые, разделяемые библиотеки. Представим себе две программы, каждая из которых содержит обращение к библиотечной функции printf(). Если обе программы компилируются с указанием опции статической компоновки, то текст библиотечной функции включается в тело каждой из программ. (далее…)

Рубрики: Управление памятью

Разделение процедур

18 Март 2010 . Alex пишет -

В мультипрограммной среде желательно, что бы несколько пользователей могли совместно исполнять одну программу, библиотечную функцию или системный процесс. Дело в том, что часто сразу несколько пользователей одновременно используют одну программу, например, shell или редактор текстов, обращаются к одной библиотечной функции. Если не использовать разделяемых процессов, то в память придется загрузить сразу несколько копий одной программы, а это потребует увеличения ресурсов системной памяти. Напротив, при разделении ресурсов, в памяти достаточно иметь только одну копию программы, что даст значительную экономию оперативной памяти.
(далее…)

Рубрики: Управление памятью

Устройство подкачки

18 Март 2010 . Alex пишет -

Мы уже использовали термин устройство подкачки, но еще не знаем что это такое. Устройство подкачки располагается во внешней памяти (обычно это секция диска), оптимизированная для размещения отдельных страниц или образа файла. Чтение-запись информации на устройстве подкачки идет в обход дисковых буферов. Устройство подкачки создается при конфигурации системы, тогда же задается его размер. Рекомендуется, что бы емкость устройства подкачки в 2 - 2,5 раза превышать размер оперативной памяти. Если компьютер модернизируется путем увеличения объема памяти и добавлением дисков, то устройство подкачки следует соответствующим образом изменить. Однако единожды сконфигурированную секцию диска невозможно изменить не трогая всего диска. Если бы устройство подкачки состояло из одной секции, то процедура изменения его характеристик на работающей системе обязательно сводилась бы к изменению всего диска, что трудоемко. К счастью в UNIX 5.4 сделано важное дополнение к предыдущим версиям - устройство подкачки можно разбить на несколько областей, каждая из которых располагается на различных дисках. Теперь можно увеличить размер области подкачки динамически на работающей машине, создав дополнительную область на новом диске. Желающие изучить конфигурацию устройства подкачки на своем компьютере, а затем возможно и сконфигурировать ее заново должны воспользоваться командой swap, которая дает возможность добавить, удалить и следить за областями подкачки. Вы конечно не забыли, что подобные действия требуют полномочий Суперпользователя.

Рубрики: Управление памятью

Какую подкачку использовать

18 Март 2010 . Alex пишет -

Хотя страничная подкачка обладает большей гибкостью, чем файловая, она может привести к образованию узких мест в работе системы. Представим себе ситуацию, когда сумма страниц к которым активно обращается процессы превышает объем оперативной памяти компьютера. Приходится многократно переписывать информацию на устройство подкачки и обратно, что приводит к потерям производительности. (далее…)

Рубрики: Управление памятью
стр 1 из 212»