Knowledge (XXG)

Page (computer memory)

Source 📝

138: 210:(2 bytes) pages, the number of virtual pages is 2 = (2 / 2). However, if the page size is increased to 32 KiB (2 bytes), only 2 pages are required. A multi-level paging algorithm can decrease the memory cost of allocating a large page table for each process by further dividing the page table up into smaller tables, effectively paging the page table. 768:, and in the operating system itself. Commonly, their use requires elevated privileges, cooperation from the application making the large allocation (usually setting a flag to ask the operating system for huge pages), or manual administrator configuration; operating systems commonly, sometimes by design, cannot page them out to disk. 247:
When transferring from a rotational disk, much of the delay is caused by seek time, the time it takes to correctly position the read/write heads above the disk platters. Because of this, large sequential transfers are more efficient than several smaller transfers. Transferring the same amount of data
104:
The concept is named by analogy to the pages of a printed book. If a reader wanted to find, for example, the 5,000th word in the book, they could count from the first word. This would be time-consuming. It would be much faster if the reader had a listing of how many words are on each page. From this
775:
has general-purpose support for multiple page sizes. Each individual process can provide hints and the operating system will automatically use the largest page size possible for a given region of address space. Later work proposed transparent operating system support for using a mix of page sizes
234:
Rarely do processes require the use of an exact number of pages. As a result, the last page will likely only be partially full, wasting some amount of memory. Larger page sizes lead to a large amount of wasted memory, as more potentially unused portions of memory are loaded into the main memory.
515:
can support multiple page sizes, including pages significantly larger than the standard page size. The available page sizes depend on the instruction set architecture, processor type, and operating (addressing) mode. The operating system selects one or more sizes from the sizes supported by the
818:
and x86. FreeBSD 7.2-RELEASE features superpages. Note that until recently in Linux, applications needed to be modified in order to use huge pages. The 2.6.38 kernel introduced support for transparent use of huge pages. On Linux kernels supporting transparent huge pages, as well as FreeBSD and
226:) the page tables must be searched manually (either in hardware or software, depending on the architecture) for the correct mapping. Larger page sizes mean that a TLB cache of the same size can keep track of larger amounts of memory, which avoids the costly TLB misses. 1777:
ROM is further divided into pages, each of which contains 256 bytes. Thus locations 0 through 255 comprise page 0 of ROM, location 256 through 511 comprise page 1 and so on. Program random access memory (RAM) is organized exactly like ROM.
238:
As an example, assume the page size is 1024 B. If a process allocates 1025 B, two pages must be used, resulting in 1023 B of unused space (where one page fully consumes 1024 B and the other only 1 B).
1807: 1762: 194:. However, processor designs often allow two or more, sometimes simultaneous, page sizes due to its benefits. There are several points that can factor into choosing the best page size. 703:
2 MiB ("megapage"), 1 GiB ("gigapage"), 512 GiB ("terapage", only for CPUs with 43-bit address space or more), 256 TiB ("petapage", only for CPUs with 57-bit address space or more),
105:
listing they could determine which page the 5,000th word appears on, and how many words to count on that page. This listing of the words per page of the book is analogous to a
218:
Since every access to memory must be mapped from virtual to physical address, reading the page table every time can be quite costly. Therefore, a very fast kind of cache, the
1349: 950: 536:(sometimes increasing speed by as much as 15%) for large allocations while still keeping memory usage at a reasonable level for small allocations. 1412: 155: 1794: 651:
64 KiB, 512 KiB (optional), 4 MiB, 32 MiB (optional), 256 MiB (optional), 2 GiB (optional), 16 GiB (optional)
260:. This allows programs to use memory more efficiently by aligning allocations to this size and reducing overall internal fragmentation of pages. 1749: 1376: 896: 516:
architecture. Note that not all processors implement all defined larger page sizes. This support for larger pages (known as "huge pages" in
776:
for unmodified applications through preemptible reservations, opportunistic promotions, speculative demotions, and fragmentation control.
757:
supports as many as eight different page sizes, from 4 KiB up to 256 MiB, and some other architectures have similar features.
1523: 1483: 257: 1848: 990: 177: 1840: 1867: 921: 190:
Page size is usually determined by the processor architecture. Traditionally, pages in a system had uniform size, such as 4,096
1689: 1654: 159: 1429: 1366: 1305:"Intel® 64 and IA-32 Architectures Software Developer's Manual Volume 3 (3A, 3B, 3C & 3D): System Programming Guide" 1304: 742: 533: 512: 219: 74:. It is the smallest unit of data for memory management in an operating system that uses virtual memory. Similarly, a 764:, are not in common use except in large-scale applications, the applications typically found in large servers and in 1872: 1163: 820: 811: 765: 726: 575: 148: 1266: 1252: 1232: 1186: 1136: 1090: 1067: 958: 280: 1877: 42: 1615: 664:
64 KiB, 1 MiB ("section"), 16 MiB ("supersection") (defined by a particular implementation)
1447: 1032: 734: 38: 1180: 1084: 1061: 1037: 1751:
MCS-4 Assembly Language Programming Manual - The INTELLEC 4 Microcomputer System Programming Manual
1551: 1157: 799: 791: 722: 235:
Smaller page sizes ensure a closer match to the actual amount of memory required in an allocation.
127: 810:
support large pages internally, but do not expose them to applications. Beginning with version 9,
885: 222:(TLB), is often used. The TLB is of limited size, and when it cannot satisfy a given request (a 1844: 1803: 1758: 1727: 1479: 1372: 1324: 986: 823:, applications take advantage of huge pages automatically, without the need for modification. 761: 525: 1042: 863: 86: 79: 1226: 1130: 613:
8 KiB, 64 KiB, 256 KiB, 1 MiB, 4 MiB, 16 MiB, 256 MiB
1398: 248:
from disk to memory often requires less time with larger pages than with smaller pages.
206:
that occupies more space. For example, if a 2 virtual address space is mapped to 4 
1190: 1094: 1071: 860:- a (often 256-bytes large) memory area at the very start of a processor's address room 852: 67: 1350:"Intel Itanium Architecture Software Developer's Manual Volume 2: System Architecture" 979:
Belzer, Jack; Holzman, Albert G.; Kent, Allen, eds. (1981), "Virtual memory systems",
1861: 1455: 1433: 1005: 929: 847: 795: 591: 567: 207: 101:
Computer memory is divided into pages so that information can be found more quickly.
49: 803: 1700: 1665: 1570: 760:
Larger pages, despite being available in the processors used in most contemporary
980: 832: 710: 532:
terminology) allows for "the best of both worlds", reducing the pressure on the
137: 110: 782:
has supported huge pages on several architectures since the 2.6 series via the
842: 837: 807: 714: 392: 388: 203: 106: 71: 31: 1046: 1031:. 2009 IEEE International Conference on Information Reuse & Integration. 1796:
8086 Family Utilities - User's Guide for 8080/8085-Based Development Systems
857: 750: 618: 1550:
Navarro, Juan; Iyer, Sitararn; Druschel, Peter; Cox, Alan (December 2002).
17: 85:
A transfer of pages between main memory and an auxiliary store, such as a
1690:"Supporting Multiple Page Sizes in the Solaris Operating System Appendix" 1634:"AGP program may hang when using page size extension on Athlon processor" 1633: 1240: 1213: 1167: 1144: 1117: 772: 1802:. Revision E (A620/5821 6K DD ed.). Santa Clara, California, USA: 677:
16 KiB, 64 KiB, 2 MiB, 32 MiB, 512 MiB, 1 GiB
669: 604: 529: 521: 162: in this section. Unsourced material may be challenged and removed. 1559:. 5th Usenix Symposium on Operating Systems Design and Implementation. 1203: 1107: 730: 695: 682: 582: 571: 90: 1485:
The RISC-V Instruction Set Manual Volume II: Privileged Architecture
922:"Operating Systems Lecture Notes, Lecture 9. Introduction to Paging" 1280: 1009: 256:
Most operating systems allow programs to discover the page size at
1594: 1524:"General Purpose Operating System Support for Multiple Page Sizes" 1502: 1236: 1209: 1140: 1113: 815: 779: 754: 738: 656: 631: 517: 384: 272: 1655:"Supporting Multiple Page Sizes in the Solaris Operating System" 1368:
IBM Power Systems Performance Guide: Implementing and Optimizing
746: 268: 191: 1748:"2.3.1 Read-Only Memory / 2.3.2 Program Random Access Memory". 1430:"ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition" 202:
A system with a smaller page size uses more pages, requiring a
1553:
Practical, Transparent Operating System Support for Superpages
718: 557: 131: 1319: 1317: 82:
into which memory pages are mapped by the operating system.
30:"Page size" redirects here. For information on paper, see 1806:. May 1982 . p. 1-6. Order Number: 9800639-04. 729:) in addition to their standard 4 KiB pages; newer 1788: 1786: 1757:(Preliminary ed.). Santa Clara, California, USA: 866:- a 256-byte data structure at the start of a program 279:, as illustrated in the following example written in 1761:. December 1973. pp. 2-3–2-4. MCS-030-1273-1. 1452:Learn the architecture - AArch64 memory management 1029:Using 4KB Page Size for Virtual Memory is Obsolete 802:support huge pages under the name of large pages. 327:"The page size for this system is %ld bytes. 78:is the smallest fixed-length contiguous block of 1837:Fundamentals of Computer Organization and Design 468:"The page size for this system is %u bytes. 982:Encyclopedia of computer science and technology 387:-based operating systems, such as those in the 368:In many Unix systems, the command-line utility 27:Fixed-length contiguous block of virtual memory 1588: 1586: 1299: 1297: 8: 1722: 1720: 1185: – Shell and Utilities Reference, 721:processors support 4 MiB pages (called 275:-based systems may use the system function 1571:"Pages - dankwiki, the wiki of nick black" 1399:"The SPARC Architecture Manual, Version 8" 1089: – System Interfaces Reference, 538: 1503:"The Intel Xeon 5670: Six Improved Cores" 1066: – Base Definitions Reference, 1036: 178:Learn how and when to remove this message 1027:Weisberg, P.; Wiseman, Y. (2009-08-10). 985:, vol. 14, CRC Press, p. 32, 951:"Virtual Memory: pages and page frames" 876: 749:processors can use 1 GiB pages in 1793:"1. Introduction: Segment Alignment". 626:64 KiB, 16 MiB, 16 GiB 395:families, may use the system function 264:Unix and POSIX-based operating systems 66:is a fixed-length contiguous block of 1473: 1471: 886:"Operating Systems (CS170-08 course)" 7: 376:will return the page size in bytes. 160:adding citations to reliable sources 1728:"FreeBSD 7.2-RELEASE Release Notes" 1636:. Support.microsoft.com. 2007-01-27 70:, described by a single entry in a 1699:. Sun Microsystems. Archived from 1664:. Sun Microsystems. Archived from 1595:"Transparent huge pages in 2.6.38" 1325:"Documentation/vm/hugetlbpage.txt" 1166:Basic Library Functions Reference 884:Christopher Kruegel (2012-12-03). 252:Getting page size programmatically 25: 136: 1835:Dandamudi, Sivarama P. (2003). 1813:from the original on 2020-02-29 1768:from the original on 2020-03-01 1371:. IBM Redbooks. February 2013. 920:Martin C. Rinard (1998-08-22). 902:from the original on 2016-08-10 540:Page sizes among architectures 380:Windows-based operating systems 147:needs additional citations for 1413:"UltraSPARC Architecture 2007" 737:'s newer AMD64 processors and 351:/* _SC_PAGE_SIZE is OK too. */ 1: 1283:. Wiki.debian.org. 2011-06-21 1187:The Single UNIX Specification 1091:The Single UNIX Specification 1068:The Single UNIX Specification 725:) (2 MiB pages if using 513:instruction set architectures 957:. 2012-10-31. Archived from 645:UltraSPARC Architecture 2007 220:translation lookaside buffer 634:v8 with SPARC Reference MMU 1894: 1418:. 2010-09-27. p. 427. 1329:Linux kernel documentation 640:256 KiB, 16 MiB 372:can be used. For example, 281:the C programming language 125: 47: 36: 29: 1436:. 2014-05-20. p. B3-1324. 1355:. May 2010. p. 2:58. 1281:"Hugepages - Debian Wiki" 1310:. December 2016. p. 4-2. 1269:. Microsoft. 2022-09-23. 1255:. Microsoft. 2021-10-13. 1253:"GetSystemInfo function" 1047:10.1109/IRI.2009.5211562 814:supports large pages on 405: 285: 37:Not to be confused with 1868:Central processing unit 1482:; Hauser, John (2021). 1267:"SYSTEM_INFO structure" 786:filesystem and without 594:(only when the CPU has 524:, and "large pages" in 43:Block (computer memory) 766:computational clusters 230:Internal fragmentation 39:Bank (computer memory) 1697:Sun BluePrints Online 1662:Sun BluePrints Online 1448:"Translation granule" 1843:. pp. 740–741. 1730:. FreeBSD Foundation 1616:"Large-Page Support" 1401:. 1992. p. 249. 926:people.csail.mit.edu 733:processors, such as 156:improve this article 89:, is referred to as 800:Windows Server 2008 792:Windows Server 2003 723:Page Size Extension 690:4 MiB ("megapage") 590:2 MiB, 1  541: 507:Multiple page sizes 128:Page Size Extension 122:Page size trade-off 1593:Corbet, Jonathan. 1478:Waterman, Andrew; 1143:Library Functions 1116:Library Functions 762:personal computers 709:Starting with the 551:Larger page sizes 548:Smallest page size 539: 520:, "superpages" in 1873:Memory management 1804:Intel Corporation 1759:Intel Corporation 1531:static.usenix.org 1491:. pp. 79–87. 1378:978-0-7384-3766-8 1239:General Commands 1189:, Version 4 from 1093:, Version 4 from 1070:, Version 4 from 794:(SP1 and newer), 707: 706: 526:Microsoft Windows 417:<windows.h> 188: 187: 180: 16:(Redirected from 1885: 1854: 1839:(1st ed.). 1822: 1821: 1819: 1818: 1812: 1801: 1790: 1781: 1780: 1774: 1773: 1767: 1756: 1745: 1739: 1738: 1736: 1735: 1724: 1715: 1714: 1712: 1711: 1705: 1694: 1686: 1680: 1679: 1677: 1676: 1670: 1659: 1651: 1645: 1644: 1642: 1641: 1630: 1624: 1623: 1612: 1606: 1605: 1603: 1602: 1590: 1581: 1580: 1578: 1577: 1567: 1561: 1560: 1558: 1547: 1541: 1540: 1538: 1537: 1528: 1520: 1514: 1513: 1511: 1510: 1499: 1493: 1492: 1490: 1475: 1466: 1465: 1463: 1462: 1444: 1438: 1437: 1426: 1420: 1419: 1417: 1409: 1403: 1402: 1395: 1389: 1388: 1386: 1385: 1363: 1357: 1356: 1354: 1346: 1340: 1339: 1337: 1336: 1321: 1312: 1311: 1309: 1301: 1292: 1291: 1289: 1288: 1277: 1271: 1270: 1263: 1257: 1256: 1249: 1243: 1230: 1229: 1222: 1216: 1207: 1206: 1199: 1193: 1184: 1183: 1176: 1170: 1161: 1160: 1153: 1147: 1134: 1133: 1126: 1120: 1111: 1110: 1103: 1097: 1088: 1087: 1080: 1074: 1065: 1064: 1057: 1051: 1050: 1040: 1024: 1018: 1017: 1002: 996: 995: 976: 970: 969: 967: 966: 947: 941: 940: 938: 937: 928:. Archived from 917: 911: 910: 908: 907: 901: 890: 881: 864:Zero page (CP/M) 789: 785: 597: 574:, 2 MiB in 542: 502: 499: 496: 493: 490: 487: 484: 481: 478: 475: 472: 469: 466: 463: 460: 457: 454: 451: 448: 445: 442: 439: 436: 433: 430: 427: 424: 421: 418: 415: 412: 409: 402: 398: 375: 374:getconf PAGESIZE 371: 364: 361: 358: 355: 352: 349: 346: 343: 340: 337: 334: 331: 328: 325: 322: 319: 316: 313: 310: 307: 304: 301: 300:/* sysconf(3) */ 298: 297:<unistd.h> 295: 292: 289: 278: 183: 176: 172: 169: 163: 140: 132: 21: 1893: 1892: 1888: 1887: 1886: 1884: 1883: 1882: 1858: 1857: 1851: 1834: 1831: 1829:Further reading 1826: 1825: 1816: 1814: 1810: 1799: 1792: 1791: 1784: 1771: 1769: 1765: 1754: 1747: 1746: 1742: 1733: 1731: 1726: 1725: 1718: 1709: 1707: 1703: 1692: 1688: 1687: 1683: 1674: 1672: 1668: 1657: 1653: 1652: 1648: 1639: 1637: 1632: 1631: 1627: 1614: 1613: 1609: 1600: 1598: 1592: 1591: 1584: 1575: 1573: 1569: 1568: 1564: 1556: 1549: 1548: 1544: 1535: 1533: 1526: 1522: 1521: 1517: 1508: 1506: 1501: 1500: 1496: 1488: 1480:Asanović, Krste 1477: 1476: 1469: 1460: 1458: 1446: 1445: 1441: 1428: 1427: 1423: 1415: 1411: 1410: 1406: 1397: 1396: 1392: 1383: 1381: 1379: 1365: 1364: 1360: 1352: 1348: 1347: 1343: 1334: 1332: 1323: 1322: 1315: 1307: 1303: 1302: 1295: 1286: 1284: 1279: 1278: 1274: 1265: 1264: 1260: 1251: 1250: 1246: 1225: 1224: 1223: 1219: 1202: 1201: 1200: 1196: 1179: 1178: 1177: 1173: 1156: 1155: 1154: 1150: 1129: 1128: 1127: 1123: 1106: 1105: 1104: 1100: 1083: 1082: 1081: 1077: 1060: 1059: 1058: 1054: 1038:10.1.1.154.2023 1026: 1025: 1021: 1004: 1003: 999: 993: 978: 977: 973: 964: 962: 949: 948: 944: 935: 933: 919: 918: 914: 905: 903: 899: 888: 883: 882: 878: 873: 829: 790:since 2.6.38. 787: 783: 595: 509: 504: 503: 500: 497: 494: 491: 488: 485: 482: 479: 476: 473: 470: 467: 464: 461: 458: 455: 452: 449: 446: 443: 440: 437: 434: 431: 428: 425: 422: 419: 416: 413: 411:<stdio.h> 410: 407: 400: 397:GetSystemInfo() 396: 382: 373: 369: 366: 365: 362: 359: 356: 353: 350: 347: 344: 341: 338: 335: 332: 329: 326: 323: 320: 317: 314: 311: 308: 305: 302: 299: 296: 293: 291:<stdio.h> 290: 287: 276: 266: 254: 245: 232: 216: 200: 198:Page table size 184: 173: 167: 164: 153: 141: 130: 124: 119: 99: 87:hard disk drive 80:physical memory 52: 46: 35: 28: 23: 22: 15: 12: 11: 5: 1891: 1889: 1881: 1880: 1878:Virtual memory 1875: 1870: 1860: 1859: 1856: 1855: 1849: 1830: 1827: 1824: 1823: 1782: 1740: 1716: 1681: 1646: 1625: 1620:Microsoft Docs 1607: 1582: 1562: 1542: 1515: 1494: 1467: 1439: 1421: 1404: 1390: 1377: 1358: 1341: 1313: 1293: 1272: 1258: 1244: 1217: 1212:User Commands 1194: 1191:The Open Group 1171: 1148: 1121: 1098: 1095:The Open Group 1075: 1072:The Open Group 1052: 1019: 1008:(2019-01-11). 1006:Kazemi, Darius 997: 991: 971: 942: 912: 875: 874: 872: 869: 868: 867: 861: 855: 853:Virtual memory 850: 845: 840: 835: 828: 825: 705: 704: 701: 698: 692: 691: 688: 685: 679: 678: 675: 672: 666: 665: 662: 659: 653: 652: 649: 646: 642: 641: 638: 635: 628: 627: 624: 621: 615: 614: 611: 608: 600: 599: 588: 585: 579: 578: 564: 561: 556:IA-32 (32-bit 553: 552: 549: 546: 508: 505: 406: 381: 378: 286: 265: 262: 253: 250: 244: 241: 231: 228: 215: 212: 199: 196: 186: 185: 144: 142: 135: 123: 120: 118: 115: 109:of a computer 98: 95: 68:virtual memory 48:Main article: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 1890: 1879: 1876: 1874: 1871: 1869: 1866: 1865: 1863: 1852: 1850:0-387-95211-X 1846: 1842: 1838: 1833: 1832: 1828: 1809: 1805: 1798: 1797: 1789: 1787: 1783: 1779: 1764: 1760: 1753: 1752: 1744: 1741: 1729: 1723: 1721: 1717: 1706:on 2007-01-01 1702: 1698: 1691: 1685: 1682: 1671:on 2006-03-12 1667: 1663: 1656: 1650: 1647: 1635: 1629: 1626: 1622:. 2018-05-08. 1621: 1617: 1611: 1608: 1596: 1589: 1587: 1583: 1572: 1566: 1563: 1555: 1554: 1546: 1543: 1532: 1525: 1519: 1516: 1504: 1498: 1495: 1487: 1486: 1481: 1474: 1472: 1468: 1457: 1453: 1449: 1443: 1440: 1435: 1431: 1425: 1422: 1414: 1408: 1405: 1400: 1394: 1391: 1380: 1374: 1370: 1369: 1362: 1359: 1351: 1345: 1342: 1330: 1326: 1320: 1318: 1314: 1306: 1300: 1298: 1294: 1282: 1276: 1273: 1268: 1262: 1259: 1254: 1248: 1245: 1242: 1238: 1234: 1231: –  1228: 1221: 1218: 1215: 1211: 1208: –  1205: 1198: 1195: 1192: 1188: 1182: 1175: 1172: 1169: 1165: 1162: –  1159: 1152: 1149: 1146: 1142: 1138: 1135: –  1132: 1125: 1122: 1119: 1115: 1112: –  1109: 1102: 1099: 1096: 1092: 1086: 1079: 1076: 1073: 1069: 1063: 1056: 1053: 1048: 1044: 1039: 1034: 1030: 1023: 1020: 1015: 1011: 1007: 1001: 998: 994: 992:0-8247-2214-0 988: 984: 983: 975: 972: 961:on 2016-06-11 960: 956: 952: 946: 943: 932:on 2016-06-01 931: 927: 923: 916: 913: 898: 894: 887: 880: 877: 870: 865: 862: 859: 856: 854: 851: 849: 848:Memory paging 846: 844: 841: 839: 836: 834: 831: 830: 826: 824: 822: 817: 813: 809: 805: 801: 797: 796:Windows Vista 793: 781: 777: 774: 769: 767: 763: 758: 756: 752: 748: 744: 740: 736: 732: 728: 724: 720: 716: 712: 702: 699: 697: 694: 693: 689: 686: 684: 681: 680: 676: 673: 671: 668: 667: 663: 660: 658: 655: 654: 650: 647: 644: 643: 639: 636: 633: 630: 629: 625: 622: 620: 617: 616: 612: 609: 606: 602: 601: 593: 589: 586: 584: 581: 580: 577: 573: 569: 565: 562: 559: 555: 554: 550: 547: 544: 543: 537: 535: 531: 527: 523: 519: 514: 506: 447:GetSystemInfo 404: 394: 390: 386: 379: 377: 284: 282: 274: 270: 263: 261: 259: 251: 249: 242: 240: 236: 229: 227: 225: 221: 213: 211: 209: 205: 197: 195: 193: 182: 179: 171: 168:February 2015 161: 157: 151: 150: 145:This section 143: 139: 134: 133: 129: 121: 116: 114: 112: 108: 102: 96: 94: 93:or swapping. 92: 88: 83: 81: 77: 73: 69: 65: 61: 57: 51: 50:Memory paging 44: 40: 33: 19: 1836: 1815:. Retrieved 1795: 1776: 1770:. Retrieved 1750: 1743: 1732:. Retrieved 1708:. Retrieved 1701:the original 1696: 1684: 1673:. Retrieved 1666:the original 1661: 1649: 1638:. Retrieved 1628: 1619: 1610: 1599:. Retrieved 1574:. Retrieved 1565: 1552: 1545: 1534:. Retrieved 1530: 1518: 1507:. Retrieved 1497: 1484: 1459:. Retrieved 1451: 1442: 1424: 1407: 1393: 1382:. Retrieved 1367: 1361: 1344: 1333:. Retrieved 1331:. kernel.org 1328: 1285:. Retrieved 1275: 1261: 1247: 1220: 1197: 1174: 1164:Solaris 11.4 1151: 1124: 1101: 1078: 1055: 1028: 1022: 1013: 1000: 981: 974: 963:. Retrieved 959:the original 955:cs.miami.edu 954: 945: 934:. Retrieved 930:the original 925: 915: 904:. Retrieved 892: 879: 804:Windows 2000 778: 770: 759: 708: 545:Architecture 510: 401:kernel32.dll 383: 367: 345:_SC_PAGESIZE 267: 255: 246: 237: 233: 223: 217: 201: 189: 174: 165: 154:Please help 149:verification 146: 103: 100: 84: 75: 64:virtual page 63: 59: 55: 53: 1505:. AnandTech 1158:sysconf(3C) 893:cs.ucsb.edu 833:Grant table 711:Pentium Pro 700:4 KiB 687:4 KiB 438:SYSTEM_INFO 243:Disk access 111:file system 97:Explanation 60:memory page 18:Memory page 1862:Categories 1817:2020-02-29 1772:2020-03-02 1734:2009-05-03 1710:2008-01-19 1675:2008-01-19 1640:2012-11-03 1601:2011-03-02 1576:2023-06-17 1536:2012-11-02 1509:2012-11-03 1461:2022-08-19 1384:2014-03-17 1335:2014-02-06 1287:2014-02-06 1227:getconf(1) 1204:getconf(1) 1131:sysconf(3) 1108:sysconf(3) 965:2016-06-13 936:2016-06-13 906:2016-06-13 871:References 843:Page table 838:Page fault 808:Windows XP 745:and later 715:AMD Athlon 713:, and the 674:4 KiB 661:4 KiB 648:8 KiB 637:4 KiB 623:4 KiB 610:4 KiB 587:4 KiB 563:4 KiB 486:dwPageSize 393:Windows NT 389:Windows 9x 204:page table 126:See also: 107:page table 76:page frame 72:page table 32:Paper size 1033:CiteSeerX 858:Zero page 788:hugetlbfs 784:hugetlbfs 771:However, 751:long mode 619:Power ISA 534:TLB cache 277:sysconf() 214:TLB usage 117:Page size 1841:Springer 1808:Archived 1763:Archived 1062:limits.h 1014:365 RFCs 1010:"RFC-11" 897:Archived 827:See also 773:SGI IRIX 743:Westmere 576:PAE mode 572:PSE mode 414:#include 408:#include 294:#include 288:#include 224:TLB miss 1181:getconf 1085:sysconf 821:Solaris 812:Solaris 696:RISCV64 683:RISCV32 670:AArch64 605:Itanium 603:IA-64 ( 596:PDPE1GB 566:4  530:IBM AIX 522:FreeBSD 370:getconf 339:sysconf 258:runtime 1847:  1375:  1241:Manual 1233:Darwin 1214:Manual 1168:Manual 1145:Manual 1137:Darwin 1118:Manual 1035:  989:  731:x86-64 598:flag) 583:x86-64 492:return 474:" 462:printf 354:return 333:" 321:printf 91:paging 1811:(PDF) 1800:(PDF) 1766:(PDF) 1755:(PDF) 1704:(PDF) 1693:(PDF) 1669:(PDF) 1658:(PDF) 1597:. LWN 1557:(PDF) 1527:(PDF) 1489:(PDF) 1416:(PDF) 1353:(PDF) 1308:(PDF) 1237:macOS 1210:Linux 1141:macOS 1114:Linux 900:(PDF) 889:(PDF) 816:SPARC 780:Linux 755:IA-64 739:Intel 657:ARMv7 632:SPARC 518:Linux 511:Some 453:& 399:from 385:Win32 273:POSIX 192:bytes 62:, or 1845:ISBN 1373:ISBN 1235:and 1139:and 987:ISBN 806:and 798:and 747:Xeon 528:and 429:void 423:main 391:and 312:void 306:main 271:and 269:Unix 56:page 1456:Arm 1434:Arm 1043:doi 741:'s 735:AMD 727:PAE 719:x86 592:GiB 570:in 568:MiB 558:x86 420:int 348:)); 303:int 208:KiB 158:by 41:or 1864:: 1785:^ 1775:. 1719:^ 1695:. 1660:. 1618:. 1585:^ 1529:. 1470:^ 1454:. 1450:. 1432:. 1327:. 1316:^ 1296:^ 1041:. 1012:. 953:. 924:. 895:. 891:. 753:. 717:, 489:); 480:si 471:\n 459:); 456:si 441:si 403:. 330:\n 283:. 113:. 58:, 54:A 1853:. 1820:. 1737:. 1713:. 1678:. 1643:. 1604:. 1579:. 1539:. 1512:. 1464:. 1387:. 1338:. 1290:. 1049:. 1045:: 1016:. 968:. 939:. 909:. 607:) 560:) 501:} 498:; 495:0 483:. 477:, 465:( 450:( 444:; 435:{ 432:) 426:( 363:} 360:; 357:0 342:( 336:, 324:( 318:{ 315:) 309:( 181:) 175:( 170:) 166:( 152:. 45:. 34:. 20:)

Index

Memory page
Paper size
Bank (computer memory)
Block (computer memory)
Memory paging
virtual memory
page table
physical memory
hard disk drive
paging
page table
file system
Page Size Extension

verification
improve this article
adding citations to reliable sources
Learn how and when to remove this message
bytes
page table
KiB
translation lookaside buffer
runtime
Unix
POSIX
the C programming language
Win32
Windows 9x
Windows NT
instruction set architectures

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.