DENNING Peter Virtual Memory paging mémoire virtuelle kernel trashing 1970
This work presents the summary part by part from what I have understood of the Virtual Memory work of Peter DENNING, published in 1970.
Introduction :
From the beginning of the electronic computing, programmers have had to share hierarchically their computers' memories, at least in two levels "the main memory" and the "auxiliary memory". The "storage allocation problem" is about the distribution of which information, where and when.
(...)
In 1961, a shine idea emerged from English workers: although he doesn't own a huge main memory, he is able to work as it was the case! The virtual memory was born. The concept is to more separate the programmer part and the computer system one (storage application...)
[...] An item a can be reduce to its page number p and the word number in this page summarized by the relation a=pz+w. Segmentation and Paging In the aim of gathering the both segmentation and paging advantages, we can combine it into one implementation. This allows to share/borrow programs. The segment s has two piece of information: the page table describing A and a limit b. As w (the word name) gathers two piece of information: the index of the page table p and the frame address containing p'. [...]
[...] There are three kinds of storage fragmentation. External Fragmentation: for nonpaged memories, when anymore hole can be used because of a lake of space. Internal Fragmentation: for paged memories, because of the need to round up the storage requests: we lost some information (last part of last page). Table fragmentation: for both last named memories, when physical locations are already filled with mapping tables. Page Size If z is the page size and s the average segment size; c1 the cost of losing a memory word to table fragmentation and c2 the cost of losing a memory word to internal fragmentation. [...]
[...] Then, (for the both), it must in the smallest I such that s xi (where segment and xi the hole size). Overflow and Compaction According to the Unused Memory Rule, there is a link between placing a segment and amount of unused memory. In order to mitigate against that, there is the “compacting memory”. The principle is to make an only “big” hole (with the several holes) and segments move then around. However, it is advised to waste memory when we consider the significant amounts of time leading by the compaction. [...]
[...] Basic System Hardware The memory is divided in the main memory and the auxiliary memory. The processor(s) have the access to the main memory. Therefore the processed information are hosted in this latter and the others in the auxiliary memory. Definition of Virtual Memory By using the virtual memory, the programmer interacts with a “virtual address” (or “name”) of the “address space” (or “name space” called now and the memory with a “location” (or “memory address”) of the “memory space” (called now M). [...]
[...] This solution means handling two memory-references, what leads a slower processing. This issue may be solved by incorporate a small high speed associative memory into the address translation hardware. Paging This solution means structuring the main memory into equal size blocks of locations, called pages frames. These latter become sites of residence for matching size blocks of virtual addresses, the pages. They are used to link information storage and transfer between the two memories. Let's suppose a page of z words, and M consists of m page frames. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture