Talk:Page (computer memory)
This is the talk page for discussing improvements to the Page (computer memory) article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
![]() | This article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||
|
Opening comment
editwhat is the min size of page
Requested move
edit- The following discussion is an archived discussion of the proposal. Please do not modify it. Subsequent comments should be made in a new section on the talk page. No further edits should be made to this section.
The result of the proposal was moved to Page (computer memory). Vegaswikian (talk) 22:20, 17 October 2009 (UTC)
Page (computing) → Memory page — There are many possible uses of the word "page" in terms of computing, as can be seen at the disambiguation page Page, where there's a whole category for terms relating to computing and computers. The disambiguator "(computing)" thus does little to actually distinguish this usage from others. Propaniac (talk) 15:40, 2 October 2009 (UTC)
- But "memory page" is not a term that is commonly used. Raysonho (talk) 17:13, 2 October 2009 (UTC)
- The article indicated that "memory page" and "virtual page" were other names for this topic; I thought "memory page" would be best because there were several incoming links via the memory page redirect (and only a couple such links via virtual page). If the topic is overwhelmingly often referred to only as a "page", then perhaps Page (virtual memory) would be better? Or something else? Propaniac (talk) 17:50, 2 October 2009 (UTC)
- I agree that the word "page" can have other meanings in the topic of computing, and also agree that "Page (virtual memory)" can be a better choice. However, I need a little more time to google. IIRC, some computer architectures can have page protection on (need a page table), but virtual memory need not to be turned on. Raysonho (talk) 05:55, 4 October 2009 (UTC)
- Yes, I too was thinking of non-virtual paging as being problematic for the proposed Page (virtual memory). How about a KISS solution like, Page (computer memory)? --Born2cycle (talk) 01:31, 7 October 2009 (UTC)
- How about "Page (memory)"?? When OS people talk about pages, they use "a page of memory". Even the manpage of pagesize(1) says "... display the size or sizes of a page of memory". Further, there are 190,000 hits from google for "a page of memory". Not that many people use "a page of computer memory". Raysonho (talk) 01:57, 7 October 2009 (UTC)
- They may not say "a page of computer memory" but presumably the discussions are taking place in a context where it's obvious what kind of memory they're referring to. I think Page (computer memory) is clearer, but I can live with Page (memory). Propaniac (talk) 13:01, 7 October 2009 (UTC)
- Yes, either way, the name part of the title is just "Page", because that's how people generally refer to the topic of this article. The issue here is whether the disambiguator should be "computer memory" or just "memory". The purpose of the disambiguator is not to convey how people refer to the topic, but to distinguish this usage of "page" from other uses. To that end, "computer memory" is more effective than just "memory". --Born2cycle (talk) 19:45, 12 October 2009 (UTC)
Comment In summary it seems the three of us agree the page should be moved from Page (computing) to either Page (memory) or Page (computer memory), with a 2:1 preference for the latter. Anyone else? --Born2cycle (talk) 04:29, 14 October 2009 (UTC)
- The above discussion is preserved as an archive of the proposal. Please do not modify it. Subsequent comments should be made in a new section on this talk page. No further edits should be made to this section.
Change KB to KiB.
editQuoting the article Binary_prefix#Current_practice: "Main memory and cache memory universally use customary binary prefixes[defn. 1] to state capacity.[1][2][3][4][5]"--71.194.190.179 (talk) 23:11, 10 October 2010 (UTC)
- The article you quote states plainly that both uses are still common. In fact, in some areas the binary system is less common. Tiderolls 23:19, 10 October 2010 (UTC)
- How about if I add the exact number of bytes in parenthesis? Ex: 4KB (4096 bytes) Surely this will be clarify the article without offending you--71.194.190.179 (talk) 00:08, 11 October 2010 (UTC)
- While I would be against using KiB, IMHO "4KB (4096 bytes)" is fine. Just IMHO. Ipsign (talk) 04:35, 11 October 2010 (UTC)
- How about if I add the exact number of bytes in parenthesis? Ex: 4KB (4096 bytes) Surely this will be clarify the article without offending you--71.194.190.179 (talk) 00:08, 11 October 2010 (UTC)
- If that phrasing is confirmed by consensus, of course I would agree. Please don't make this about editors; whether an edit offends me or not is irrelevant Tiderolls 00:49, 11 October 2010 (UTC)
- I've requested input at Wikipedia talk:WikiProject Computing. Hopefully, more editors will offer their views. Tiderolls 00:55, 11 October 2010 (UTC)
- Does WP:COMPUNITS help resolve this? Use of KiB is generally discouraged. --Kvng (talk) 01:13, 11 October 2010 (UTC)
- Yup, it's written in the Manual of Style already, and I think KiB is ugly. Raysonho (talk) 04:44, 11 October 2010 (UTC)
- Every now and then someone finds out about the existence of these units and comes on Wikipedia performing this very same edit to show their knowledge to the world. As I said before, KiB and MiB have existed for 40 years now and nobody cares about them, maybe unless in a scenario where the two are used and a distinction is strictly necessary. The whole world uses KB, MB, TB as dictated by JEDEC https://en.wikipedia.org/wiki/JEDEC_memory_standards#Unit_prefixes_for_semiconductor_storage_capacity https://www.jedec.org/standards-documents/docs/jesd-79-3d Introducing an unfamiliar unit, and creating this discrepancy in units between the article and the sources and every article readers have read in their life, only creates confusion and benefits nobody. This is settled. WP:COMPUNITS says kibi and mibi are not to be used. Vmelkon (talk) 14:51, 20 June 2021 (UTC)
References
Confusion: CPU or OS?
editI feel that current description (especially in preamble) is quite confusing. In fact, roots of page size usually go into CPU architecture, and it is not mentioned, referring to operating system instead. Later on, it causes severe confusion when huge pages begin to be discussed: if page is a minimum block, what huge page is? I feel that the whole article needs severe cleanup. Ipsign (talk) 04:40, 11 October 2010 (UTC)
- Or maybe it's better to merge it with Virtual memory? Among other things, I don't really see how one can explain huge pages without referring to TLBs, and TLBs clearly belong there, not here. Ipsign (talk) 04:47, 11 October 2010 (UTC)
What's the difference between a "Huge" page and a "Large" page?
editThe "Huge pages" section has a table with separate "Huge Page Size" and "Large Page Size" columns; what is the difference between "Huge pages" and "Large pages" there? In most cases, only one of those columns is filled in, so there isn't a distinction between them; for x86, most larger page sizes are categorized as "Huge", with 2G pages categorized as "Large". Is there any reason to draw that distinction, or should the "Large Page Size" column be removed and its contents moved/merged to the "Huge Page Size" column? Guy Harris (talk) 21:08, 14 December 2012 (UTC)
- I think the column headings should be swapped. This would be consistent with Windows' usage and also with Intel and AMD's documentation. I actually can't find "huge page" in either of the latter. Where is the RS for the use of "huge page" at all, let alone for the smaller of the two "larger than normal" page sizes? Jeh (talk) 22:13, 23 March 2017 (UTC)
- So shall we just have two columns, one for the basic page size, and one for all larger page sizes, and just call the second column "Large page sizes" or something such as that? Guy Harris (talk) 01:09, 24 March 2017 (UTC)
- BTW, the reference for the table's title says "Most current CPU architectures support bigger pages (so the CPU/OS have less entries to look-up), those are named Huge pages (on Linux), Super Pages (on BSD) or Large Pages (on Windows), but it all the same thing.", so it's not a reliable source for any distinction, for a given architecture, between "huge" and "large" pages; the distinction is between Linux and Windows, with BSD using a different term, apparently. Sounds to me like a good reason to have just two columns. Guy Harris (talk) 01:15, 24 March 2017 (UTC)
- ...with the second page possibly being called "Larger page sizes", as in "larger than the basic page size". Guy Harris (talk) 01:17, 24 March 2017 (UTC)
- The Intel and AMD docs clearly support the use of "large page", but they don't have a different term for "larger large". They just give the various sizes. There are, however, definitely two distinct modes there, depending on where the "large page" bit is (PDE or PDPTE). The latter is only possible with PAE enabled, or on x64, so at least large-large pages don't have yet another different size without PAE.
- And of course while they are "horse's mouth" sources x86/x64, there are other architectures to cover. Are there any hardware references that support "huge page"? Jeh (talk) 08:03, 24 March 2017 (UTC)
- "Support "huge page"" as in "use the term "huge page" in the documentation"? The reference for Power Architecture speaks of "medium", "large", and "huge" page sizes. The manual for Itanium uses "large" for everything other than 4KiB; I'll update the table to give vendor references for everything, perhaps add some architectures, and improve the columns (I'm not about to add a "medium" column, as I'm not sure how many columns we should have). Guy Harris (talk) 08:26, 24 March 2017 (UTC)
- Personally I do think it would be useful to have three "page size" columns, since there are so many possible sizes. And possibly separate rows for 64-bit mode vs 32-bit modes. Jeh (talk) 08:03, 24 March 2017 (UTC)
- If there are so many possible sizes, why three columns, as opposed to four (given that Power Architecture uses four different terms) or eight (given that there are up to 8 page sizes supported by an Itanium processor, although not all the sizes listed there are well supported by all processors, at least from my quick reading of the Intel reference)? Guy Harris (talk) 08:26, 24 March 2017 (UTC)
- Ok, the current state of the table has convinced me. I now say: Dump the "huge" column and merge its contents into the "large" column. The details can be in the various archs' individual articles. Jeh (talk) 19:16, 24 March 2017 (UTC)
- I went with a "Smallest page size" column and a "Larger page sizes" column. Guy Harris (talk) 19:26, 24 March 2017 (UTC)
- Looks good! That neatly sidesteps the issues of what the various hardware and software vendors call them. Should we add some historical page sizes like VAX's 512 B? Jeh (talk) 19:55, 24 March 2017 (UTC)
Inconsistencies
editThe article has several inconsistencies:
- The phrase "the smallest unit of data" conflicts with the description of architectures with multiple page sizes. In such an architecture, only one of the sizes can be "the smallest unit of data".
- In English, something described as huge is normally larger than something described only as large; Page (computer memory)#Huge pages shows large pages as being larger than huge pages in, e.g., x86_64. If the literature for a particular architecture or OS uses the terms in a nonstandard way then the text should explain that it varies from normal English usage.
- The hardware vendors may 1) use "large page" for anything bigger than the basic page size, 2) use "large page" for one page size and "huge page" for the next size up (and, for the one ISA I've found that does that, "medium page" for the size between the basic page size and the large page size), or 3) not use either of those terms. "Huge page" was probably used because that section was created by a bunch of Linux types, and I guess Linux uses the term "huge page" for anything bigger than the basic page size; other OSes use different terms. There's no good reason to privilege Linux's terminology over that of, for example, FreeBSD or Windows. (See Talk:Page (computer memory)#What's the difference between a "Huge" page and a "Large" page?.) Guy Harris (talk) 09:26, 24 March 2017 (UTC)
OT: the IBM z/Architecture (z/Architecture Principles of Operation, SA22-7832-09) describes 3 page sizes, contingent on the availability of specific architectural features: 4 KiB, 1 MiB and 2 GiB. Note that the old S/370 page size of 2 KiB is not available on z/Architecture and was never supported by MVS. Shmuel (Seymour J.) Metz Username:Chatul (talk) 15:58, 19 December 2013 (UTC)
- Not so OT, as there should probably be an entry in the page size table for z/Architecture. Where are those page sizes described? Are they directly described, or do you get larger pages by making an entire region or segment a page? Guy Harris (talk) 09:25, 24 March 2017 (UTC)
Cite error: There are <ref group=defn.>
tags on this page, but the references will not show without a {{reflist|group=defn.}}
template (see the help page).