Author Topic: QT5 simplebrowser  (Read 125018 times)

Remy

  • Hero Member
  • *****
  • Posts: 645
  • Karma: +9/-1
    • View Profile
Re: QT5 simplebrowser
« Reply #15 on: November 13, 2020, 11:22:19 am »
Can someone enlighten me why I would use the new highmem at all ? It does the very same thing as all the highmems that already exist but potentially it does them faster.
But it is a one time action to mark DLL code (and data) segments to load high. The change is persistent. You do not do it over and over again.

"The change is persistent."  Sure it is

'You do not do it over and over again.'  right, One time is enough

As you know, there is an issue into OS/2. When an application loads the dlls above 512 and when the application is closed, the dlls are unloaded but the corresponding memory range is than unusable... To prevent this, having an alltime active background process just loading the highmem dlls prevents the dlls to be unloaded and preserves the high storage space.   

Lars

  • Hero Member
  • *****
  • Posts: 1271
  • Karma: +65/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #16 on: November 13, 2020, 11:54:35 am »
For me, it's just the utility I'm used to to do the marking. Qt5WebC.dll is 243 MBs in size and it seemed to be a candidate to be marked high. I did first run it on my ram drive, formatted as HPFS and marking it high worked. After a trp and losing my ram drive due to having use the power button to reboot, I tried it on a JFS volume and it would hang the system.

I see, but this is not a bug introduced by the use of the highmem tool but rather a bug in the OS memory management to properly deal with module objects (code or data) loaded into high memory which, at least from what you are reporting, even relates to the module loading process (where a file is read from disk and its contents loaded into memory).

Was the JFS volume a volume on a hard disk or also on the RAM drive ? If it was on the hard disk, that is really intimidating as it would indicate that even the IFS can introduce a problem in module load. If it was on a RAM drive, I'd more suspect that the RAM drive's use of memory (doing all those tricks to make memory above the 4GB physical address boundary accessible) interferes with the OS's provision of high memory.

All the highmem tools do the same: set some bits in the executable header that set segment properties.

Roderick Klein

  • Hero Member
  • *****
  • Posts: 655
  • Karma: +14/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #17 on: November 13, 2020, 01:12:27 pm »
Older versions of highmem.exe read the complete DLL when changing the DLL. And it seems this happens on JFS volumes the system hangs.
The new version of highmem fixes this as it only needs to modify the first part of the binary.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: QT5 simplebrowser
« Reply #18 on: November 13, 2020, 05:14:49 pm »
Older versions of highmem.exe read the complete DLL when changing the DLL. And it seems this happens on JFS volumes the system hangs.
The new version of highmem fixes this as it only needs to modify the first part of the binary.

Exactly. the hang was on a JFS formatted hard drive partition when it was reading in the DLL to mark it. I've seen the same behaviour marking xul.dll but more sporadically and often a crtl-c would kill the highmem process.

Dmitriy Kuminov

  • Newbie
  • *
  • Posts: 28
  • Karma: +8/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #19 on: November 13, 2020, 09:31:46 pm »
Hey, just my few cents. Stuff in /test is surely not for general public. So no bug reports etc. are accepted for that. The new highmem fixes some nasty bug in DosRead on JFS which hangs the system if an app tries to load a few hundred megabytes in one go. It's available in the exp repo as RPM now BTW. And you should NOT mark LIBCN0.DLL or LIBCX0.DLL for loading high — it will break virtually everything on your system.

As for the rest, Chromium behaves really faster and smoother here than Firefox in many situations (especially on heavy JS sites) and in general produces lesser CPU load. YouTube playback is slow not because of JS slowness or such, it's because of some incorrect time scale interpretation somewhere on the pipeline, it's just "ticks" 1 ms per 1 s or so. HTML5/JS animations themselves run in the right time scale (e.g. on qt.io). To be sorted out. But again, this is not for general use yet (although it already can do what FF can not since long - e.g. visiting online banking sites etc.). Please stay tuned and consider a donation to BWW if you want to see it ready for general use.
« Last Edit: November 13, 2020, 09:33:26 pm by Dmitriy Kuminov »
CPO of bww bitwise works GmbH

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1317
  • Karma: +26/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #20 on: November 13, 2020, 11:08:24 pm »
