Author Topic: AOS RAM Disk  (Read 13311 times)

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
AOS RAM Disk
« on: September 25, 2018, 06:43:44 pm »
I have read that the AOS RAM disk uses memory above the 4 MB limit - meaning on a 8 MB machine I could assign 4MB to a ram disk and not impact any OS/2 applications or the operating system itself.

Yet the Low and High memory check boxes and available amounts don't seem to indicate that is true.

Does anyone know where RAM disk takes memory? And it it does use memory about the 4 MB limit, how does it do that?

Valery Sedletski

  • Sr. Member
  • ****
  • Posts: 368
  • Karma: +2/-0
    • View Profile
Re: AOS RAM Disk
« Reply #1 on: September 25, 2018, 08:00:31 pm »
I always thought, it is a 4 GB, not 4 MB limit. Am I not right?

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
Re: AOS RAM Disk
« Reply #2 on: September 25, 2018, 08:13:58 pm »
Yes Valery, you are correct. My mistake. 4 GB limit.

David Graser

  • Hero Member
  • *****
  • Posts: 877
  • Karma: +87/-0
    • View Profile
Re: AOS RAM Disk
« Reply #3 on: September 25, 2018, 08:47:27 pm »
Feel free to correct me if I am wrong.  I believe one needs the OS/4 kernel and the QSINIT loader to utilized RAM above 4 GB. 

OS4User

  • Sr. Member
  • ****
  • Posts: 406
  • Karma: +10/-0
    • View Profile
Re: AOS RAM Disk
« Reply #4 on: September 25, 2018, 08:53:35 pm »
Feel free to correct me if I am wrong.  I believe one needs the OS/4 kernel and the QSINIT loader to utilized RAM above 4 GB.

OS/4 kernel (and emsFS.ifs)   _OR_  the  QSINIT (and some .ADD driver)

xynixme

  • Guest
Re: AOS RAM Disk
« Reply #5 on: September 25, 2018, 09:14:45 pm »
I always thought, it is a 4 GB, not 4 MB limit. Am I not right?
You may not be right indeed: https://en.wikipedia.org/wiki/Gibibyte... :P

RickCHodgin

  • Guest
Re: AOS RAM Disk
« Reply #6 on: September 25, 2018, 09:25:28 pm »
Does anyone know where RAM disk takes memory? And it it does use memory about the 4 GB limit, how does it do that?

According to Arca Noae's Section 6.4.3 of README

Code: [Select]
6.4.3  RAM Disk

The new kernel supports a RAM disk (portion of memory which acts like a
physical disk and is assigned a drive letter). This RAM disk may be configured
to use memory above the 4GB boundary, normally limiting 32-bit operating
systems. Thus, on newer systems with large amounts of memory (8, 16, 24, 32, or
even 64GB), the space above 4GB may be configured for use as a RAM disk.

Arca Noae provides a utility for configuring up to two such RAM disks. The RAM
Disk applet located in the System Setup folder provides guidance and
configuration of such memory constructs.

32-bit x86-based CPUs are able to access up to 64 GB of RAM per physical core using something called Physical Address Extensions (PAE) allowing extra information in the paging table for 36-bits of physical address space rather than just 32-bits.  Each physical process still only accesses 4 GB of virtual addresses, but they can be mapped anywhere in the 64 GB supported.

xynixme

  • Guest
Re: AOS RAM Disk
« Reply #7 on: September 25, 2018, 10:05:40 pm »
Each physical process still only accesses 4 GB of virtual addresses

Not anymore, see the previous link to Wikipedia.

RickCHodgin

  • Guest
Re: AOS RAM Disk
« Reply #8 on: September 25, 2018, 10:14:25 pm »
Each physical process still only accesses 4 GB of virtual addresses

Not anymore, see the previous link to Wikipedia.

Do you mean it should be 4 GiB?

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4805
  • Karma: +99/-1
    • View Profile
Re: AOS RAM Disk
« Reply #9 on: September 26, 2018, 12:10:02 am »
Feel free to correct me if I am wrong.  I believe one needs the OS/4 kernel and the QSINIT loader to utilized RAM above 4 GB.

