Author Topic: OS/4 kernel and extended KEE  (Read 35607 times)

David McKenna

  • Full Member
  • ***
  • Thank You
  • -Given: 7
  • -Receive: 7
  • Posts: 156
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #15 on: June 19, 2013, 05:32:18 pm »
 I think I determined the origin of the POPUPLOG from DMISL...

 If I delete a FOLDER object from the workplace shell, it goes into the trashcan (I use Kai Sommerfeld's TrashCan 2.7.1). When I empty the trashcan (right click, choose 'Empty'), the POPUPLOG is created and trash is emptied. This is 100% repeatable when using the OS4 kernel (and never happens with the OS/2 kernel). If I then delete another folder object, then empty the trashcan no popuplog is created, but the trashcan doesn't empty and eventually (1 - 2 minutes) the WPS hangs. This may be what caused my original hang. Deleting files works fine, it is only folders that cause this.

 Another example: if I delete multiple folders, then empty the trashcan, the POPUPLOG is created, one folder is erased, but the others remain in the trashcan and eventually the WPS hangs.
« Last Edit: June 19, 2013, 05:59:10 pm by David McKenna »

walking_x

  • Jr. Member
  • **
  • Thank You
  • -Given: 3
  • -Receive: 6
  • Posts: 93
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #16 on: December 31, 2013, 08:13:43 am »
I gave 4033 a try on my Lenovo ThinkPad L530. When I select any option from OS2LDR, it starts, the screen goes black for about half a second, and the machine reboots.
Spent some time to find the source of this reboot on EFI PC, when all memory is visible....
And think, I found the issue - at least on available B75 motherboard 3.5Gb is visible and everything is ok - but only with QSINIT loader.

IBM code for PC memory init is ugly not only in OS2LDR, but in kernel too ;)

Second note: some kind of New Year gift available in fresh QSINIT builds - PAE ram disk :)
ADD driver, which subst all memory above 4Gb limit as another one HDD ;)

But, a bad news too... QSINIT is incompatible with later ACPIs. I tried to contact with David, but without answer... So OR ACPI + SMP OR full 3.5 Gb + RAM disk now... :(

And all of this - does not require OS/4 kernel ;) QSINIT can load any kernel, including Warp 3.

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #17 on: December 31, 2013, 10:41:56 pm »
Quote
And think, I found the issue - at least on available B75 motherboard 3.5Gb is visible and everything is ok - but only with QSINIT loader.

Well, it also works on my Lenovo ThinkPad L530. This is only an initial test, but I do have almost 3 GB of memory available, out 4 GB total (I think it is running into a bunch of memory holes at about 3 GB). MUCH better than 512 meg.  :)

I did have to REM the ACPI stuff, or it just hangs at boot time. OS2APIC.PSD initializes both processors, but power control is pretty important on a laptop. The question now is, whether it is your work that needs to be fixed, or if it is ACPI that needs to be fixed. Possibly a combination.

I also need to try the RAMDISK, but not right now. If it works, I may have to buy more memory.   :D

Well done, and THANKS!   :D :D :D :D

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #18 on: January 01, 2014, 08:42:47 am »
WOW! You do good work. The RAMDISK works perfectly, and gives me a 500 MB (or so) RAMDISK to work with, using memory that would otherwise be useless. It gets formatted as FAT, which is not ideal (JFS would be better), but it certainly shows that it can be done.

If my math works, that still leaves about 500 MB of memory unaccounted for, but this is certainly better than what I had before. I don't see much point in trying to put the swap file on the RAMDISK. I have never seen the swap file used, since I had 2 GB of physical memory. I need to do more testing, but the TEMP directory seems to work okay with it.

The main problem is that SysView does nothing. Even Alt-F3 is ignored. I need to Ctrl-Alt-Del to get out of it. That means that I can't start the RAMDISK automatically.

walking_x

  • Jr. Member
  • **
  • Thank You
  • -Given: 3
  • -Receive: 6
  • Posts: 93
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #19 on: January 01, 2014, 12:05:50 pm »
It gets formatted as FAT, which is not ideal (JFS would be better), but it certainly shows that it can be done.
JFS too large for common memory size ;) HPFS may be, but it requires HPFS format implementation in QSINIT - a bit complex task ;)