Hello Dimitriy,

...The new highmem fixes some nasty bug in DosRead on JFS which hangs the system if an app tries to load a few hundred megabytes in one go. It's available in the exp repo as RPM now BTW. And you should NOT mark LIBCN0.DLL or LIBCX0.DLL for loading high — it will break virtually everything on your system...

Current 1.0.0 release is available in highmem-1.0.1-1.oc00.pentium4, will you continue with those updates as well, or will highmem.exe transition to the RPM package...OR...did you mean to say that the new highmem.exe is available as highmem-1.0.x-1.oc00.pentium4 RPM package on the EXP repo?

Sorry, may seem silly, but better to clarify as opposed to assuming anything. I suspect you meant the updated highmem RPM package as opposed to rolling it into the base RPM RPM package.

Dariusz Piatkowski

  • Hero Member
  • *****
  • Posts: 1317
  • Karma: +26/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #21 on: November 13, 2020, 11:59:13 pm »
Just answered my own question...there is an updated highmem RPM package out there...

Hello Dimitriy,

...The new highmem fixes some nasty bug in DosRead on JFS which hangs the system if an app tries to load a few hundred megabytes in one go. It's available in the exp repo as RPM now BTW. And you should NOT mark LIBCN0.DLL or LIBCX0.DLL for loading high — it will break virtually everything on your system...

Current 1.0.0 release is available in highmem-1.0.1-1.oc00.pentium4, will you continue with those updates as well, or will highmem.exe transition to the RPM package...OR...did you mean to say that the new highmem.exe is available as highmem-1.0.x-1.oc00.pentium4 RPM package on the EXP repo?

Sorry, may seem silly, but better to clarify as opposed to assuming anything. I suspect you meant the updated highmem RPM package as opposed to rolling it into the base RPM RPM package.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4713
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: QT5 simplebrowser
« Reply #22 on: January 20, 2021, 09:40:42 pm »
Hi

Today I installed the "Simple Browser proof of concept" announced by Bitwise.

Quote
Proof of concept:
We released a proof of concept browser, which is limited in functionality. It lacks bookmarks, printing and more. This browser is to demonstrate, that a lot more websites are working. The Otter Browser in the end will have more functionality of course.
Here you can download the latest browser version. In the 7z download is a readme.txt file with details how run run the browser.
In order to run it, you need to update libc, libcx, libevent and ffmpeg-libs from Netlabs experimental repository.

I also installed "minizip" from the rpm/yum .

I get this error "SYS1804: The system cannot find the file XSLT1."

Which package has that DLL?

Regards
« Last Edit: January 20, 2021, 09:44:02 pm by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

roberto

  • Hero Member
  • *****
  • Posts: 810
  • Karma: +3/-6
    • View Profile
Re: QT5 simplebrowser
« Reply #23 on: January 20, 2021, 10:55:13 pm »
You need
libxslt

saludos

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: QT5 simplebrowser
« Reply #24 on: January 21, 2021, 12:48:24 am »
Also don't forget ffmpeg-legacy-libs or whatever it is called for Mozilla.

Igor

  • Jr. Member
  • **
  • Posts: 99
  • Karma: +12/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #25 on: January 21, 2021, 01:02:54 am »
Unfortunately, it does not load ...

Code: [Select]
Loading DLL 'libcx0' --> C:\USR\LIB\LIBCX0.DLL.
Loading DLL 'libcn0' --> C:\USR\LIB\LIBCN0.DLL.
Loading DLL 'stdcpp6' --> C:\USR\LIB\STDCPP6.DLL.
Loading DLL 'Qt5Core' --> C:\USR\LIB\QT5CORE.DLL.
Loading DLL 'Qt5Wdgt' --> C:\USR\LIB\QT5WDGT.DLL.
Loading DLL 'Qt5WebW' --> NOT loaded!
Unable to load DLL 'Qt5WebW'.  DosLoadModule returned: 2
OS/2 reports 'EVNT217' contributed to the failure.
Loading DLL 'Qt5Gui' --> C:\USR\LIB\QT5GUI.DLL.
Loading DLL 'Qt5Net' --> C:\USR\LIB\QT5NET.DLL.
Loading DLL 'Qt5WebC' --> NOT loaded!
Unable to load DLL 'Qt5WebC'.  DosLoadModule returned: 2
OS/2 reports 'EVNT217' contributed to the failure.
Loading DLL 'gcc1' --> C:\USR\LIB\GCC1.DLL.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4713
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: QT5 simplebrowser
« Reply #26 on: January 21, 2021, 02:09:28 am »
Hi

