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

From OS2World.Com Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 3: Line 3:
The following document was written by myself, after experimenting with OS/2 version 2.0.
The following document was written by myself, after experimenting with OS/2 version 2.0.


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
Line 17: Line 17:
should change to get the best.
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
Line 38: Line 38:
memory.
memory.


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.


  This whole Idea is basically summed up in saying OS/2 uses the swapper
;Physical Memory.
  file on your Harddrive as RAM to run programs inThus on a 4 meg
This, of course is the amount of RAM your system contains.  OS/2 will
  machine, OS/2 is continuly 'thrashing' the harddrive, since there's
use every bit of the RAM it can find, without you having to tell it
  not enough physical RAM to run both your applications and OS/2
what to useThis is a BIG step forward over other memory managers,
  properly. The advantage that OS/2 has over other 16 bit
where you, the user (and generally inexperienced) has to sit down and
  shells/operating systems is that OS/2's 32bit programming allows the
work out what areas to include and exclude. With OS/2's 32bit
  system to work with small blocks of memory (4k) and therefore it's
environment it's in theory capable of handling a GIG (4,096 Meg) of RAM!
  much more effective when swapping to the harddrive 16bit have
which of course is very hard to imagine.
  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.
;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.


  This, of course is the amount of RAM your system contains.  OS/2 will
Inside this 'hideous creation' you'll find many interesting keywords
  use every bit of the RAM it can find, without you having to tell it
for OS/2, EG MAXWAIT, IFS DPATH and many more, all totally alein from
  what to use.  This is a BIG step forward over other memory managers,
the DOS-WorldDON'T BE SCARED OFF BY THESE THINGS, it's all in the
  where you, the user (and generally inexperienced) has to sit down and
Online Help, take time to read about them, and experiement, otherwise
  work out what areas to include and exclude. With OS/2's 32bit
you'll never feel confident.
  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
One thing that stands out is this line.
 
  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
       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
  be terrible if you remove to many.
be terrible if you remove to many.
       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.
  I suggest that you play trial & error with this setting because every
I suggest that you play trial & error with this setting because every
  system setup is different, but keep in mind, DON'T GO OVERBOARD,
system setup is different, but keep in mind, DON'T GO OVERBOARD,
  swapping memory in and out makes your system slower, no matter how
swapping memory in and out makes your system slower, no matter how
  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
  course if you've got the PROMPT returning current directory details
course if you've got the PROMPT returning current directory details
  for you), OS/2 will not prompt you with Abort, Retry, Ignore if
for you), OS/2 will not prompt you with Abort, Retry, Ignore if
  Autofail is active, instead it will return saying
Autofail is active, instead it will return saying
       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 recieved 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.
 
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
;RUNNING DOS/WINDOWS APPS
  friendly to the system, in that they will request only what
If you're not planning on running anything else at the same time, 1 dos
  processing power they require and in turn 'hand-over' any processing
application, the defaults are okayIf you plan on running an OS/2
  power when they aren't workingThis is why you should really be
app and dos apps, I'd recommend setting the IDLE_SENSITIVITY to about
  converting to OS/2 applications, because they are system aware,
10, then your DOS and OS/2 will work at greatly improved preformance.
  rather than like DOS/WINDOWS apps which tend to be system resource
Many apps require fine tuning which I can't cover in this document.
  hogs.  One Major feature of OS/2 is the ablility for OS/2 to reload
I prefer to run system native apps - OS/2 applications wherever
  after a power failure all the OS/2 apps that were running and usually
possible.
  to a point just before the power failure, which is extremely helpful
  feature.


THE BAD APP SYNDROME.
;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.


  Under DOS/WINDOWS/DV there are certian applications which kill the
;THE BAD APP SYNDROME.
  entire system, generally known as Bad Apps, or another popular one
Under DOS/WINDOWS/DV there are certian applications which kill the
  the UAE (unrecoverable appliaction error made famous by windows).
entire system, generally known as Bad Apps, or another popular one
  Under Windows, a UAE (or these days the program has just done this
the UAE (unrecoverable appliaction error made famous by windows).
  please shutdown and reboot) is fatal! Since you usually have to
Under Windows, a UAE (or these days the program has just done this
  reach for the Big Red switch (or the big White one for PS/2s) and
please shutdown and reboot) is fatal! Since you usually have to
  power OFF to recover.  Not a nice method of system recovery.
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.
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
But in this case the abort is simply the window in which that
  application was started in, therefore you just double click on the
application was started in, therefore you just double click on the
  mouse button to close that window, and the problem has been removed.
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
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,
  thus the bad app is simply 'killed-off' and as far as the other apps
thus the bad app is simply 'killed-off' and as far as the other apps
  are concerned nothing happened.
are concerned nothing happened.


  Sometimes the Crash does affect OS/2, but never fear Pressing
Sometimes the Crash does affect OS/2, but never fear Pressing
  CTRL-ESCAPE a few times and waiting about 1 minute will cause the
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
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!

Revision as of 19:13, 22 May 2021

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 recieved 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!