Measures of Memory Space
Measures of Memory Space
Page 1 of 5
http://www.robelle.com/smugbook/pages.html
1/3/2012
Page 2 of 5
20th power. A megabyte is equal to 4,096 MPE sectors, 512 PA-RISC hardware Pages, or 256 MPE/iX software pages. 1,024 megabytes is a gigabyte. Gigabyte A gigabyte (GB) is a measure of memory space equal to 1024 megabytes or 1,073,741,824 bytes (2 to the 30th power). A gigabyte is equal to 4,194,304 MPE sectors, 524,288 hardware PA-RISC pages or 262,144 software MPE/iX pages. Extents are Chunks of Disc Space Disc space is measured and allocated in different ways on different operating systems. MPE nominally measures space in 256-byte sectors and allocates files in units of contiguous space called extents. MPE/iX actually allocates space in multiples of 4,096-byte pages not sectors, but it continues to measure the space in sectors for backward compatibility. Extents are a feature of MPE/iX left over from MPE V. They can almost, but not completely, be ignored. On MPE V, all extents must be the same size (except the last) and the maximum per file is 32. This can make it hard to find big enough chunks of free disc space for a large data file. On MPE/iX a file can have unlimited extents and they don't have to be the same size. Many MPE/iX files, such as Obj files, have a Record size of 256 bytes, a Record Limit of 4,096,000, and unlimited extents. Stan Sieler points out that extents are not actually unlimited: While there is no hard-coded limit, it turns out that the number of extents for a single file is limited at least by the maximum size of a Label Table (because all of the extents are recorded in the Label Table). A Lable Table has no hard-coded entry limit, but is limited to a maximum of 20 extents, all on the same disc drive. Anyway, I conjecture that an approximate limit on the number of extents (assuming a big disk drive, and no other files in the Label Table!) is about 15,728,100 extents. :) Transient Disc Space On MPE disc space is measured in sectors and allocated to files in extents. Use :dstat all to show the disc drives on your MPE system. Use :discfree to explore disc space usage and :report nogroup.@ to print the disc space used by all the accounts on your system. Use the MPEX command %listf @.@.@ (sectors>10000 and accdate < today-90),2 to find the big files that haven't been used in 90 or more days. Transient disc space is space managed by MPE for user data stacks and heaps, and other temporary data structures. It can consume up to 1 gigabyte per process, especially if you link your file with the default NM stack size of 96 megabytes (this allocates at least one 2048-sector piece of transient space, even for a CM program that never uses the NM stack). See SYSGEN for maximum NMHEAP and MAXNMSTACK. If the sum of these is greater than 1 GB, then 1 GB is the limit, since this space is accessed through Space Register 5. Transient space is similar to Swap Space on HP-UX. HP-UX measures space in 1024-byte blocks in bdf, but 512-byte blocks in df. The df command is a standard UNIX report of free disc space. bdf is a nicer Berkeley form of df supplied with HP-UX; it shows free and used disc space on each file system (it does not include Swap Space and other overhead disc space). Here is some sample bdf output:
http://www.robelle.com/smugbook/pages.html
1/3/2012
Page 3 of 5
Text version. Filesystem /dev/vg00/lvol1 /dev/vg00/lvol5 /dev/vg00/lvol4 /dev/vg00/lvol3 dumbo.robelle.com:/sys/apps /dev/dsk/c3d0s2 /dev/dsk/c4d0s2 kbytes 104097 79449 99385 496865 627120 546660 321402 used 66657 21 64732 418420 455712 546660 321402 avail 27030 71483 24714 28758 171408 0 0 capacity 71% 0% 72% 94% 73% 100% 100% mounted on / /tmp /users /usr /pcserver/sys/apps /cdrom1 /cdrom2
The /vg00 file systems are logical subdivisions of the hard drive allocated to different subdirectories under the root directory. The idea is similar to account and group limits in MPE. The dumbo file system is a LAN PC server, mounted as a Network File System on UNIX. And the last two are CD-ROM drives with the HP-UX and MPE manuals mounted. The capacity column is sort of equivalent to MPE/iX's max Perm percent, in that 100 percent doesn't mean that the disc is full. HP-UX generally makes the disc look 100 percent full when it is actually about 90 percent full. The remaining 10 percent is given only to superuser. bdf reports kilobytes free per HP-UX file system. See /etc/checklist/ for all file systems known to your HP-UX system and /etc/mnttab/ for all file systems which are mounted. Disc space is managed as "device-files"; see /dev/dsk/* for all disc devices. When you run out of disc space, the error you see is "No space left on device." To find out who is using the disc space on HP-UX, try du -s /users/*. This shows how many 512-byte blocks are used by each subdirectory under /users. Fragmentation Operating systems allocate disc space in chunks as they create and expand files and transient disc space (swap areas, etc.). When files are purged, these chunks are released for re-use. Over time the disc space may end up "fragmented" into many small pieces, which can slow the performance and the reliability of the system. To observe and correct MPE fragmentation on MPE, use the De-Frag/X product from Lund Performance Software or use the Contigvol command of MPE/iX 5.0's Volutil program (it creates contiguous free disc space on a volume; Contigvol appears to work about as well as VINIT CONDense did -- that is, it's stable and reliable, but requires multiple passes to get the best results). To learn all about fragmentation, see Stan Sieler's paper "Analysis and Correction of Fragmentation Problems." Here's an example of the De-Frag/X display of disc drive fragmentation. (You can also zoom in on a single chunk of the display.)
:run defragx.pub.lps De-Frag/X A.03c (run on 3/02/95 18:49:03.4) Copyright (c) 1993 Lund Performance Solutions MPE/iX 5.0 (or later) # Boots since INSTALL : 236
http://www.robelle.com/smugbook/pages.html
1/3/2012
Page 4 of 5
Size of largest currently mounted disk = 163,735 pages (639 MB). Note: system appears to have been started by a SOFT-boot (^B TC). De-Frag/X> map 11 -----------------------------------------------------------------------Ldev 11: (Each chunk represents 168 pages, or .7 MB) [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 0 [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 1 [PPPPPPPPPPPPPPPPPPPPPPPPPppPPpppppPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 2 [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPpPP] 3 [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 4 [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 5 [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 6 [PPPppPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 7 [PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP] 8 [PPPPPPPPPPPPPPPPPPPPp*p*************ppPp************************] 9 [*********************************pPPPPPPPPPPPPPPPPPPPPPPPPPPPPPp] 10 [****************************************************************] 11 [****************************************************************] 12 Col[0....+....10...+....20...+....30...+....40...+....50...+....60..] Row Available Permanent Disk: 134 MB (disk size: 544 MB) MAP_characters: Free * Permanent P Transient T unmovable X part Perm p part Trans t same_ldev x
Disc "Megabytes" Versus RAM Megabytes Disc memory is measured differently from RAM memory by the disc manufacturers. Disc space typically uses megabyte to mean 1,000,000 bytes and gigabyte to mean 1,000,000,000 bytes. HP does this, as do many other disc companies. Computer manufacturers use megabyte to mean 1,048,576 bytes and gigabyte to mean 1,073,741,824 bytes. So 1 MB of main memory won't fit in 1 MB of disc swap space! IEC Standards: Binary versus Decimal Branislav Vracaric (vracaric at rogers dot com) writes on the RAM versus Disc controversy: "In 1998, the International Electrotechnical Commission approved international standard names and symbols for prefixes for BINARY multiples:"
Name kibi mebi gibi tebi pebi exbi Symbol Ki Mi Gi Ti Pi Ei Origin kilobinary megabinary gigabinary terabinary petabinary exabinary Factor 2 on power 2 on power 2 on power 2 on power 2 on power 2 on power of of of of of of 10 20 30 40 50 60
"Comparing those to DECIMAL prefixes we find that: one kibibyte (1 KiB) = 2 on power of 10 byte = 1,024 B; but one kilobyte (1 KB) = 10 on power of 3 byte = 1,000 B;
http://www.robelle.com/smugbook/pages.html
1/3/2012
Page 5 of 5
one mebibyte (1 MiB) = 2 on power of 20 byte = 1,048,576 B; one megabyte (1 MB) = 10 on power of 6 byte = 1,000,000 B. one gibibyte (1 GiB) = 2 on power of 30 byte = 1,073,741,824 B; one gigabyte (1 GB) = 10 on power of 9 byte = 1,000,000,000 B. etc. "So, prefix "kilo" means 1,000 (not 1,024 as pointed out on your WEB page), mega is 1,000,000 (not 1,048,576 or 2 to the 20th power), giga is 1,000,000,000 etc." Thanks Branislav. Here are some web sites that discuss this issue: National Institute of Standards and Technology: "Once upon a time, computer professionals noticed that 2^10 was very nearly equal to 1000 and started using the SI prefix "kilo" to mean 1024. That worked well enough for a decade or two because everybody who talked kilobytes knew that the term implied 1024 bytes. But, almost overnight a much more numerous "everybody" bought computers, and the trade computer professionals needed to talk to physicists and engineers and even to ordinary people, most of whom know that a kilometer is 1000 meters and a kilogram is 1000 grams." "Then data storage for gigabytes, and even terabytes, became practical, and the storage devices were not constructed on binary trees, which meant that, for many practical purposes, binary arithmetic was less convenient than decimal arithmetic. The result is that today "everybody" does not "know" what a megabyte is. When discussing computer memory, most manufacturers use megabyte to mean 2^20 = 1 048 576 bytes, but the manufacturers of computer storage devices usually use the term to mean 1 000 000 bytes. Some designers of local area networks have used megabit per second to mean 1 048 576 bit/s, but all telecommunications engineers use it to mean 106 bit/s. And if two definitions of the megabyte are not enough, a third megabyte of 1 024 000 bytes is the megabyte used to format the familiar 90 mm (3 1/2 inch), "1.44 MB" diskette. The confusion is real, as is the potential for incompatibility in standards and in implemented systems." Prof Russ Rowlett UNC: "5 gigabytes (GB) should mean exactly 5 000 000 000 bytes, and 5 gibibytes (GiB) should mean exactly 5 368 709 120 bytes. The fate of this innovation is uncertain. So far, very few people are using the IEC binary prefixes. Searches for them on the Internet turn up, for the most part, complaints by people who don't want to use them." freedictionary.com: "As of 2003, this naming convention has not yet gained widespread use. The IEC did not give names for the prefixes beyond exa-, but if they had given them names, they would probably be zebi- and yobi- as well as nobi- and dogbi-."
http://www.robelle.com/smugbook/pages.html
1/3/2012