I updated/installed:  libc, libcx, libevent, ffmpeg-libs, libxslt, minizip.

If I run SimpleBrowse.exe directly (processor spikes up), it freeze my VM once I put a URL and press "enter".

But I tried, reading the readme, with "sh.exe run.sh" it worked.

Regards
« Last Edit: January 21, 2021, 02:15:30 am by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: QT5 simplebrowser
« Reply #27 on: January 21, 2021, 04:33:58 am »
@Igor, looks like you don't have libevent installed.
@Martin, likely the important part is QTWEBENGINE_CHROMIUM_FLAGS=--single-process. Eventually, with luck, each tab will run in its own process so a crash will only take out the one tab.

Igor

  • Jr. Member
  • **
  • Posts: 99
  • Karma: +12/-0
    • View Profile
Re: QT5 simplebrowser
« Reply #28 on: January 21, 2021, 12:05:24 pm »
@Igor, looks like you don't have libevent installed.
Thank you very much! Started!
Please remove broken AVX support!
Code: [Select]

______________________________________________________________________

 Exception Report - created 2021/01/21 13:57:58
______________________________________________________________________

 OS2/eCS Version:  2.45
 # of Processors:  4
 Physical Memory:  3542 mb
 Virt Addr Limit:  2752 mb
 Exceptq Version:  7.11.3-shl (Jul  5 2016)

______________________________________________________________________

 Exception C0000005 - Access Violation
______________________________________________________________________

 Process:  I:\3\SIMPLEBROWSER.EXE (10/13/2020 18:33:21 1,837,431)
 PID:      38 (56)
 TID:      01 (1)
 Priority: 200

 Filename: C:\USR\LIB\QT5GUI.DLL (10/18/2019 07:37:27 3,996,145)
 Address:  005B:16948443 (0001:00008443)
 Cause:    Unknown access fault

______________________________________________________________________

 Failing Instruction
______________________________________________________________________

 16948435  JZ      0x16948581       (0f84 46010000)
 1694843B  MOV     EBX, [ESP+0x2c]  (8b5c24 2c)
 1694843F  MOV     ESI, EAX         (89c6)
 16948441  XOR     EDX, EDX         (31d2)
 16948443 >DB 0xc5                  (c5)
 16948444  STD                      (fd)
 16948445  OUTSD                    (6f)
 16948446  AND     EAX, 0x1694d4b0  (25 b0d49416)

______________________________________________________________________

 Registers
______________________________________________________________________

 EAX : 20060F80   EBX  : 2004CB60   ECX : 00000090   EDX  : 00000000
 ESI : 20060F80   EDI  : 00000089
 ESP : 0083DB10   EBP  : 0083DB88   EIP : 16948443   EFLG : 00010246
 CS  : 005B       CSLIM: FFFFFFFF   SS  : 0053       SSLIM: FFFFFFFF

 EAX : read/write memory allocated by LIBCN0
 EBX : read/write memory allocated by LIBCN0
 ECX : not a valid address
 EDX : not a valid address
 ESI : read/write memory allocated by LIBCN0
 EDI : not a valid address

______________________________________________________________________


roberto

  • Hero Member
  • *****
  • Posts: 810
  • Karma: +3/-6
    • View Profile
Re: QT5 simplebrowser
« Reply #29 on: January 21, 2021, 06:21:42 pm »
Hello
The first tests with this browser I really liked, but if they have put it here, I understand that it is for us to comment on the bugs that we have found. But on the other hand it gives me the feeling that this is in preparation and many of the faults are already controlled. My question should we report the bugs? or it is not necessary.
saludos