VIRTUAL MEMORY SYSTEM WITH HARDWARE TLB AND UNMAPPED SOFTWARE TLB UPDATED FROM MAPPED TASK ADDRESS MAPS USING UNMAPPED KERNEL ADDRESS MAP
Patent №
US 5,835,964
Granted
1998-11-10
Filed 1996
Owner
MICROSOFT CORPORATION
Lab
AI components
1
hardware
Assignment
Recorded
Dataset
AIPD
2023_r1 edition
Application
08639773
A virtual memory system includes a hardware-implemented translation lookaside buffer (HTLB) as well as a software-implemented translation lookaside buffer (VTLB). The VTLB is in the system's unmapped memory. The system further includes a plurality of address maps, corresponding to an operating system kernel and to individual tasks executing within the system. The kernel has an address space which includes both mapped and unmapped memory. The address maps corresponding to the individual tasks are stored in the mapped memory of the kernel's address space. The address map corresponding to the kernel itself, however, is stored in the kernel's unmapped memory. HTLB misses are handled by referring to the VTLB. VTLB misses are handled by referring to an appropriate one of the address maps. The code for handling these misses resides in unmapped memory of the kernel's address space. This arrangement prevents recursive TLB misses, without requiring permanent or "wired" VTLB entries. Because there are no permanent VTLB entries, the VTLB can have a simple and efficient structure, and its size can be bounded. As a further feature, the address maps are associated with both spin locks and mutex locks. A routine which modifies an individual address map first acquires the mutex lock associated with the address map and performs initial examination of the address map. Once the routine is ready to make actual modification, it also acquires the spin lock. By having the two types of locks, the majority of the routine can be preemptible. Only the portion of the routine which actually modifies the address map needs to be non-preemptible.
AI classification
Ownership
MICROSOFT CORPORATION
assignment · 80160263
Assignors
DRAVES, RICHARD P., ODINAK, GILAD
On an employer assignment, the assignors are typically the inventors.