![]()  | 
	
 
  | 
| 
		 
			 
			#12  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 GDT - это таблица дескрипторов, в ней можно делать дескрипторы с любой базой и любым размером. Никто не запрещает, имея 32 мегабайта оперативки, сделать дескриптор с пределом в 4 гигабайта. И наоборот тоже можно.  
		
	
		
		
		
		
			
		
		
		
		
		
			Своп вообще относится к технологии виртуальной памяти и фактически заключается в выгрузке из памяти наименее используемых страниц. Например, на компе стоит 512 мегов оперативки. Для каждого процесса существует 4 гига виртуальной памяти. Но процесс же не использует их все одновременно. Вот те страницы (обычно по 4КБ), которые используются редко, выгружаются на диск, а те, которые не используются вовсе - вообще не существуют ни в оперативке, ни на диске (пока их не выделят чем-то типа VirtualAlloc). А объем физической оперативки вычисляется либо варварским способом (пишем в разные места памяти число, считываем оттуда же, если совпало - значит оперативка в этом месте есть  ), либо одним из нормальных способов.Количество GDT всегда равно одному.   Количество дескрипторов в ней может меняться. Можно описать всю память одним дескриптором, а можно описывать по частям, причем формально никто не обязывает описывать всю память (правда в этом нет смысла). А если говорить про x64 - так там сегментные дескрипторы имеют только флаги, все остальные поля игнорируются и считается, что начало сегмента в нуле и конец в максимальном поддерживаемом процессором адресе.Последний раз редактировалось Bargest, 16.12.2011 в 17:47.  |