1.3 Virtual Memory

     

Although some HP servers offer the prospect of very large memory configurations, most servers still operate within the confines of less physical memory than the applications demand. Like most other UNIX flavors, HP-UX employs a virtual memory system that is underpinned by the concept of paging and swapping. In practice, the idea of swapping a process out of memory is too expensive as far as the IO subsystem is concerned . Nowadays most virtual memory systems are paging systems, even though we still talk about swap space. HP-UX utilizes an intelligent and self-regulating paging daemon called vhand that monitors the use of main memory and adjusts its own workload based on memory utilization. An ever-present problem with the memory subsystem is the problem with processes thinking they exist in a world where their address-space is either 32- or 64-bits in size . Processes use a concept known as a Virtual Address Space to map objects, such as code and data into memory. The actual mapping of a Virtual Address to a Physical Address is accomplished by special hardware components including the Translation Lookaside Buffer (TLB) and a special hashed table in the kernel that maps Virtual Addresses to Physical Addresses. This table is colloquially known as the Page Directory. The Virtual Memory system is a demand-paged virtual memory system whereby pages are brought into memory whenever a process references a page that isn't located in memory. The translation of pages of memory (a page is 4KB in size) can be eased somewhat if the processor is used in conjunction with the kernel and the administrator understands the nature of an application. A concept known as Variable Page Sizes or Performance Optimized Page Sizes can be implemented where we are using a PA-RISC 2.0 processor and the applications lend themselves to a large memory footprint. POPS allows the TLB to be loaded with not only a Virtual to Physical Address translation but also the size of the page at that address. If used incorrectly, the kernel can be wasting memory by allocating a range of memory addresses wholly inappropriate to an application. Again, understanding a situation is as important as being able to implement a technical solution.



HP-UX CSE(c) Official Study Guide and Desk Reference
HP-UX CSE(c) Official Study Guide and Desk Reference
ISBN: N/A
EAN: N/A
Year: 2006
Pages: 434

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net