Talk:Memory segmentation

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing (Rated Stub-class)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Stub-Class article Stub  This article has been rated as Stub-Class on the project's quality scale.
 ???  This article has not yet received a rating on the project's importance scale.
 
WikiProject Computer science (Rated Stub-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Stub-Class article Stub  This article has been rated as Stub-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.
 

Paging, segmentation, and protection[edit]

Afaik, paging isn't another way to ensure page protection; in fact, I believed that segmentation was built upon paging just to address a lack of the latter.

See for example Tanenbaum A., "Modern Operating Systems", 2nd edition, §4.8 - fig. 4.37.

No. There exist processors that offer segmentation without paging (e.g., the Burroughs large systems) and thus offer only segment-level protection, processors that offer paging without segmentation (e.g., several RISC processors such as MIPS processors) and that use protection bits in the page table to provide protection, and processors that offer both paging and segmentation and either use only segment protections or segment protections and per-page protections to provide protection. Guy Harris 04:12, 13 November 2007 (UTC)

Merge?[edit]

I believe this article should be merged with Memory segment. They are about essentially the same thing. Strake 21:29, 9 August 2006 (UTC)

Agreed, or maybe memory segment should be merged here. I wrote most of the memory segment article because at the time, that seemed like the logical place. But here might make sense. Propose the merge David.kaplan 02:14, 22 October 2006 (UTC)

Currently, memory segment is an article about segmentation in x86 processors, not about segmentation in general. This page shouldn't be merged with it; we need at least one page to describe segmentation in general, without incorporating a bunch of x86 stuff that might lead people to think x86 segmentation (whether real or protected mode) is the be-all and end-all of segmentation. (Perhaps memory segment should be renamed in such a way as to make it clearer that it's x86-specific.) Guy Harris 04:06, 13 November 2007 (UTC)
Looking for the meaning of the order or command ls I found that it is defined elsewhere as "short for list" and in Wikipedia as: "Its name derives from a similar command list segments in Multics, a system in which memory segments and files were synonyms." So I wonder if the origin is "list segments" and not the improbable "list". Could someone please confirm whether ls actually originates in "list segments"? I am after this because it is so much simple to remember the commands if one knows where they come from originally. Because of this I think that memory segment is a concept clearly different from segmentation and should be explained separately. --FelipeTD (talk) 19:30, 12 July 2009 (UTC)
Memory segment now redirects to memory segmentation, and there's an x86 memory segmentation page for all the x86-specific stuff. Guy Harris (talk) 07:55, 18 November 2010 (UTC)

Segmentation and protection[edit]

It's worth noting that in several implementations of segmented VM, "protection" (when present at all) was not applied to the segment but rather the segment pointer. On both the Burroughs and IBM S/38 systems authorities were checked when the segment pointer was loaded. I vaguely recall that in the Burroughs case some of the protections were loaded into hardware registers, for later checking against memory accesses, but in the case of the S/38 no authority information was preserved after loading the pointer -- rather the reason for loading the pointer (read/write/execute/etc) was checked against the authority bits in the pointer, and an error generated if the pointer could not be loaded for that reason.

In spite of this "weakness", the S/38 OS was quite secure. drh (talk) 22:35, 3 January 2013 (UTC)

Confusion about memory address segments and linker's segments may not exist[edit]

The article’s title "memory segmentation" suggest that it is a matter of memory addressing. But such things as "code segment" (in an object file) do not require that segment registers actually had any use. Incnis Mrsi (talk) 20:16, 28 January 2013 (UTC)

Sounds right to me, maybe some of the discussion of object files should be deleted or moved. Segments (or groups) in an object can support memory segmentation if it exists. Peter Flass (talk) 20:31, 28 January 2013 (UTC)
But what to do with Code segment (edit | talk | history | links | watch | logs)/Text segment (edit | talk | history | links | watch | logs)? In one hand, the term possesses the same ambiguity between linker’s segments and CPU segments. In another hand, the information at CS: usually originates from ".text", so the "code segment" (CPU) usually implies "text segments" (linker). BTW, I just noticed that these things are referred to as sections (not segments) in objdump’s documentation. Incnis Mrsi (talk) 21:10, 28 January 2013 (UTC)

I did move the "object file" segment discussion to that article. Peter Flass (talk) 15:01, 8 February 2014 (UTC)

x86 segmentation[edit]

Hint: On x86 CPUs within the "real mode" we becomes exactly 1088 KiB - 15 Bytes addressable space together with the combination of the segment and the offset part for to build an address. — Preceding unsigned comment added by 85.177.153.121 (talk) 08:42, 13 February 2014 (UTC)