Quote
The main problem is that SysView does nothing. Even Alt-F3 is ignored. I need to Ctrl-Alt-Del to get out of it. That means that I can't start the RAMDISK automatically.
This app written on Turbo Vision, common keys = F10 - menu, Alt-X - exit  (help is incomplete ;))
Or keyboard not working at all? This can be too, EFI BIOS - is a full crate of bugs ;) It can send slightly wrong keyboard codes, for example...

The question now is, whether it is your work that needs to be fixed, or if it is ACPI that needs to be fixed. Possibly a combination.
Problem can be fixed only with David's help ...  He patch something or read from hardcoded offset in IBM`s OS2LDR... And when OS2LDR is not IBM's - it goes crazy...

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #20 on: January 01, 2014, 06:17:23 pm »
Quote
JFS too large for common memory size ;) HPFS may be, but it requires HPFS format implementation in QSINIT - a bit complex task ;)

It is probably not that complex. Perhaps Jan van Wijk (of DFSEE fame), could suggest something, but there is no rush to get it done. Personally, I have quit using HPFS, and use JFS instead. The main problem with FAT is the (lack of) long name support, and FAT32 is very slow (although using memory as the media should speed it up).

I haven't tried it, but is it possible to format the drive?

Quote
Or keyboard not working at all?

The keyboard seems to be okay until I start SysView, then nothing works, except holding the power off button for more than 4 seconds. I am not sure if SysView gets completely initialized, or not. It looks okay. I need to try it on my Lenovo ThinkPad T510, which has slightly older hardware, and no UEFI.

Quote
Problem can be fixed only with David's help

I expect that David is still working to get eCS 2.2 beta III out the door (or he is taking a few days to regain a bit of sanity). I have always found that he is willing to work with others, but he does have priorities, and like the rest of us, only 24 hours in a day.   :(

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #21 on: January 01, 2014, 08:18:02 pm »
Quote
Quote

    Or keyboard not working at all?

The keyboard seems to be okay until I start SysView, then nothing works, except holding the power off button for more than 4 seconds. I am not sure if SysView gets completely initialized, or not. It looks okay.

Interesting. After doing a cold start, I am not able to use the Function keys at the shell command line. However, I am now able to use F10 in SysView, and then it seems to work as expected, until I try to close it. Then, it is hung again, although F10 gets me back to the menu, where I can tell it to close, and it hangs again.

Quote
I haven't tried it, but is it possible to format the drive?

Answering myself... Yes you can format it (JFS), but then the drive is not usable.

Anyway, I can now boot eCS 2.2 beta II, on my Lenovo ThinkPad L530, and use about 3 GB of memory in the normal way, and I can use another 501 MB, of otherwise useless memory, as a RAMDISK. How well that works, remains to be seen, but I have seen no problems, yet.

It seems that there are a few details to work out, but it is a very impressive first release, and it seems to solve a very bad problem for OS/2.

Thanks again...

Dave Yeo

  • Hero Member
  • *****
  • Thank You
  • -Given: 6
  • -Receive: 70
  • Posts: 909
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #22 on: January 01, 2014, 08:51:44 pm »
It gets formatted as FAT, which is not ideal (JFS would be better), but it certainly shows that it can be done.
JFS too large for common memory size ;) HPFS may be, but it requires HPFS format implementation in QSINIT - a bit complex task ;)

What about using the ramfs filesystem, probably with modifications? The file system works for many uses and it is considered public domain.

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #23 on: January 01, 2014, 11:04:25 pm »
Quote
What about using the ramfs filesystem, probably with modifications? The file system works for many uses and it is considered public domain.

RAMFS would probably work, but I don't think it could be used with the swap file. That is mostly academic anyway, since there would, presumably, be about 3 GB of real memory, which pretty well negates the need for a swap file.

Quote
I need to try it on my Lenovo ThinkPad T510, which has slightly older hardware, and no UEFI.

Well, it is not as important on the T510, because it can use about 3 GB of memory (4 GB total) anyway, but adding the RAMDISK works great, and it uses close to 1GB, of otherwise unusable memory.