ArcaOS comes with a modified QSINIT as os2ldr, which helps with memory holes that the IBM os2ldr can't handle and gives access to the high memory through PAE.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4805
  • Karma: +99/-1
    • View Profile
Re: AOS RAM Disk
« Reply #10 on: September 26, 2018, 12:15:25 am »
I have read that the AOS RAM disk uses memory above the 4 MB limit - meaning on a 8 MB machine I could assign 4MB to a ram disk and not impact any OS/2 applications or the operating system itself.

Yet the Low and High memory check boxes and available amounts don't seem to indicate that is true.

Does anyone know where RAM disk takes memory? And it it does use memory about the 4 MB limit, how does it do that?

I found that I had to enable some BIOS setting here before I could access the high memory. I forget the exact one but it wasn't obviously related, might have been the VTx for virtual machines.
It is actually memory above about 3.5 GB, depending on MB. Currently with 4GB of ram, I have 768 MBs that are only usable as a ram disk. It is also possible to use lower memory in the ram disk as well.
Make sure you enable it and reboot so it can figure out your memory as well.

Remy

  • Hero Member
  • *****
  • Posts: 646
  • Karma: +9/-1
    • View Profile
Re: AOS RAM Disk
« Reply #11 on: September 26, 2018, 12:36:58 am »
Feel free to correct me if I am wrong.  I believe one needs the OS/4 kernel and the QSINIT loader to utilized RAM above 4 GB.

ArcaOS comes with a modified QSINIT as os2ldr, which helps with memory holes that the IBM os2ldr can't handle and gives access to the high memory through PAE.

I have 16GiB and 12GiB ram are used as RAM disk

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
Re: AOS RAM Disk
« Reply #12 on: September 26, 2018, 01:10:24 am »
I guess I am confused by the Ram Disk setup screen. I am using AOS

The screen shows two check boxes, with available memory next to them.
One check box says Low memory.
The other says High memory.

My laptop has 8 GB of RAM.

If "low memory" means everything below the 4 GB boundary,  and "high memory" means above the 4GB boundary, then the available memory shown next to the "high memory" check box should show 4 GBs.

If the "low memory" check box means conventional memory, and "high memory" means the memory between conventional and 4GB, then how do you select the memory above 4GB

Do anyone know how the Ram Disk setup thingy work?

Doug Clark

  • Sr. Member
  • ****
  • Posts: 307
  • Karma: +7/-1
    • View Profile
Re: AOS RAM Disk
« Reply #13 on: September 26, 2018, 02:19:43 am »
OK to answer my own question - based in the Ram Disk Memory Limits dialog

The low memory check box must mean all memory below 4gb
The high memory check box must mean all memory above 4gb

Something (BIOS video memory?) must be reserving a chunk of below 4GB memory, i.e. "low memory"

No matter what you do to the check boxes, the next time you open the Ram Disk setup thingy, both check boxes are checked. So the only way to know or check where the Ram Disk is being created is with a memory analyzer, or to look at os2ldr.cfg

Thanks guys for the answer about PAE.

I guess this means, in theory, it is possible for some of those memory hungry applications (FireFox, vBox) to also use memory above 4GB?

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4805
  • Karma: +99/-1
    • View Profile
Re: AOS RAM Disk
« Reply #14 on: September 26, 2018, 02:35:23 am »
It's still weird that you only show having 56 MB's of low available. Here I have 3250MB's low available and 768 MB high memory, which is close to your 848MB's. Why the memory above 4GB isn't showing I don't know, probably something to do with your BIOS. I take it that other operating systems see close to 8GB's?

About the 4 GB's. While the 32 bit x86 can access 4 GB's, some of it is mapped into the system hardware space, PCI cards, video memory and such claim address at the top of the 4GBs address space, in your case 848MBs. The low memory should show the rest of the 4GBs. All I can think of is an address hole (common on newer systems) low down in memory that is confusing HiDisk.

Note also that you can use low memory for the ram disk as well but then OS/2 can't use it.

Unluckily, without a lot more work, which will probably never happen, Firefox etc still can't use the high memory. You can put things like %TEMP% on the ram disk which will speed things up, and it is self cleaning. You can put the swap file there too and in theory run a bunch of processes that use lots of memory and it would swap. In practice, IBM seems to have used 32 bit variables in too many places for this to work.