Tech Trends - Industry Articles
What Should You Expect from a Computer Operating System?
By Michael Palmer
The other night I received a call from a member of my family who lives
in the Solomon Islands in the South Pacific and is a Peace Corps
volunteer. He wanted me to know that although there are news reports of
ethnic hostility and dangerous armed conflict, he is currently not in
an endangered area. After we talked, I accessed the Internet using my
PC and quickly found a current news broadcast of the situation offered
by the Australian Broadcasting Corporation.
Besides experiencing relief because of the wealth of information I can
access through my PC or through an Internet server, I still marvel at
how these capabilities enrich our lives. Most of us have reached the
point where we have high expectations of our computers and even higher
expectations of our computers' operating systems.
There are a host of PC and server operating systems which we depend on
for all kinds of purposes: BeOS, Linux, Mac OS, NetWare, Solaris,
Windows 9.x, Windows NT, Windows 2000, and UNIX, for example. Some
operating systems, such as Mac OS and UNIX have been around awhile.
Others, such as BeOS and Windows 2000, are relatively new arrivals.
In this open field of different selections, what should we expect now
that we have long distanced ourselves from the age of vacuum tubes,
machine instructions, punch cards, and low-density storage tapes? When
a user or an organization selects a computer operating system,
following are some thoughts on what should be expected now or in
planned upgrades:
Operating System Upgrade Planning
- Easy on the Eyes and Skill Level: An operating
system should have a visually interesting and intuitive user interface,
which includes the ability to customize functions according to how the
user does business. There should be user-proof setup functions so that
spending hours installing any peripheral is a memory as vague as using
punch cards.
- Accessible: An operating system should be
thoroughly accessible for all kinds of people including those who
possess different ranges of physical, hearing, and sight capabilities.
In addition to these, there should be accessibility to match different
language and learning capabilities. The fundamental goal of designing a
computer operating system should be to help remove walls that block
human potential.
- Reliable, Self-Recovering, and Self-Cleaning: The
operating system should run in a protected area so that it does not
crash when a software application crashes, such as when a word
processor or payroll program crashes. The reliability and speed of the
operating system should be the same two years after the operating
system is installed as it is on day one of operation. Critical
operating system components should be self-recovering, so that a
problem caused by a software installation or upgrade is automatically
corrected. The self-recovering technology should even extend to those
instances when a new virus attempts to cause chaos - healing the
problem before it is noticed. Operating systems also should be
self-cleaning, so that old components that are no longer applicable are
automatically extricated.
- Always On: There should be few to no reasons why
it is necessary to reboot an operating system, enabling it to be on
24x7, if necessary. Barring severe machine and power problems, there
should be no reboots to configure software or hardware, no reboots to
solve an operating system problem, and no reboots because of memory
allocation problems.
- Push the Limits of the Machine and the Internet:
An operating system should be designed to push the limits of the
computer on which it resides and to take in stride new developments on
the Internet. For example, if the computer machinery can handle using 4
processors and hosting an interactive voice/video class over the
Internet, then the operating system should be able to do this and more
at the same time. If the LAN to which the operating system is attached
is using IPv4 at 10 Mbps, the operating system should have IPv4 and
IPv6 capability at 10/100 Mbps and beyond. When designers create
operating systems that can go beyond the reach of current hardware,
they motivate hardware vendors to catch up as fast as possible.
- Follow the Standards: The electronics, computer,
network, and Internet communities support many national and
international standards organizations. An operating system should be
compatible with existing standards and most proposed new standards. The
existence of standards is one reason why I can log on to the Internet
from the United States and access a news broadcast in Australia.
- Robust File System: The operating system should
have a file system that is robust enough for the applications that it
is designed to handle. Strong security, minimum fragmentation,
resistance to corruption, ability to handle large multimedia and
database files, network compatibility, fault-tolerant transaction
journaling, and hot fixing damaged disk areas are all characteristics
of a robust file system.
Besides these expectations of operating systems,
there are expectations of operating system vendors that hinge on
fostering communication with their customers. Under the hood, all
operating systems are complex and contain code that does not fully work
as intended. One of the most important roles that the operating system
vendor has is to communicate possible problems to customers and to
offer solutions that are easy to obtain.
Computer operating systems continue to evolve as the needs of users and
networks evolve. In one sense, they are a reflection of human
understandings about processing information and in another sense they
are a reflection of the capabilities of machines. In neither sense are
they perfect, but perhaps the strongest sign of their growing
functionality is in their transparency and ability to help us access
and communicate information in all imaginable forms.