The main problem, on both laptops, is that they run hot, without ACPI to keep them throttled back, and I am sure that battery life will be shorter. Hopefully, that problem can be resolved.

Some basic testing of the RamDisk shows that the performance is quite good. Both systems are using the FAT file system for the RamDisk.

walking_x

  • Jr. Member
  • **
  • Thank You
  • -Given: 3
  • -Receive: 6
  • Posts: 93
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #24 on: January 02, 2014, 08:38:01 am »
RAMFS would probably work, but I don't think it could be used with the swap file.
RAMFS uses kernel memory manager to get/release memory, but this is impossible for memory above 4Gb.
And another reason - i'm planning to add boot from this disk - like Veit's memdisk do.

Quote
Some basic testing of the RamDisk shows that the performance is quite good. Both systems are using the FAT file system for the RamDisk.
About sysview & keyboard... It is a great chance of EFI BIOS guilt ;) On my EFI motherboard at one of 3-5 warm reboots, text mode becomes monochrome! ;) Space key was not functional in eCS start screen - until BIOS update - and so on ;) Will try to change Turbo Vision to be more "friendly" to wrong key codes.

Answering myself... Yes you can format it (JFS), but then the drive is not usable.
Yes, JFS uses STRAT2 commands, but I did not realize it. ADD driver is simple (memdisk was used as reference). May be I'll fix it.

But found more funny thing yesterday. FAT32 trap D, so disable FAT32 formatting of ram disk temporary, until investigate....
This is not disk format (I've used FAT32 partitions, formatted in QSINIT with the FAT32.IFS).
I.e. large ram disk now will be unformatted, but this can be avoided by limiting disk size to 2Gb (to makes it FAT).
« Last Edit: January 02, 2014, 08:40:02 am by walking_x »

RBRi

  • Newbie
  • *
  • Thank You
  • -Given: 2
  • -Receive: 0
  • Posts: 15
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #25 on: January 02, 2014, 10:40:02 am »
Sounds great, and if you get it working with the latest ACPI driver form David i will give it a try.

BTW: Maybe FullFat can be used as basis (http://code.google.com/p/fullfat/) for the fat file system impl.

  RBRi

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #26 on: January 02, 2014, 06:59:55 pm »
Quote
RAMFS uses kernel memory manager to get/release memory, but this is impossible for memory above 4Gb.
And another reason - i'm planning to add boot from this disk - like Veit's memdisk do.

Having worked with this a bit more, I think that FAT will do the job. I am not so sure that FAT32 has any advantage, other than being able to use more than 2 GB of memory. Since the disk is only temporary, one would not want to be storing modifiable data files, that need to be saved permanently, on it anyway, although there may be reasons to load it up at boot time, with often used programs, or static data. FAT32 also has the problem of being slow, although with memory as the media, it should be okay. I am pretty sure that OS/2 could not boot from FAT32, because the driver is not loaded in time.

Quote
About sysview & keyboard

It does appear that UEFI does something bad. SysView is much more consistent on the T510 (no UEFI), while it works sometimes on the L530. It would be good to add "help text", at the bottom of the screen, suggesting that F10 will enable the menu. The "Alt-X" text is grayed out, and doesn't seem to work when the program initially starts.

Quote
But found more funny thing yesterday. FAT32 trap D, so disable FAT32 formatting of ram disk temporary, until investigate....

That is likely to be a flaw in the FAT32 IFS, or more likely in the FAT32 cache. I find that FAT32 is much more reliable, and faster, when I REM the CACHEF32.EXE line in CONFIG.SYS. Using it with a memory disk, and cache, doesn't make a lot of sense anyway. That could also be true for FAT.

Quote
And another reason - i'm planning to add boot from this disk - like Veit's memdisk do.

Interesting thought. Of course, it would need to be in FAT format.

Quote
RAMFS uses kernel memory manager to get/release memory, but this is impossible for memory above 4Gb.

Not "impossible", just difficult. You would need to implement a new memory manager to mange memory above 4 GB, and make a new API, or expand on a current API, to access it. That memory would not be usable in the normal way, but it could be used by programs specifically written, or modified, to use it. You have the tools to access the memory, you just need a buffer in "real" memory to allow normal program access to the data, and a way to track the memory allocation. Basically, it would be a new memory pool, for private data, outside of the normal 512 meg that is available. That would be a partial cure for the "shared memory" problem.

Quote
Sounds great, and if you get it working with the latest ACPI driver form David i will give it a try.

It may be worth your time to try it anyway. It is not difficult to switch back to normal operation. Just set it up with the new OS2LDR, REM the ACPI stuff (add OS2APIC.PSD, for SMP support), and try it. To go back, put the original OS2LDR back, and enable ACPI (disable OS2APIC, if used). Leaving the new support in the root of the drive, is a little messy, but not harmful. Be sure to have an alternate boot system, so you can put it back to normal, if it won't boot.

Andy Willis

  • Full Member
  • ***
  • Thank You
  • -Given: 0
  • -Receive: 8
  • Posts: 128
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #27 on: January 02, 2014, 10:53:36 pm »
I'll have to look at giving this a shot... I had suggested somewhere to use the memory above 4G as a RAM disk so I like the idea :)
Those trying this and having heat/battery concerns, you might try the hlt driver:
ftp://ftp.netlabs.org/incoming/hltdriver.zip
It does not require acpi to run... it will make the cpu monitor show 100% CPU usage (at least the single thread version... the others have hung systems with more than 2 CPUs) but the CPU "usage" is akin to the System Idle of the Windows task manager but unlike in windows where the System Idle is not factored into the CPU usage it is with our CPU monitors as there was no reason to remove it when they were created. 

walking_x

  • Jr. Member
  • **
  • Thank You
  • -Given: 3
  • -Receive: 6
  • Posts: 93
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #28 on: January 03, 2014, 01:45:58 pm »
BTW: Maybe FullFat can be used as basis (http://code.google.com/p/fullfat/) for the fat file system impl.
I've used FatFS - with the same features, but BSD type license ;)

It does appear that UEFI does something bad.
Sometimes such problems solved in BIOS updates. I saw at least 2 motherboards (asus & intel) - with keyboard handler bugs and both have a fix.

Quote
That is likely to be a flaw in the FAT32 IFS, or more likely in the FAT32 cache.
Fixed :) As minor effect - JFS now works too ;)
At least one problem still exists - FAT32.IFS do not allow to format own partitions, but this is the one of its "common features" ;) By the way, one of keys in ram disk creation command allows to skip FAT32 format.

