Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.02.14;
Скачать: CL | DM;

Вниз

Ошибки страницы   Найти похожие ветки 

 
alextim   (2008-12-10 21:04) [0]

Всем добрый день!
Мой код работает с файлами данных, смапированнными в страничной памяти - постоянно пишет-читает. Вроде бы все работает довольно стабильно. Недавно в Task Manager добавил колонку Ошибки страницы и обнаружил, что считчик ошибок за полчаса работы зашкаливает за десятки и сотни миллионов (!!!) и зависит от объема записанных/прочитанных данных.
Что это за ошибки такие? Как они влияют на работу системы и на ее стабильность? Нужно и их как-то избегать при написании кода? или может быть еще есть что-то еще серьезное, что я не спросил?...


 
Сергей М. ©   (2008-12-11 08:37) [1]


> Что это за ошибки такие?


Это не баг, а фича

Тебя же не удивляет, что адресное пространство каждого процесса в Win32 равно 4 Гб, в то время как объем ОЗУ равен, скажем, 0.5 Гб, и при этом система нормально функционирует ?


 
Skyle ©   (2008-12-11 08:45) [2]

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


 
Сергей М. ©   (2008-12-11 09:08) [3]


> alextim


Ликбез:
http://www.codenet.ru/progr/os/RAM/RAM-2.php


 
alextim   (2008-12-11 09:43) [4]

>Сергей М. ©   (11.12.08 08:37) [1]
>Это не баг, а фича
>Тебя же не удивляет, что адресное пространство каждого процесса в Win32 равно 4 Гб, в то время как объем ОЗУ равен, скажем, 0.5 Гб, и при этом система нормально функционирует ?

Мой вопрос как раз в том, насколько эта ошибка является ошибкой в классическом понимании, т.е. приводящей к каким-то отказам? Если не трудно, причтите внимательнее вопрос. Я здесь не прошу лекцию читать об устройстве памяти Windows...

>Skyle ©   (11.12.08 08:45) [2]
>Эти ошибки означают, что страница памяти, к которой идёт обращение, в данный момент не готова общаться, например находится в свопе.

Что значит "страница не готова общаться", если я принудительно не сбрасываю ее на диск, никаких исключених по ходу выполнения не возникает и результат работы кода именно тот, что мне был нужен?


 
Skyle ©   (2008-12-11 10:05) [5]

Эта ошибка не является
> ошибкой в классическом понимании, т.е. приводящей к каким-
> то отказам


 
Сергей М. ©   (2008-12-11 10:19) [6]


> насколько эта ошибка является ошибкой в классическом понимании


Считай что к классике прикладного программирования эта ошибка не имеет ни малейшего отношения.


> Что значит "страница не готова общаться"


Это значит, что страница вирт.памяти, к которой осуществляется попытка обращения, не отображена на станицу физ.памяти.


 
alextim   (2008-12-11 14:43) [7]

> Это значит, что страница вирт.памяти, к которой осуществляется попытка обращения, не отображена на станицу физ.памяти.

Я так понимаю, что это стандартная ситуация для любого не сильно активного процесса. Допустим я запустил Фотошоп, открыл там несколько изображений и свернул на некоторое время. ОС должна слить часть памяти, занимаемой этим роцессом в своп с течением времени, а затем, при активации окна заново переместить ее в оперативную память, а страницы другого процесса - наоборот, слить на диск. Так? И что в этом криминального? Или это не тот случай?...


 
alextim   (2008-12-11 14:44) [8]

В этом случае у процесса фотошоп тоже будет увеличиваться счетчик ошибок страницы?


 
Сергей М. ©   (2008-12-11 15:49) [9]


> Так?


Ну в первом приближении так.


> Или это не тот случай?


Не тот, но смысл тот же.


> что в этом криминального?


Ничего. А причем здесь криминал ?



Страницы: 1 вся ветка

Текущий архив: 2010.02.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.014 c
2-1260718467
Imhotep
2009-12-13 18:34
2010.02.14
Вывод цифр на окно "Label" или "Memo".


15-1260119974
TUser
2009-12-06 20:19
2010.02.14
Непятничная задача


15-1260394794
kyn66
2009-12-10 00:39
2010.02.14
Avast тормозит загрузку таблиц


2-1260967410
JohnKorsh
2009-12-16 15:43
2010.02.14
Можно ли в Delphi 7 работать с двумя проектами одновременно?


2-1260715573
Нагуглить_не_смог
2009-12-13 17:46
2010.02.14
UTF-8 -> ANSI