100 ошибок страниц диск что это
Перейти к содержимому

100 ошибок страниц диск что это

  • автор:

Ошибка страницы.

Ошибка страницы – это операция, которая возникает на компьютере с виртуальной памятью, которая позволяет части жесткого диска увеличить физическую память компьютера. Большинство ошибок страницы происходят, когда программа пытается получить доступ к информации, помещенной в файл виртуальной памяти на жёстком диске. Это нормальная функция виртуальной памяти, и компьютер будет реагировать, загружая соответствующую информацию в физическую память. Более серьёзный тип ошибки страницы, связанный со сбоями и ошибками компьютера, может возникать, когда программа ищет информацию в ячейке памяти, которая не существует или защищена. Это может быть вызвано неисправным оборудованием или плохо написанным программным обеспечением.

Современные компьютерные системы делят память на более мелкие куски, известные как страницы, причем каждая страница обращается к определенному адресу. Большинство систем также поддерживают концепцию, известную как виртуальная память, в которую страницы могут быть перемещены из физической памяти произвольного доступа (ОЗУ) компьютера и в файл виртуальной памяти, хранящийся на жестком диске компьютера, и по мере необходимости обратно в оперативную память. Детали этой сложной схемы управления памятью скрыты от программного обеспечения; приложение не имеет способа узнать, загружена ли страница в заданном адресе в ОЗУ или находится в виртуальной памяти. Ошибка страницы возникает, когда программа пытается прочитать или манипулировать частью памяти, которая не загружена в ОЗУ или находится по неожиданному адресу.

Несмотря на зловещее имя, ошибка страницы обычно является нормальным и ожидаемым действием, и большую часть времени пользователь никогда не заметит, что произошла ошибка. Это тип операции, известный как «ловушка», что означает, что инструкции из программы, вызвавшей ошибку, временно перехватываются или захватываются, пока компьютер изучает соответствующий адрес памяти. Если адрес действителен, но в данный момент не загружается в ОЗУ компьютера, информация переносится из файла виртуальной памяти на жесткий диск в физическую память, и программа возобновляет нормальную работу. Это известно как «подкачка», и это характерно для почти каждого персонального компьютера независимо от установленной операционной системы или объема установленной RAM. Но слишком маленькая оперативная память заставляет компьютер постоянно перетасовывать страницы памяти между жестким диском и физической памятью, что ухудшает общую производительность ПК.

Второй возможный результат ошибки страницы возникает, когда бывает обнаружен недопустимый или защищённый запрошенный адрес памяти. Этот тип ошибок, также известный как ошибка сегментации, может быть вызван сбоями модулей памяти, неисправным жёстким диском или не правильным программным обеспечением. В программу, которая вызвала ошибку, отправляется специальный сигнал, что обычно заставляет программу резко прекратить работу. В зависимости от операционной системы наиболее серьезные ошибки страницы могут привести к сбою операционной системы компьютера, в результате чего пользователи получают критическое сообщение о синем экране смерти (BSoD) или как его ещё называют синий экран смерти.

О чем говорят ошибки отсутствия страницы в памяти

Информатика, информационные технологии

В случае вытесняющего алгоритма операционная система в любой момент времени может прервать выполнение текущего потока и переключить процессор на другой поток. В невытесняющих алгоритмах поток, которому предоставлен процессор, только сам решает, когда передать управление операционной системе.

Алгоритмы с квантованием.

Каждому потоку предоставляется квант времени, в течение которого поток может выполняться на процессоре. По истечении кванта операционная система переключает процессор на следующий поток в очереди. Квант обычно равен целому числу интервалов системного таймера1.

Алгоритмы с приоритетами.

Каждому потоку назначается приоритет (priority) – целое число, обозначающее степень привилегированности потока. Операционная система при наличии нескольких готовых к выполнению потоков выбирает из них поток с наибольшим приоритетом.

В Windows реализован смешанный алгоритм планирования – вытесняющий, на основе квантования и приоритетов.

  1. Тип многозадачности для приложения DOS
  2. Гарантии обслуживания
  3. Планирование процессов переднего плана
  4. Назначение файла подкачки
  5. Процессы Р1, Р2, Р3 выделяют 100, 20, 80 Мб памяти. В системе 128Мб ОП. Каков размер занятой памяти в файле подкачки. Какой размер файла подкачки.
  1. Что такое «страничная ошибка»?

