Joe's OS/2 Tips - Number 1: Difference between revisions

From OS2World.Com Wiki
Jump to navigation Jump to search
No edit summary
Jugbogdan (talk | contribs)
mNo edit summary
 
(One intermediate revision by one other user not shown)
Line 5: Line 5:
;Abit of background about myself,
;Abit of background about myself,


I'am Joseph Mckinnon, I was introduced to OS/2 by Ernst Winter half
I'am Joseph Mckinnon, I was introduced to OS/2 by Ernst Winter half way through 1991. This seemed at the time like an ideal operating system for my requirements - Multi-tasking, solid and fast (ask my closest friends about my like for speed). I joined the Early Experience Program through Adrian Collings (Critial Software Designs).
way through 1991. This seemed at the time like an ideal operating
From that day on I enjoyed the system and went about making the Beta Code run faster than normal, since, as you all know, Beta code is always slower than the real thing, due to the amount of extra 'fail-safe' code built in to trap system errors.
system for my requirements - Multi-tasking, solid and fast (ask my
From this I've developed quite a good grounding in what things you should change to get the best.
closest friends about my like for speed). I joined the Early
Experience Program through Adrian Collings (Critial Software Designs).
From that day on I enjoyed the system and went about making the Beta
Code run faster than normal, since, as you all know, Beta code is
always slower than the real thing, due to the amount of extra
'fail-safe' code built in to trap system errors.
From this I've developed quite a good grounding in what things you
should change to get the best.


;Memory Requirements.
;Memory Requirements.


From the starting post, IBM's minimal requirements would make me lose
From the starting post, IBM's minimal requirements would make me lose my temper at the preformance, since 4 meg is just enough to boot the System, let alone run any real applications. Therefore, if you are considering to run OS/2 as the default operating system, I'd recommend for you to have at least 8 meg. This way you can realy use your system. Sure other companys may say that's too much for a normal user, I say Bull. As far as I'am concerned if I like what I use I prefer speed than to run with one foot in lead and the other in plaster.
my temper at the preformance, since 4 meg is just enough to boot the
System, let alone run any real applications. Therefore, if you are
considering to run OS/2 as the default operating system, I'd recommend
for you to have at least 8 meg. This way you can realy use your
system. Sure other companys may say that's too much for a normal
user, I say Bull. As far as I'am concerned if I like what I use I
prefer speed than to run with one foot in lead and the other in
plaster.


