An apparatus and method provide simultaneous local and global addressing capabilities in a computer system. A global address space is defined that may be accessed by all processes. In addition, each process has a local address space that is local (and therefore available) only to that process. An address space processor is implemented in software to perform system functions that distinguish between local addresses and global addresses. In the preferred embodiments, the local address space has a size that is a multiple of the size of a segment of global address space. When the hardware indicates a page fault, the address space processor determines whether the address being translated is a local address or a global address. If the address is a local address, the address space processor uses a local directory to process the page fault. If the address is a global address, the address space processor uses a global directory to process the page fault. When the hardware indicates an addressing error because a computed address crosses a global segment boundary, the address space processor determines whether the address is a local address or a global address. If the address is a global address, the address space processor indicates an addressing error. If the address is a local address, the address space processor determines whether the address is within the process' local address space, and indicates an addressing error if the address is outside the process' local address space. Instructions are allowed to operate on both local and global addresses because the address space processor handles either type of address whenever software assistance is required, such as for servicing a page fault or checking a segment boundary crossing. In addition, the address space processor dynamically checks the addressing compatibility of called code before passing control to the called code.

Een apparaat en een methode verstrekken gelijktijdige lokale en globale het richten mogelijkheden in een computersysteem. Een globale adresruimte wordt bepaald die door alle processen kan worden betreden. Bovendien heeft elk proces een lokale adresruimte die (en daarom beschikbaar) slechts aan dat proces lokaal is. Een bewerker van de adresruimte wordt uitgevoerd in software om systeemfuncties uit te oefenen die tussen lokale adressen en globale adressen onderscheid maken. In de aangewezen belichamingen, heeft de lokale adresruimte een grootte die een veelvoud van de grootte van een segment van globale adresruimte is. Wanneer de hardware op een paginafout wijst, bepaalt de bewerker van de adresruimte of het adres dat een lokaal adres of een globaal adres is wordt vertaald. Als het adres een lokaal adres is, gebruikt de bewerker van de adresruimte een lokale folder om de paginafout te verwerken. Als het adres een globaal adres is, gebruikt de bewerker van de adresruimte een globale folder om de paginafout te verwerken. Wanneer de hardware op een het richten fout wijst omdat een gegevens verwerkt adres een globale segmentgrens kruist, bepaalt de bewerker van de adresruimte of het adres een lokaal adres of een globaal adres is. Als het adres een globaal adres is, wijst de bewerker van de adresruimte op een het richten fout. Als het adres een lokaal adres is, bepaalt de bewerker van de adresruimte of het adres binnen de lokale het adresruimte van de processen is, en wijst op een het richten fout als het adres buiten de lokale het adresruimte van de processen is. De instructies worden toegestaan om op zowel lokale als globale adressen te werken omdat de bewerker van de adresruimte of type van adres wanneer softwarehulp wordt vereist, zoals voor het onderhouden van een paginafout of het controleren van een segmentgrens kruising behandelt. Bovendien de bewerker van de adresruimte dynamisch de het richten verenigbaarheid van geroepen code alvorens controle tot de geroepen code controleert over te gaan.

 
Web www.patentalert.com

< WebTx gateway preprocessing hook

< Structural regularity extraction and floorplanning in datapath circuits using vectors

> Providing an integrated service assurance environment for a network

> Endian-neutral loader for interpretive environment

~ 00074