페이지 테이블을 사용할 때 메모리 공간 낭비가 심해지는데, 모든 프로세스의 모든 페이지에 대한 페이지 테이블 항목을 다 구성해야 하기 때문이다. 이 문제를 해결하기 위해 역페이지 테이블(inverted page table) 기법이 사용된다.
역페이지 테이블 기법은 물리적 메모리의 페이지 프레임 하나당 페이지 테이블에 하나씩의 항목을 두는 방식이다. 논리적 주소에 대해 페이지 테이블을 만드는 것이 아닌 물리적 주소에 대해 페이지 테이블을 만드는 것이다.
페이지 테이블의 각 항목은 어느 프로세스(PID)의 어느 페이지(P, 논리적 페이지 번호)가 이 프레임에 저장되었는지의 정보를 보관한다.
공유 코드는 메모리 공간의 효율적 사용을 위해 여러 프로세스에 의해 공통으로 사용될 수 있도록 작성된 코드를 말한다.
공유 페이지는 공유 코드를 담고 있는 페이지를 말한다. 여러 프로세스에 의해 공유되는 페이지이므로 물리적 메모리에 하나만 적재되어 메모리를 좀 더 효율적으로 사용할 수 있게 한다.
공유 페이지는 그 페이지를 공유하는 모든 프로세스의 주소 공간에서 동일한 페이지 번호를 가져야 한다.
이에 반해서 사유 페이지는 프로세스들이 공유하지 않고 프로세스 별로 독자적으로 갖고 있는 페이지를 말하며 프로세스의 논리적 주소 공간 중 어디든지 있을 수 있다.
페이지 테이블의 각 항목에는 주소 변환 정보말고도 메모리 보호를 위한 보호 비트(protection bit)와 유효-무효 비트(valid-invalid bit)를 두고 있다.