Go to the FreeLists Home Page Home Signup Help Login
 



[openbeos] || [Date Prev] [09-2001 Date Index] [Date Next] || [Thread Prev] [09-2001 Thread Index] [Thread Next]

[openbeos] Re: memory beyond 1 gig

  • From: "Marcus Overhagen" <dos4gw@xxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Fri, 7 Sep 2001 14:08:31 -0700
On Thu, 06 Sep 2001 06:00:21 PM, "p willis" <p.willis@xxxxxxxxx> wrote:

>It's pretty easy to make a flat 32 bit memory model that accesses the full 4
>gigs *plus* with some additional virtual paging code the model can be extended 
>to
>super-pages or 4 gig blocks (or parts of blocks) swapped from the HD.

I'm not sure if you understand the concept of virtual memory, and the problem.
Each application has it's own 4GB virtual address space, and into this virtual 
space
physical memory is mapped in (or harddisk memory, paged in/out), while Be 
decided 
to use some space in the virtual adresses of each process for the kernel.

The problem seems to be that the current BeOS kernel's internal data structures 
are not
large enough to support more than 1 GB physical memory currently.


>Just make sure to use 64 bit counters in all your structs so that when BeOS
>requires porting to wider architecture the underlying framework can support
>the move.
No, don't do this. continue to use normal pointers.
While a void * is now 32 bit, it will be 64 bit then.

But please stop casting a pointer into an int, or worse, into an int32.
This would break your program one pointers get 64 bits wide.


regards
Marcus 





[ Home | Signup | Help | Login | Archives | Lists ]

All trademarks and copyrights within the FreeLists archives are owned by their respective owners.
Everything else ©2007 Avenir Technologies, LLC.