With 8 meg of RAM, you can run multiple applications at a reasonable
With 8 meg of RAM, you can run multiple applications at a reasonable
speed, with the defaults. But, if you have patience (or a very fast
speed, with the defaults. But, if you have patience (or a very fast
machine 486-50mhz) you maybe able to live with 4 meg, and put up with
machine 486-50mhz) you maybe able to live with 4 meg, and put up with
the delay in loading applications, and noise from your Harddrive being
the delay in loading applications, and noise from your Harddrive being
constantly accessed (Why's this, read on). Since OS/2 is an advanced
constantly accessed (Why's this, read on). Since OS/2 is an advanced
operating system it takes advantage of many of the memory techniques
operating system it takes advantage of many of the memory techniques
found on Mini's and Mainframes, one of features of OS/2 is it's virtual
found on Mini's and Mainframes, one of features of OS/2 is it's virtual
Line 40: Line 24:
;Virtual Memory.
;Virtual Memory.
This whole Idea is basically summed up in saying OS/2 uses the swapper
This whole Idea is basically summed up in saying OS/2 uses the swapper
file on your Harddrive as RAM to run programs in. Thus on a 4 meg
file on your Harddrive as RAM to run programs in. Thus on a 4 meg
machine, OS/2 is continuly 'thrashing' the harddrive, since there's
machine, OS/2 is continuly 'thrashing' the harddrive, since there's
not enough physical RAM to run both your applications and OS/2
not enough physical RAM to run both your applications and OS/2
Line 53: Line 37:


;Physical Memory.
;Physical Memory.
This, of course is the amount of RAM your system contains. OS/2 will
This, of course is the amount of RAM your system contains. OS/2 will
use every bit of the RAM it can find, without you having to tell it
use every bit of the RAM it can find, without you having to tell it
what to use.  This is a BIG step forward over other memory managers,
what to use.  This is a BIG step forward over other memory managers,
where you, the user (and generally inexperienced) has to sit down and
where you, the user (and generally inexperienced) has to sit down and
work out what areas to include and exclude. With OS/2's 32bit
work out what areas to include and exclude. With OS/2's 32bit
environment it's in theory capable of handling a GIG (4,096 Meg) of RAM!
environment it's in theory capable of handling a GIG (4,096 Meg) of RAM!
which of course is very hard to imagine.
which of course is very hard to imagine.
Line 63: Line 47:
;The CONFIG.SYS file
;The CONFIG.SYS file
After installation of your system, OS/2 will install a default, use
After installation of your system, OS/2 will install a default, use
for all systems, CONFIG.SYS file. At first glance, many new users
for all systems, CONFIG.SYS file. At first glance, many new users
will say 'Hey, I'am not going to even touch it', since it can range
will say 'Hey, I'am not going to even touch it', since it can range
from about 20 lines to 40, depending on what you installed, etc.
from about 20 lines to 40, depending on what you installed, etc.
Line 69: Line 53:
Inside this 'hideous creation' you'll find many interesting keywords
Inside this 'hideous creation' you'll find many interesting keywords
for OS/2, EG MAXWAIT, IFS DPATH and many more, all totally alein from
for OS/2, EG MAXWAIT, IFS DPATH and many more, all totally alein from
the DOS-World, DON'T BE SCARED OFF BY THESE THINGS, it's all in the
the DOS-World, DON'T BE SCARED OFF BY THESE THINGS, it's all in the
Online Help, take time to read about them, and experiement, otherwise
Online Help, take time to read about them, and experiement, otherwise
you'll never feel confident.
you'll never feel confident.


One thing that stands out is this line.
One thing that stands out is this line.
      PRINTMONBUFSIZE=132,132,132
;PRINTMONBUFSIZE=132,132,132
Which after you've read the online help (go on, that's what it's for),
Which after you've read the online help (go on, that's what it's for),
is the Printer Buffers, for LPT1,LPT2,LPT3. So why reserve memory for
is the Printer Buffers, for LPT1,LPT2,LPT3. So why reserve memory for
unused printer ports?  Plus, if you don't do much printing, why
unused printer ports?  Plus, if you don't do much printing, why
reserve so much, when the system can use the memory for either itself
reserve so much, when the system can use the memory for either itself
or for your apps. Therefore assign a value which suits your usage,
or for your apps. Therefore assign a value which suits your usage, mine is
mine is
       PRINTMONBUFSIZE=100,0,0
       PRINTMONBUFSIZE=100,0,0


      THREADS=256
;THREADS=256
Threads is the number of independent actions that OS/2 is expected to
Threads is the number of independent actions that OS/2 is expected to
manage. Each thread requires a small fraction of Physical RAM, thus
manage. Each thread requires a small fraction of Physical RAM, thus
if your not particularly running massive OS/2 Applications, which have
if your not particularly running massive OS/2 Applications, which have
many threads, then why reserve so many. In case you're worried about
many threads, then why reserve so many. In case you're worried about
not assigning enough, there is a small utility program called MAP57,
not assigning enough, there is a small utility program called MAP57,
which I'd recommend obtaining, since this will give you a report on
which I'd recommend obtaining, since this will give you a report on
the number of threads in use by your system (available from my BBS
the number of threads in use by your system (available from my BBS
Proteus OS/2 +61-7-800-3521). With this utility I was able to halve
Proteus OS/2 +61-7-800-3521). With this utility I was able to halve
my default setting to 128, which is still rather high, but it's better
my default setting to 128, which is still rather high, but it's better
to have more than required, otherwise your system's preformance will
to have more than required, otherwise your system's preformance will
Line 97: Line 80:
       THREADS=128
       THREADS=128


      IFS=D:\OS2\HPFS.IFS  /CACHE:64 /AUTOCHECK:DE /CRECL:4
'''IFS=D:\OS2\HPFS.IFS  /CACHE:64 /AUTOCHECK:DE /CRECL:4'''
 
This is the HPFS (High Preformance File System - Requires at least 6
This is the HPFS (High Preformance File System - Requires at least 6
meg Physical RAM) controlling line. It's very annoying to see OS/2
meg Physical RAM) controlling line. It's very annoying to see OS/2
install a 196k Cache on my system, because it's eating to much RAM for
install a 196k Cache on my system, because it's eating to much RAM for
my setup. My Hardrive has a 64k Cache built-in, so why tie up more
my setup. My Hardrive has a 64k Cache built-in, so why tie up more
physical RAM. I've had this set to 196, and other values, but after
physical RAM. I've had this set to 196, and other values, but after
much trial and error I found that 64k cache on the HD and the IFS give
much trial and error I found that 64k cache on the HD and the IFS give
me the same preformance results. Some people are setting this at
me the same preformance results. Some people are setting this at
incrediable settings, eg 1024k, etc which may have been great under DOS,
incrediable settings, eg 1024k, etc which may have been great under DOS,
but under OS/2 it's useless if you've only got limited memory available.
but under OS/2 it's useless if you've only got limited memory available.
Line 112: Line 96:
fast your harddrive may be.
fast your harddrive may be.


      PATH
;PATH
AS in DOS, this command along with the others (DPATH, LIBPATH, HELP)
AS in DOS, this command along with the others (DPATH, LIBPATH, HELP)
define where to look for files to run (or in the other ones, where to
define where to look for files to run (or in the other ones, where to
find specific files eg Help files). I find that people tend to throw
find specific files eg Help files). I find that people tend to throw
all their program paths into these statements, so that they can be in
all their program paths into these statements, so that they can be in
any directory and load that file. That's great, but why setup your
any directory and load that file. That's great, but why setup your
system like this, since your system searches all these paths until it
system like this, since your system searches all these paths until it
finds the application. Which, of course, is an un-necessary process.
finds the application. Which, of course, is an un-necessary process.
You should be making a program icon for that particular app, and
You should be making a program icon for that particular app, and
activiate with the mouse rather than at the command line, quicker and
activiate with the mouse rather than at the command line, quicker and
much more easier for other users. Plus that's what GUI's are designed
much more easier for other users. Plus that's what GUI's are designed
for.
for.


      AUTOFAIL and PAUSEONERROR
;AUTOFAIL and PAUSEONERROR
If you're like me, and hate seeing the Abort, Retry, Ignore responses
If you're like me, and hate seeing the Abort, Retry, Ignore responses
under DOS, you can make OS/2 take the easy way out for you. How
under DOS, you can make OS/2 take the easy way out for you. How
often have you got you drives mixed up and told DOS to go to drive B
often have you got you drives mixed up and told DOS to go to drive B
instead of A and the drive sits there looking at nothing (that is of
instead of A and the drive sits there looking at nothing (that is of
Line 135: Line 119:
       D:\>b:
       D:\>b:
       SYS0015: The system cannot find the drive specified.
       SYS0015: The system cannot find the drive specified.
 
;MAXWAIT
      MAXWAIT
Provides OS/2 the ability to change priority settings of a thread to a
Provides OS/2 the ability to change priority settings of a thread to a
higher number after it hasn't recieved processor attention after a
higher number after it hasn't received processor attention after a
specified period. This is from the online help. I've got mine set to
specified period. This is from the online help. I've got mine set to
1 because I run a BBS which I want to preform like a rocket at all
1 because I run a BBS which I want to preform like a rocket at all
times.
times.
Line 145: Line 128:
;RUNNING DOS/WINDOWS APPS
;RUNNING DOS/WINDOWS APPS
If you're not planning on running anything else at the same time, 1 dos
If you're not planning on running anything else at the same time, 1 dos
application, the defaults are okay. If you plan on running an OS/2
application, the defaults are okay. If you plan on running an OS/2
app and dos apps, I'd recommend setting the IDLE_SENSITIVITY to about
app and dos apps, I'd recommend setting the IDLE_SENSITIVITY to about
10, then your DOS and OS/2 will work at greatly improved preformance.
10, then your DOS and OS/2 will work at greatly improved preformance.
Line 156: Line 139:
friendly to the system, in that they will request only what
friendly to the system, in that they will request only what
processing power they require and in turn 'hand-over' any processing
processing power they require and in turn 'hand-over' any processing
power when they aren't working. This is why you should really be
power when they aren't working. This is why you should really be
converting to OS/2 applications, because they are system aware,
converting to OS/2 applications, because they are system aware,
rather than like DOS/WINDOWS apps which tend to be system resource
rather than like DOS/WINDOWS apps which tend to be system resource
hogs. One Major feature of OS/2 is the ablility for OS/2 to reload
hogs. One Major feature of OS/2 is the ablility for OS/2 to reload
after a power failure all the OS/2 apps that were running and usually
after a power failure all the OS/2 apps that were running and usually
to a point just before the power failure, which is extremely helpful
to a point just before the power failure, which is extremely helpful
Line 171: Line 154:
please shutdown and reboot) is fatal! Since you usually have to
please shutdown and reboot) is fatal! Since you usually have to
reach for the Big Red switch (or the big White one for PS/2s) and
reach for the Big Red switch (or the big White one for PS/2s) and
power OFF to recover. Not a nice method of system recovery.
power OFF to recover. Not a nice method of system recovery.


Under OS/2, the same types of progams can cause the system to abort.
Under OS/2, the same types of progams can cause the system to abort.
Line 179: Line 162:
OS/2 then continues on uncaring about that hiccup and in actual fact
OS/2 then continues on uncaring about that hiccup and in actual fact
when this hiccup occured the other apps are still processing, not
when this hiccup occured the other apps are still processing, not
stopped and waiting. OS/2 can do this becasue it takes advantage of
stopped and waiting. OS/2 can do this becasue it takes advantage of
advanced programming methods to isolate each application from each
advanced programming methods to isolate each application from each
other and literally providing a whole computer system per-window,
other and literally providing a whole computer system per-window,
Line 189: Line 172:
main system thread to preform a fail-safe step, where a window will
main system thread to preform a fail-safe step, where a window will
pop-up and says Press Return to restart the Shell and all processes
pop-up and says Press Return to restart the Shell and all processes
running will remain running. There is a small chance of losing data,
running will remain running. There is a small chance of losing data,
but I havn't yet, nor is this an everyday occurence. This once
but I havn't yet, nor is this an everyday occurence. This once
happened while a user was online downloading a file, and he never knew
happened while a user was online downloading a file, and he never knew
there was anything wrong, this is a true indication of the protection that
there was anything wrong, this is a true indication of the protection that
OS/2 gives to it's processes!
OS/2 gives to it's processes!

Latest revision as of 23:49, 8 September 2022

Joe's OS/2 Tips
  1. Number 1
  2. Number 2
  3. Number 3
  4. Number 4
    1. Catalog - 1992-10-03
  5. Number 5
    1. Catalog - 1992-11-29
  6. Number 6
    1. Catalog - 1993-01-01
  7. Number 7
    1. Catalog - 1993-02-07
  8. Number 8

Few people realize that the default OS/2 setup isn't exactly the best. The following document was written by myself, after experimenting with OS/2 version 2.0.

Abit of background about myself,

I'am Joseph Mckinnon, I was introduced to OS/2 by Ernst Winter half way through 1991. This seemed at the time like an ideal operating system for my requirements - Multi-tasking, solid and fast (ask my closest friends about my like for speed). I joined the Early Experience Program through Adrian Collings (Critial Software Designs). From that day on I enjoyed the system and went about making the Beta Code run faster than normal, since, as you all know, Beta code is always slower than the real thing, due to the amount of extra 'fail-safe' code built in to trap system errors. From this I've developed quite a good grounding in what things you should change to get the best.

Memory Requirements.

From the starting post, IBM's minimal requirements would make me lose my temper at the preformance, since 4 meg is just enough to boot the System, let alone run any real applications. Therefore, if you are considering to run OS/2 as the default operating system, I'd recommend for you to have at least 8 meg. This way you can realy use your system. Sure other companys may say that's too much for a normal user, I say Bull. As far as I'am concerned if I like what I use I prefer speed than to run with one foot in lead and the other in plaster.

With 8 meg of RAM, you can run multiple applications at a reasonable speed, with the defaults. But, if you have patience (or a very fast machine 486-50mhz) you maybe able to live with 4 meg, and put up with the delay in loading applications, and noise from your Harddrive being constantly accessed (Why's this, read on). Since OS/2 is an advanced operating system it takes advantage of many of the memory techniques found on Mini's and Mainframes, one of features of OS/2 is it's virtual memory.

Virtual Memory.

This whole Idea is basically summed up in saying OS/2 uses the swapper file on your Harddrive as RAM to run programs in. Thus on a 4 meg machine, OS/2 is continuly 'thrashing' the harddrive, since there's not enough physical RAM to run both your applications and OS/2 properly. The advantage that OS/2 has over other 16 bit shells/operating systems is that OS/2's 32bit programming allows the system to work with small blocks of memory (4k) and therefore it's much more effective when swapping to the harddrive 16bit have to page out 64k chunks at a time, causing undue strain on the system. Especially when it it's reloading the same block to run 4k of code out of that segment, which of course these 16 bit shells tend to run slowly once they reach the end of physical RAM.

Physical Memory.

This, of course is the amount of RAM your system contains. OS/2 will use every bit of the RAM it can find, without you having to tell it what to use. This is a BIG step forward over other memory managers, where you, the user (and generally inexperienced) has to sit down and work out what areas to include and exclude. With OS/2's 32bit environment it's in theory capable of handling a GIG (4,096 Meg) of RAM! which of course is very hard to imagine.

The CONFIG.SYS file

After installation of your system, OS/2 will install a default, use for all systems, CONFIG.SYS file. At first glance, many new users will say 'Hey, I'am not going to even touch it', since it can range from about 20 lines to 40, depending on what you installed, etc.

Inside this 'hideous creation' you'll find many interesting keywords for OS/2, EG MAXWAIT, IFS DPATH and many more, all totally alein from the DOS-World, DON'T BE SCARED OFF BY THESE THINGS, it's all in the Online Help, take time to read about them, and experiement, otherwise you'll never feel confident.

One thing that stands out is this line.

PRINTMONBUFSIZE=132,132,132

Which after you've read the online help (go on, that's what it's for), is the Printer Buffers, for LPT1,LPT2,LPT3. So why reserve memory for unused printer ports? Plus, if you don't do much printing, why reserve so much, when the system can use the memory for either itself or for your apps. Therefore assign a value which suits your usage, mine is

     PRINTMONBUFSIZE=100,0,0
THREADS=256

Threads is the number of independent actions that OS/2 is expected to manage. Each thread requires a small fraction of Physical RAM, thus if your not particularly running massive OS/2 Applications, which have many threads, then why reserve so many. In case you're worried about not assigning enough, there is a small utility program called MAP57, which I'd recommend obtaining, since this will give you a report on the number of threads in use by your system (available from my BBS Proteus OS/2 +61-7-800-3521). With this utility I was able to halve my default setting to 128, which is still rather high, but it's better to have more than required, otherwise your system's preformance will be terrible if you remove to many.

     THREADS=128

IFS=D:\OS2\HPFS.IFS /CACHE:64 /AUTOCHECK:DE /CRECL:4

This is the HPFS (High Preformance File System - Requires at least 6 meg Physical RAM) controlling line. It's very annoying to see OS/2 install a 196k Cache on my system, because it's eating to much RAM for my setup. My Hardrive has a 64k Cache built-in, so why tie up more physical RAM. I've had this set to 196, and other values, but after much trial and error I found that 64k cache on the HD and the IFS give me the same preformance results. Some people are setting this at incrediable settings, eg 1024k, etc which may have been great under DOS, but under OS/2 it's useless if you've only got limited memory available. I suggest that you play trial & error with this setting because every system setup is different, but keep in mind, DON'T GO OVERBOARD, swapping memory in and out makes your system slower, no matter how fast your harddrive may be.

PATH

AS in DOS, this command along with the others (DPATH, LIBPATH, HELP) define where to look for files to run (or in the other ones, where to find specific files eg Help files). I find that people tend to throw all their program paths into these statements, so that they can be in any directory and load that file. That's great, but why setup your system like this, since your system searches all these paths until it finds the application. Which, of course, is an un-necessary process. You should be making a program icon for that particular app, and activiate with the mouse rather than at the command line, quicker and much more easier for other users. Plus that's what GUI's are designed for.

AUTOFAIL and PAUSEONERROR

If you're like me, and hate seeing the Abort, Retry, Ignore responses under DOS, you can make OS/2 take the easy way out for you. How often have you got you drives mixed up and told DOS to go to drive B instead of A and the drive sits there looking at nothing (that is of course if you've got the PROMPT returning current directory details for you), OS/2 will not prompt you with Abort, Retry, Ignore if Autofail is active, instead it will return saying

     D:\>b:
     SYS0015: The system cannot find the drive specified.
MAXWAIT

Provides OS/2 the ability to change priority settings of a thread to a higher number after it hasn't received processor attention after a specified period. This is from the online help. I've got mine set to 1 because I run a BBS which I want to preform like a rocket at all times.

RUNNING DOS/WINDOWS APPS

If you're not planning on running anything else at the same time, 1 dos application, the defaults are okay. If you plan on running an OS/2 app and dos apps, I'd recommend setting the IDLE_SENSITIVITY to about 10, then your DOS and OS/2 will work at greatly improved preformance. Many apps require fine tuning which I can't cover in this document. I prefer to run system native apps - OS/2 applications wherever possible.

RUNNING OS/2 APPS

Basically ALL OS/2 apps take advantage of the system, and are very friendly to the system, in that they will request only what processing power they require and in turn 'hand-over' any processing power when they aren't working. This is why you should really be converting to OS/2 applications, because they are system aware, rather than like DOS/WINDOWS apps which tend to be system resource hogs. One Major feature of OS/2 is the ablility for OS/2 to reload after a power failure all the OS/2 apps that were running and usually to a point just before the power failure, which is extremely helpful feature.

THE BAD APP SYNDROME.

Under DOS/WINDOWS/DV there are certian applications which kill the entire system, generally known as Bad Apps, or another popular one the UAE (unrecoverable appliaction error made famous by windows). Under Windows, a UAE (or these days the program has just done this please shutdown and reboot) is fatal! Since you usually have to reach for the Big Red switch (or the big White one for PS/2s) and power OFF to recover. Not a nice method of system recovery.

Under OS/2, the same types of progams can cause the system to abort. But in this case the abort is simply the window in which that application was started in, therefore you just double click on the mouse button to close that window, and the problem has been removed. OS/2 then continues on uncaring about that hiccup and in actual fact when this hiccup occured the other apps are still processing, not stopped and waiting. OS/2 can do this becasue it takes advantage of advanced programming methods to isolate each application from each other and literally providing a whole computer system per-window, thus the bad app is simply 'killed-off' and as far as the other apps are concerned nothing happened.

Sometimes the Crash does affect OS/2, but never fear Pressing CTRL-ESCAPE a few times and waiting about 1 minute will cause the main system thread to preform a fail-safe step, where a window will pop-up and says Press Return to restart the Shell and all processes running will remain running. There is a small chance of losing data, but I havn't yet, nor is this an everyday occurence. This once happened while a user was online downloading a file, and he never knew there was anything wrong, this is a true indication of the protection that OS/2 gives to it's processes!