Quote
Not "impossible", just difficult. You would need to implement a new memory manager to mange memory above 4 GB, and make a new API, or expand on a current API, to access it.
Yes, difficult :) And such feature still be "bound" to loader (because it makes PC memory list with BIOS help).

Doug Bissett

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 32
  • Posts: 840
    • View Profile
Re: OS/4 kernel and extended KEE
« Reply #29 on: January 03, 2014, 07:09:59 pm »
Quote
Sometimes such problems solved in BIOS updates. I saw at least 2 motherboards (asus & intel) - with keyboard handler bugs and both have a fix.

Both of my laptops are at the latest BIOS (unless there was something new, in the last week, or so). They are Intel boards, and processors. If I open SysView on the T510, I can use Alt-X to close it, immediately, and it always works. On the L530 (with UEFI), Alt-X does nothing, unless some other SysView window is open. Once it gets back to no open windows, Alt-X usually does nothing, but sometimes it does cause it to close. F10 doesn't always work either, but it does work, most of the time.

Quote
Fixed :) As minor effect - JFS now works too ;)

GREAT. More testing to do...    ;D

I found another "problem" on the L530. If I use "RAMDISK R:" (from the shell), I get a 501 MB disk created above the 4 GB mark. If I read the instructions properly, I should be able to do "RAMDISK /MIN=800 R:" and it should take some memory from below the 4 GB mark, and give me a total size of 800 MB. This works on the T510 (using MIN=1200), but on the L530, it tells me that there is no memory available (or something like that). Putting the command in QSSetup.CMD, and booting, results in no RAMDISK being created. (Probably another UEFI trick).

Now, if David A. can find a few minutes to help sort out the ACPI problem..........