Windows 98 - Shawlands Academy

advertisement
Describe the trend in GUI design towards
increasing user convenience
• GUI interface is said to be
user-friendly
• Help is available at the click
of a mouse button.
• You’re supposed to find out
everything you need to know
by looking at the screen
rather than by thumbing
through books.
• GUIs make great demands
on the hardware resources
• they take up lots of
memory
• the processor has to be
very fast if the screen is to
respond quickly enough to
be satisfactory
Command Line Interface
(Advantage via Disadvantage.)
• It doesn’t take much
processing power to run an
interface
• A CLI does not take up a lot
of room in memory.
• a CLI feel pleasantly in
control of things
• You have to learn what all the
commands are, and you have
to learn how to use them (their
syntax)
• To use commands properly you
have to learn a lot about
switches and parameters.
• CLI error messages are
notorious for not making sense
to the uninitiated.
• on-line help - you need to know
quite a bit before you can even
get it, never mind make sense
of it.
Explain how this trend leads to
– Increasing software complexity
– Increasing demands on system resources
– Increasing burdens on system performance
the user interfaces have increased in complexity, with more features, higher
resolution graphics, increased use of colour, and increasing options for the user to
customise the look and feel of the interface.
This has resulted in the operating system making increasing demands on the
system. Early operating systems only required a few kilobytes of RAM, whereas
modern operating system may require hundreds of Megabytes.
Not only do modern operating systems require huge amounts of RAM, they also
require fast processors, mainly because of the need to process high resolution
graphics in real time.
The development of increasingly user-friendly software and increasingly powerful
computers is intertwined. Over the last 30 years, there has been an interdependent
spiral of Improved hardware (faster, smaller, more complex, larger capacity, new
materials) Improved software (more features, more user-friendly)
As hardware developers produce more powerful machines, software developers extend
their products to use the new hardware, then make further demands, which lead the
hardware developers to improve the hardware, and it shows no sign of stopping!
The double click on the mouse button will generate an interrupt to the
processor, indicating that the current process must be stopped to deal with the
double click event.
In order to "understand" what this double click means, the system must keep
track of the position of the mouse pointer at all times, by receiving and
processing the steady stream of electronic signals coming from the mouse’s
movement sensor system (optical or mechanical).
It must then compare the pointer position with the current screen display to
identify what the use has double-clicked on
Was it a file?
Was it an icon representing a command?
Was it a "blank" area of the screen?
Once this has been identified, the system then activates the appropriate operation
within the file and memory management sub systems. The system must update the
screen mapping in memory to effect this change in the display.
Pupil task
Complete questions 1 – 4 on page 189
questions 5 – 7 on page 193
THEN go to page 194 for wed sites and write a brief summary……
Comparing 2 Operating Systems
WINDOWS 98 VIA Linux
Memory management
Processing modes
Input and output
Filing system
Resource sharing
User interface
Applications support
Security
It should be made clear from the first that the two systems not just technically
different; they are, so to speak, morally different.
Comparing 2 Operating Systems
Windows 98. and Linux.
Windows is a commercial system, created by the programmers of a gigantic
software house. It’s there to make money. It has done this with great success.
Linux is a free system, as a matter of principle. You can download it from the
Internet for nothing. It is an example of open source software.
Today there are tens of thousands of people all over the world
happily working away at Linux, altering it, fixing bugs in it, writing applications and
games for it. Many large organisations (such as NASA) use Linux. Companies in
the computing industry such as IBM, Intel and Dell have announced support for it.
More and more commercial software houses are adapting their applications to run under
it. If you’ve ever surfed the Internet, you are practically bound to have landed on sites
that have been created under Linux.
Corporate vendors offer what are called distributions of it; the Linux part is still free
Memory management
Windows 98 offers multi-tasking and multi-threading with pre-emptive
scheduling.
Memory management is handled by the Virtual Machine Manager. The VMM creates
and manages a single virtual machine (VM) that contains all Win32 applications (and
the Win32 API subsystem).
Each virtual machine has its own memory space and access to devices. More than
one virtual machine can be running on one real machine. The VMM maintains one
virtual machine for each DOS application and one for all the Windows applications.
Linux is designed to run on a variety of hardware platforms.
It is, like Windows, a multi-tasking, multi-threading system but, unlike Windows, it
is a multi-user system
.
Linux, like Windows, runs a virtual memory system,
This means LINUX offers
• a large address space for each process (much larger than physical memory);
• fair allocation of real memory between processes;
• protection, so that all processes are protected from each other (and a crashing
process won’t affect the other processes or the operating system);
• shared virtual memory, so that two processes can use the same library (rather on
the lines of Windows’ DLLs).
Processes are divided into pages. Linux uses demand paging, so that only the
pages that a process demands are brought into memory. When the system begins to
run out of memory, Linux uses:
• swapping, so that pages that have been modified are swapped out to a swap file;
• discarding pages, so that pages that have not been modified and can easily be
read back in from file are discarded.
Linux allocates pages according to the buddy system. (The size of the pages will vary
according to the hardware, but is often about eight kilobytes.) Pages are allocated in
blocks which are powers of 2 in size (1, 2, 4, etc). A process asks for a block of a
certain size.
The memory manager looks through the list of blocks of that size. If one is free,
the process gets it. If not, the manager looks for blocks of the next size up.
The process continues until all free memory has been searched or a space has
been found. If the block allocated is larger than that needed, it’s broken down (in
powers of two) until there is a block of the right size. For example, a process wants
a block of 2 pages and there are no blocks of that size free; there are no blocks of
size 4 free either; but there is a free block of size 8; that block is divided into two
blocks of 4, one of which is divided again into two blocks of 2 and given to the
process; the spare blocks of size 2 and 4 are added to the lists of free blocks.
Processing modes
Windows 98 allows multi-tasking and multi-threading: it can run a lot of tasks,
and each task can run a lot of threads. In fact, Windows 98 regards a process as an
instance of an application with at least one running thread. The scheduler controls
all the running threads. It uses pre-emptive scheduling when more than one
thread demands the processor.
Linux allows multi-tasking and multi-threading, and does so for multi-users. It can also
run lots of processors, whereas Windows is designed for a single user and a single
processor.
Note: terms can become confusing. Multi-processing is normally taken to mean running
lots of different processes rather than lots of different processors.
Because of its reliability, Linux is being used more and more to handle real-time
processes. Such processes are given very high priority. They can be handled on a
round robin basis, or simply as a queue, first come first served, depending on how the
real-time system is meant to behave.
Input and output
In Windows 98, device drivers are DLLs. The main advantage of this is that the drivers
common to running applications (such as the display driver) need only to be loaded into
memory once and can be shared by the different applications.
Windows 98 supports a range of plug and play devices.
At present, you would hardly describe Linux as supporting plug and play, but they’re
working on it. In Linux, device drivers are part of the kernel and, to install a new device
driver, you rebuild the kernel to include it. Once the kernel has been rebuilt, you need to
reboot the system
Each device is represented by a special file that has a place in the directory structure
(usually in a directory called dev)
In Windows, device drivers are implemented as DLLs: new drivers
can be added without the Windows code being affected.
Windows and Linux both allow devices direct memory access.
Linux supports a wide range of terminals for a wide range of computers. Windows
works with screens that can be run by a PC.
Filing system
Windows 98 uses the FAT32 system which allows a 4 KB cluster size on hard discs.
This (compared, say, to the 32KB clusters available in previous versions of Windows)
is small and leads to less waste of space.
The FAT32 system supports long filenames, with spaces in.
Files can be organised in a hierarchy of folders. The File Manager utility, which
comes as part of Windows, makes it easy to move, copy and delete files and folders.
In Linux directory information is held, for the most part, in the files rather than in the
directory. Each file has associated with it an information node (inode) which contains all
the information about the file, such as who owns it and how big it is. A directory entry
contains merely a filename and a pointer to the relevant inode. A file can have entries
in many directories, each potentially with a different name, although all will refer to the
same inode.
Linux also supports long filenames, but using spaces can lead to problems. (People
tend to use the underscore instead.) ManyLusersLregardLthisLasLaLnuisance.
For file storage, Windows 98 uses clusters, which are multiples of a disc’s physical
sector size.
Linux works directly with single sectors, which leads to a more efficient use of disc
space.
Resource sharing
Windows 98 is a single-user system and cannot be used to serve a multi-user network.
It can be used by the machines on a peer-to-peer network. The file
system and devices can be made accessible to other Windows systems, protected by
passwords.
Linux is designed as a multi-user system and is therefore built to run networks and
allow the sharing of resources and, moreover, the supervision of such sharing.
The network manager can maintain a single list of all system users and put users
into groups;
members of a group have the same access to system resources. It allows files to be
shared, so that a user can create files and make them available to other users of the
network;
on the other hand, the user who owns a file or the system manager can restrict
access, either to everyone or merely to certain groups or users
User interface
Windows 98 comes with a GUI that provides a full WIMP environment. This
makes it easy for the user to do relatively simple things, such as load an
application. A GUI is essentially interactive. (The drawback is that it’s not
designed to be programmable.)
It’s easy to get started in Windows. On the other hand, doing advanced things can be
very complicated and exasperating: either you need to do lots of different things in lots
of different windows or you need to get in and edit things like the registry (which handles
configuration) by hand, just as you would in a CLI.
Linux basically provides a command line interface. It offers a selection of what are
called shells. (A shell surrounds a kernel.) Each shell has its set of commands. Each
command will have a set of options or switches that can be used to shape its behaviour.
Commands can be typed in directly.
The scripting language is pretty much a programming language. It provides highlevel
programming structures such as selection, repetition and modularity. You can use
variables, which can be assigned values, and parameters. You can ask for input from
the user at run time and process it.
LINUX CONT’D
The shells and the scripting language offer the user precise control of the operating
system. However, not everyone particularly wants to learn commands and switches and
all the rest of it. So Linux also offers a selection of GUIs (rather than just one).
Applications support
The great strength of Windows comes from its long dominance of the market. By
default, applications for PCs are written to run under Windows. Microsoft itself has
written many good applications, such as the word processor Word and the
spreadsheet Excel. If you want software for a Windows machine, there’s an awful lot
to choose from.
As yet, there is nothing like the same range of software available to run under Linux.
Wordperfect runs under it; so does Netscape Navigator, and so on. But, if you’re moving
from a Windows system, you can’t assume that equivalent packages to the ones you’ve
been used to will be available.
Security
Perhaps the basic threat to a computer system is a hardware failure. No operating
system can protect you against that. What they can do is make restoration possible, so
that, once the hardware fault has been fixed, the system can be put back to normal
Windows 98 is designed for a single user, even though most computers these days at
places of work or in educational establishments are networked. Passwords are used
to prevent access to shared resources on the network, but there’s nothing to prevent
someone using a Windows box as a stand-alone machine
Linux is a multi-user system and takes security much more seriously.
All users have IDs and passwords, and a valid combination has to be entered before
you can do anything at all. Some systems even check that your suggested password is
obscure enough. The system logs password attempts and can be set to permit only a
limited number of attempts, as a defence against hackers.
Passwords are saved in encrypted form. When a password is entered, it is encrypted,
and the encryptions are compared.
Apart from the system manager (often known as a superuser or root) there are three
sorts of people on a Linux system: the user, the group that the user belongs to, and
everyone else.
Comparing Windows 98 and Linux
Range of platforms
The range of computers that Windows can run on is extremely limited. Windows runs
only on PCs with (single) Intel processors. Linux runs on a wide range of machines,
including ones with lots of processors.
Cost
The cost of an operating system on a PC is usually hidden as part of the purchase price.
Windows 98 on its own costs about 100 pounds. Linux is free, though a distribution
version can cost about 50 pounds.
Ease of Installation
Windows is easy to install because it’s designed to run on one kind of chip. Linux,
because it’s designed to be flexible, is a little more difficult.
On the other hand, you can get free online technical support for Linux (from
enthusiasts), which is not available for Windows.
Reliability
It’s not easy to get statistics about the reliability of operating systems. Often, estimates
of reliability come down to hearsay and anecdote.
For example, when the writer of these notes sat down to write them, his Windows
LAPTOP FROZE – he had to switch it off and start again……
Scholar activity page 211
comparing and contrasting…
THEN
Reporting on 2 operating systems
Download