Прерывание 14 —Страничная ошибка(#PF): Intel386 …

Генерируется, если страничный механизм активизирован (CR0.PG = 1) и при трансляции линейного адреса в физический возникает одна из следующих ситуаций:

  • элемент таблицы страниц или каталога страниц, используемый при трансляции адреса, имеет нулевой бит присутствия, т.е. нужная таблица страниц или страница не присутствует в физической памяти;
  • процедура не располагает уровнем привилегий, достаточным для доступа к выбранной странице или пытается произвести запись в страницу, защищенную от записи для текущего уровня привилегий.

Обработчик страничной ошибки получает информацию о ее причине из двух источников: кода ошибки, помещаемого в стек, и содержимого регистра CR2, который содержит линейный адрес, вызвавший ошибку. Код страничной ошибки имеет специальный формат (рис. 3.7.).

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

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

  1. Высокая интенсивность ошибок страниц говорит о:

— ненадежности оперативной памяти

Графа «Ошибок отсутствия страницы в памяти/сек.»

В графе «Ошибок отсутствия страницы в памяти/сек.» (Hard Faults/sec) указано среднее за последнюю минуту количество ошибок отсутствия страницы в памяти в секунду. Если процесс пытается использовать больше физической памяти, чем доступно в данный момент времени, система записывает часть данных из памяти на диск — в файл подкачки. Последующее обращение к данным, сохраненным на диск, и называется ошибкой отсутствия страницы в памяти.

О чем говорят ошибки отсутствия страницы в памяти

Теперь, когда вы представляете, какие сведения собраны в таблице «Процессы», давайте посмотрим, как с их помощью следить за распределением памяти. При запуске приложений и работе с файлами диспетчер памяти отслеживает объем рабочего набора для каждого процесса и фиксирует запросы на дополнительные ресурсы памяти. По мере увеличения рабочего набора процесса, диспетчер соотносит эти запросы с потребностями ядра и других процессов. Если доступного адресного пространства недостаточно, диспетчер уменьшает объем рабочего набора, сохраняя данные из памяти на диск.

В дальнейшем при чтении этих данных с диска возникает ошибка отсутствия страницы в памяти. Это вполне нормально, но если ошибки происходят одновременно для разных процессов, системе требуется дополнительное время для чтения данных с диска. Слишком частые ошибки отсутствия страницы в памяти, соответственно, снижают быстродействие системы. Вам наверняка доводилось наблюдать неожиданное замедление работы всех приложений, которое затем также неожиданно прекращалось. Почти наверняка это замедление было связано с активным перераспределением данных между физической памятью и подкачкой.

Отсюда следует вывод: если ошибки отсутствия страницы в памяти для того или иного процесса происходят слишком часто и притом регулярно, компьютеру не хватает физической памяти.

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

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

  1. Как формируется приоритет потока в Windows

В ОС Windows реализовано вытесняющее приоритетное планирование, когда каждому потоку присваивается определенное числовое значение — приоритет, в соответствии с которым ему выделяется процессор. Потоки с одинаковыми приоритетами планируются согласно алгоритму Round Robin (карусель). Важным достоинством системы является возможность вытеснения потоков, работающих в режиме ядра — код исполнительной системы полностью реентерабелен. Не вытесняются лишь потоки, удерживающие спин-блокировку (см. Синхронизация потоков ). Поэтому спин-блокировки используются с большой осторожностью и устанавливаются на минимальное время.

В системе предусмотрено 32 уровня приоритетов. Шестнадцать значений приоритетов (16-31) соответствуют группе приоритетов реального времени, пятнадцать значений (1-15) предназначены для обычных потоков, и значение 0 зарезервировано для системного потока обнуления страниц (см. рис. 6.2).

Рис. 6.2.Приоритеты потоков

Чтобы избавить пользователя от необходимости запоминать числовые значения приоритетов и иметь возможность модифицировать планировщик, разработчики ввели в систему слой абстрагирования приоритетов. Например, класс приоритета для всех потоков конкретного процесса можно задать с помощью набора констант-параметров функции SetPriorityClass, которые могут иметь следующие значения:

  • реального времени ( REALTIME_PRIORITY_CLASS ) — 24
  • высокий ( HIGH_PRIORITY_CLASS ) — 13
  • выше нормы ( ABOVE_NORMAL_PRIORITY_CLASS ) 10
  • нормальный ( NORMAL_PRIORITY_CLASS ) — 8
  • ниже нормы ( BELOW_NORMAL_PRIORITY_CLASS ) — 6
  • и неработающий ( IDLE_PRIORITY_CLASS ) 4

Относительный приоритет потока устанавливается аналогичными параметрами функции SetThreadPriority:

Совокупность из шести классов приоритетов процессов и семи классов приоритетов потоков образует 42 возможные комбинации и позволяет сформировать так называемый базовый приоритет потока

Базовый приоритет процесса и первичного потока по умолчанию равен значению из середины диапазонов приоритетов процессов (24, 13, 10, 8, 6 или 4). Смена приоритета процесса влечет за собой смену приоритетов всех его потоков, при этом их относительные приоритеты остаются без изменений.

Приоритеты с 16 по 31 в действительности приоритетами реального времени не являются, поскольку в рамках поддержки мягкого реального времени, которая реализована в ОС Windows, никаких гарантий относительно сроков выполнения потоков не дается. Это просто более высокие приоритеты, которые зарезервированы для системных потоков и тех потоков, которым такой приоритет дает пользователь с административными правами. Тем не менее, наличие приоритетов реального времени, а также вытесняемость кода ядра, локализация страниц памяти (см. Функционирование менеджера памяти ) и ряд дополнительных возможностей — все это позволяет выполнять в среде ОС Windows приложения мягкого реального времени, например, мультимедийные. Системный поток с нулевым приоритетом занимается обнулением страниц памяти. Обычные пользовательские потоки могут иметь приоритеты от 1 до 15.

Статьи к прочтению:
  • Оделирование в сапр. пакет nastran.
  • Одели случайных и хаотических блужданий.

Пусть говорят — «Вы мне не верили, а я умерла»Выпуск от 11.09.217

Похожие статьи:
  • Размещение памяти с перемещаемыми разделами. Одним из методов борьбы с фрагментацией является перемещение всех занятых участков в сторону старших либо в сторону младших адресов так, чтобы все…
  • Страничное распределение памяти На рис. 10 показана схема страничного распределения памяти. Виртуальное адресное пространство каждого процесса делится на части одинакового,…

Ошибки выделения памяти могут быть вызваны медленным увеличением размера файла страницы

Эта статья содержит обходное решение для ошибок, которые возникают, когда приложения часто выделяют память.

Область действия: Windows 10 — все выпуски
Исходный номер базы знаний: 4055223

Симптомы

В приложениях, которые часто выделяют память, могут возникать случайные ошибки нехватки памяти. Такие ошибки могут привести к другим ошибкам или неожиданному поведению в затронутых приложениях.

Причина

Сбои выделения памяти могут возникать из-за задержек, связанных с увеличением размера файла страницы для поддержки дополнительных требований к памяти в системе. Возможная причина таких сбоев в том, что размер файла страницы настроен как «автоматический». Автоматический размер файла страницы начинается с небольшого файла страницы и при необходимости автоматически увеличивается.

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

Обходной путь

Чтобы обойти эту проблему, вручную настройте размер файла страницы. Для этого выполните следующие действия:

  1. Нажмите клавишу с логотипом Windows+ клавишу Pause/Break, чтобы открыть свойства системы.
  2. Выберите «Дополнительные параметры системы«, а затем выберите «Параметры» в разделе «Производительность» на вкладке «Дополнительно«.
  3. Перейдите на вкладку «Дополнительно «, а затем выберите «Изменить » в разделе «Виртуальная память».
  4. Снимите флажок «Автоматически управлять размером файла подкачки для всех дисков».
  5. Выберите «Пользовательский размер», а затем задайте значения «Начальный размер» и «Максимальный размер» для файла подкачки. Рекомендуется установить начальный размер в 1,5 раза больше объема ОЗУ в системе.
  6. Нажмите кнопку « ОК», чтобы применить параметры, а затем перезапустите систему. Если вы продолжаете получать сообщения об ошибках нехватки памяти, увеличьте начальный размер файла страницы.

Состояние

Корпорация Майкрософт подтвердила, что это проблема в Windows 10.

Дополнительные сведения

При использовании компилятора Microsoft Visual C++ (cl.exe) могут возникать периодические ошибки сборки, как показано ниже.

  • Неустранимая ошибка C1076: ограничение компилятора: достигнут внутренний куч; использование /Zm для указания более высокого ограничения
  • Неустранимая ошибка C1083: не удается opentypefile: «file»: message
  • Неустранимая ошибка C1090: сбой вызова API PDB, код ошибки «code»: «message»
  • Ошибка компилятора C3859: превышен диапазон виртуальной памяти для PCH; Выполните повторную компиляцию с параметром командной строки -ZmXXX или более поздней версии.

Дополнительные сведения об ошибках компилятора Visual C++ и способах их устранения см. в разделе о проблемах и рекомендациях предварительно скомпилированного заголовка (PCH).

Обратная связь

Были ли сведения на этой странице полезными?

Какое допустимое количество ошибок страницы физической памяти?

5d8e53aef3bc8794905904.png

Есть небольшой сервер под управлением Windows Server 2016.
После замены планки памяти наблюдаю в мониторе ресурсов много «ошибок страницы физической памяти»:

Допустимы ли такие значения, или планка битая и лучше её заменить?

  • Вопрос задан более трёх лет назад
  • 17395 просмотров

Комментировать

Решения вопроса 1

Это не имеет никакого отношения к повреждению оперативной памяти.
Это часть механизма свопирования — ошибка означает, что при попытке обратиться к памяти выяснилось, что это участок сброшен из оперативной памяти на диск.

Ответ написан более трёх лет назад

Нравится 6 8 комментариев

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *