flat assembler
Message board for the users of flat assembler.
Index
> DOS > Question about real mode addressing Goto page Previous 1, 2, 3, 4 |
Author |
|
DJ Mauretto 23 Jan 2009, 20:44
Anyway What is the subject of debate
_________________ Nil Volentibus Arduum |
|||
23 Jan 2009, 20:44 |
|
neville 23 Jan 2009, 22:30
Well it does say 64GB max ext address space = 36-bit addr bus for sure, but I wonder how many motherboards with PPros would support even 4GB let alone 64GB ?
_________________ FAMOS - the first memory operating system |
|||
23 Jan 2009, 22:30 |
|
revolution 24 Jan 2009, 06:09
neville wrote:
neville wrote:
neville wrote: Very ironically, your virtually-addressed "contiguous blocks" are not actual contiguous memory at all... In fact after multi-level page translations they are probably even more fragmented small blocks of physical memory, as small as 4kbytes each! Your contiguous memory is an illusion, done with smoke, mirrors and page tables Now, let's address the assumption above that all device addresses are in fixed location: neville wrote: In my expereience the VESA LFB is always "automatically" mapped to the top of installed physical RAM, ... |
|||
24 Jan 2009, 06:09 |
|
neville 24 Jan 2009, 20:50
revolution, I have to say your arguments can be a bit circular (haha, circular, revolution ). For example, you keep referring to your perceived problem when there is "4GB (or more) of SDRAM". You keep suggesting that the only way to address RAM above 4GB is by means of paging. That is precisely my point. That is the limitation imposed on us by the X86-64 "long-mode" architecture. If a Flat Real 64-bit mode was available this "problem" would not exist. What happens when we get more than 64 address lines?
Sorry, but when it comes to misrepresentation, perhaps we are both guilty. I specifically separated the VESA LFB from my statement about device addresses being in fixed locations. Of course the Top of RAM is not "fixed". That was exactly what I was saying... Actually, maybe its only you who is guilty I don't understand this: Quote: You misrepresent my statement. I said "contiguous blocks of memory for apps". You are suggesting that we need contiguous blocks of memory for SDRAM. Apps are what the CPU runs. SDRAM is just there to provide storage. So we should be trying to make things more convenient for the apps. And yes, the CPU runs apps, but it also runs the OS which controls how apps are run. But why do you also say "SDRAM is just there to provide storage"? Are you implying the CPU essentially runs from its cache, with "SDRAM" acting like "virtual cache"? And what did you mean earlier when you referred to "CPU page size". Are you saying the CPU uses an internal paging scheme to access its cache?? Sorry for all these questions but I think we need to clarify some things here. _________________ FAMOS - the first memory operating system |
|||
24 Jan 2009, 20:50 |
|
baldr 24 Jan 2009, 21:39
neville,
From CPU's point of view, they're all like slow, non-persistent clay tables. |
|||
24 Jan 2009, 21:39 |
|
revolution 25 Jan 2009, 04:29
neville wrote: revolution, I have to say your arguments can be a bit circular (haha, circular, revolution ). neville wrote: For example, you keep referring to your perceived problem when there is "4GB (or more) of SDRAM". You keep suggesting that the only way to address RAM above 4GB is by means of paging. That is precisely my point. That is the limitation imposed on us by the X86-64 "long-mode" architecture. If a Flat Real 64-bit mode was available this "problem" would not exist. What happens when we get more than 64 address lines? neville wrote: I don't understand this: neville wrote: I am certainly not suggesting "that we need contiguous blocks of memory for SDRAM" because that does not make any sense to me. To me, SDRAM is just RAM - synchronous dynamic RM, just plain old main memory. Why do you refer to SDRAM as though it is somehow different to "memory"?? BTW: I started using the term SDRAM because I thought that if I kept just using the term "memory" it might be easy to get confused with cache memories and other device memories. neville wrote: And yes, the CPU runs apps, but it also runs the OS which controls how apps are run. But why do you also say "SDRAM is just there to provide storage"? Are you implying the CPU essentially runs from its cache, with "SDRAM" acting like "virtual cache"? neville wrote: And what did you mean earlier when you referred to "CPU page size". Are you saying the CPU uses an internal paging scheme to access its cache?? neville wrote: Sorry for all these questions but I think we need to clarify some things here. |
|||
25 Jan 2009, 04:29 |
|
neville 25 Jan 2009, 09:13
My dear revolution (how civil is that ), you do contradict yourself:
here's what you said before: Quote: I mentioned SDRAM page size (internal in the SDRAM) and CPU page size (an entirely different type of paging). Actually I wish I hadn't mentioned the SDRAM page thing because it is a red-herring Now you're saying CPU page size is "the 4kb pages...evident when paging is enabled", and cache is a red-herring too. And you didn't answer my question about your perceived 4GB "limit"... And now I don't know what question I didn't answer, that you're not going to ask again... I guess this debate isn't going anywhere except kinda round and round. But about memory fragmentation I will just say that of course the physical memory always remains contiguous in the physical sense, but the fragmentation arises from the page translations, and dependent on the memory management (allocation/deallocation) algorithms used. At the end of the day I don't think we're ever going to convince each other of the merits or otherwise of memory paging, but as a final side-swipe I'll also say that another disadvantage of paging is that it has facilitated the implementation of disk-based virtual memory which is an even greater sin than paging itself . But then we've discussed that subject before too! _________________ FAMOS - the first memory operating system |
|||
25 Jan 2009, 09:13 |
|
revolution 25 Jan 2009, 09:50
neville wrote: My dear revolution (how civil is that ), neville wrote: ... you do contradict yourself: neville wrote: here's what you said before: neville wrote: And you didn't answer my question about your perceived 4GB "limit"... neville wrote: I guess this debate isn't going anywhere except kinda round and round. But about memory fragmentation I will just say that of course the physical memory always remains contiguous in the physical sense, but the fragmentation arises from the page translations, and dependent on the memory management (allocation/deallocation) algorithms used. My first basic attempt was to discredit the idea that: SDRAM was always contiguous and so paging was not needed to make it contiguous. So I mentioned that different devices can (and do) poke holes in the SDRAM address space and thus would require the apps/OS to skip these ranges to ensure no aberrant behaviour is made. Secondly, I was trying to suggest that using paging to move the device memories around and plug the holes with the spare SDRAM could be advantageous for apps (and the OS BTW. If dynamic memory allocation is not needed then it only has to be done once at startup) to "see" a contiguous memory space without any annoying holes to be mindful of. Phew, I hope that is clear, I'm trying my best to recount my argument in a concise manner. However, since I am enjoying this debate so much I also want to add some things neville mentions the "Virtual memory" side swipe: Cool , do you really want to discuss it here? I don't use it myself, but I can see how in some situations it can be useful. Use the HDD as a cheap (and slow) app memory, sure why not. The only alternative may be to buy expensive physical RAM, that might become too expensive in some cases. It becomes a trade-off situation. |
|||
25 Jan 2009, 09:50 |
|
baldr 11 May 2009, 13:47
Up to a conclusion, eh?
1. Paging is good. 2. Abstractions (like virtual memory) are considerably good. 3. Untimely use of paging is evil. 4. Flat x86-64 is really unreal. 5. To each it's own (should it be he/she?). Pun is intended. |
|||
11 May 2009, 13:47 |
|
revolution 11 May 2009, 14:03
Wow, only 3.5 months late into the debate
But your first point is not clear enough. Paging is useful, which is more important than just being good. |
|||
11 May 2009, 14:03 |
|
Azu 28 Jul 2009, 12:16
Paging is [b]evil[/b] and only useful with bloated garbage that takes way more memory then it should!
Disk access should be used only as persistent storage, not as random access memory! [img]http://a10.ac-images.myspacecdn.com/images01/49/l_66ec29615ebf1009fc5e6aad9276ad29.gif[/img][img]http://farm1.static.flickr.com/194/489588773_cbb22c0624.jpg[/img][img]http://deepgroup.files.wordpress.com/2009/05/exclamations1.jpg[/img][img]http://www.electricka.com/ETAF/_pseudo_components/alert_components/alert_images/warning_danger/Caution%202.jpg[/img][img]http://images.suite101.com/484764_com_953317_12576736.jpg[/img] Bloat is bad, see? [edit by Loco] The user was given the chance to edit the post but decided that Test Area-like content was appropriate here. Post edited... |
|||
28 Jul 2009, 12:16 |
|
MazeGen 28 Jul 2009, 16:00
Very nice pictures, Azu! You can remove them now.
|
|||
28 Jul 2009, 16:00 |
|
Azu 29 Jul 2009, 00:24
No they are integral examples in my argument that useless bloat is bad.
|
|||
29 Jul 2009, 00:24 |
|
neville 29 Jul 2009, 06:55
I can't see the pics, but I agree 100% with your sentiments Azu - both incorporated into the design of my OS!
But why does X64 insist on paging in 64-bit mode! Its just plain dumb _________________ FAMOS - the first memory operating system |
|||
29 Jul 2009, 06:55 |
|
LocoDelAssembly 29 Jul 2009, 14:24
If really interested, just press quote button on his post and then preview...
|
|||
29 Jul 2009, 14:24 |
|
Borsuc 29 Jul 2009, 18:59
I disabled pagefile on my computer
|
|||
29 Jul 2009, 18:59 |
|
Pirata Derek 28 Aug 2009, 07:58
I've a driver that can disable PAGING from Protected Mode for few seconds,
but when re-enabling paging sometime it causes error and sometime no. It's still a proof of concept until i terminate it. |
|||
28 Aug 2009, 07:58 |
|
Goto page Previous 1, 2, 3, 4 < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.