Uci 101 Foundations of It Lecture 7 Slides

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 67

THE OPERATING

SYSTEMS
BETHUEL K. OKELO 1
bethuel.okello@maseno.ac.ke
WHAT IS AN OPERATING SYSTEM?
An operating system (OS) manages all other applications and
programs in a computer, and it is loaded into the computer by
a boot program. It enables applications to interact with a
computer’s hardware. Through a designated application
programming interface, the application programs request
services from the operating system (API). The kernel is the
software that contains the operating system’s core
components. To run other programs, every computer has to
have at least one operating system installed.

2
OPERATING SYSTEM

3
…..CONT
Windows, Linux, and Android are examples of operating
systems that enable the user to use programs like MS Office,
Notepad, and games on the computer or mobile phone. It is
necessary to have at least one operating system installed in
the computer to run basic programs like browsers.

4
FUNCTIONS OF OPERATING
SYSTEM
• Processor Management: An operating system manages the processor’s
work by allocating various jobs to it and ensuring that each process receives
enough time from the processor to function properly.
• Memory Management: An operating system manages the allocation and
deallocation of the memory to various processes and ensures that the other
process does not consume the memory allocated to one process.
• Device Management: There are various input and output devices. An OS
controls the working of these input-output devices. It receives the requests
from these devices, performs a specific task, and communicates back to the
requesting process.
• File Management: An operating system keeps track of information
regarding the creation, deletion, transfer, copy, and storage of files in an
organized way. It also maintains the integrity of the data stored in these
files, including the file directory structure, by protecting against
unauthorized access.

5
….CONT
• Security: The operating system provides various techniques which assure
the integrity and confidentiality of user data. Following security measures
are used to protect user data:
O Protection against unauthorized access through login.
O Protection against intrusion by keeping Firefall active.
O Protecting the system memory against malicious access.
O Displaying messages related to system vulnerabilities.
• Error Detection: From time to time, the operating system checks the
system for any external threat or malicious software activity. It also checks
the hardware for any type of damage. This process displays several alerts to
the user so that the appropriate action can be taken against any damage
caused to the system.
• Job Scheduling: In a multitasking OS where multiple programs run
simultaneously, the operating system determines which applications should
run in which order and how time should be allocated to each application.

6
…CONT
• Resource allocation and management: An operating
system manages hardware resources such as CPU, memory,
and disk space, and assigns these resources to running
applications based on their priority.
• User interface management: An operating system
provides a graphical user interface (GUI) that allows users to
interact with the computer. It manages windows, menus, and
other graphical elements.
• Running applications: An operating system provides an
environment in which applications can run and interact with
the user.

7
8
COMPONENTS OF
OPERATING SYSTEM
Now to perform the functions mentioned above, the operating
system has two components:
• Shell
• Kernel
Shell handles user interactions. It is the outermost layer of
the OS and manages the interaction between user and
operating system by:
• Prompting the user to give input
• Interpreting the input for the operating system
• Handling the output from the operating system.

9
Shell provides a way to communicate with the OS by either
taking the input from the user or the shell script. A shell
script is a sequence of system commands that are stored
in a file.

10
WHAT IS KERNEL?
The kernel is the core component of an operating system for a
computer (OS). All other components of the OS rely on the core
to supply them with essential services. It serves as the primary
interface between the OS and the hardware and aids in the
control of devices, networking, file systems, and process and
memory management.

11
FUNCTIONS OF KERNEL
The kernel is the core component of an operating system which acts as an
interface between applications, and the data which is processed at the
hardware level.
When an OS is loaded into memory, the kernel is loaded first and
remains in memory until the OS is shut down. After that, the kernel
provides and manages the computer resources and allows other programs to
run and use these resources. The kernel also sets up the memory address
space for applications, loads the files with application code into memory, and
sets up the execution stack for programs.
The kernel is responsible for performing the following tasks:
• Input-Output management
• Memory Management
• Process Management for application execution.
• Device Management
• System calls control

12
….CONT
 Earlier, all the basic system services like process and memory
management, interrupt handling, etc., were packaged into a
single module in the kernel space. This type of kernel was
called the Monolithic Kernel. The problem with this approach
was that the whole kernel had to be recompiled for even a
small change.
 In a modern-day approach to monolithic architecture, a
microkernel contains different modules like device
management, file management, etc. It is dynamically loaded
and unloaded. With this modern-day approach, the kernel code
size was reduced while its stability increased.

13
TYPES OF KERNEL
Linus Torvalds introduced the concept of a monolithic kernel in
1991 as a part of the Linux kernel. A monolithic kernel is a
single large program that contains all operating system
components. However, the Linux kernel evolved over the years
and now consists of different types of kernels, as listed below.
1. Monolithic Kernel As the name suggests, a monolithic
kernel is a single large program that contains all operating
system components. The entire kernel executes in the
processor’s privileged mode and provides full access to the
system’s hardware. Monolithic kernels are faster than
microkernels because they don’t have the overhead of
message passing. This type of kernel is generally used in
embedded systems and real-time operating systems.

14
……CONT
2. Microkernel A microkernel is a kernel that contains only
the essential components required for the basic functioning of
the operating system. All other components are removed from
the kernel and implemented as user-space processes. The
microkernel approach provides better modularity,
flexibility, and extensibility. It is also more stable and
secure than monolithic kernels.
3. Hybrid Kernel A hybrid kernel is a kernel that combines the
best features of both monolithic kernels and microkernels. It
contains a small microkernel that provides the essential
components for the basic functioning of the OS. The remaining
components are implemented as user-space processes or as
loadable kernel modules. This approach provides the best
of both worlds, namely, the performance of monolithic
kernels and the modularity of microkernels.

15
……CONT
4. Exokernel An exokernel is a kernel that provides the bare
minimum components required for the basic functioning of the
operating system. All other components are removed from the
kernel and implemented as user-space processes. The exokernel
approach provides the best possible performance because there
is no kernel overhead. However, it is also the most difficult to
implement and is not widely used.

16
TYPES OF OPERATING
SYSTEMS
There are several different types of operating systems present.
In this section, we will discuss the advantages and
disadvantages of these types of OS.
• Batch OS
• Distributed OS
• Multitasking OS
• Network OS
• Real-OS
• Mobile OS

17
….CONT
Batch OS
Batch OS is the first operating system for second-generation
computers. This OS does not directly interact with the
computer. Instead, an operator takes up similar jobs and groups
them together into a batch, and then these batches are
executed one by one based on the first-come, first, serve
principle.
Advantages of Batch OS
• Execution time taken for similar jobs is higher.
• Multiple users can share batch systems.
• Managing large works becomes easy in batch systems.
• The idle time for a single batch is very less.

18
…CONT
Disadvantages of OS
• It is hard to debug batch systems.
• If a job fails, then the other jobs have to wait for an unknown
time till the issue is resolved.
• Batch systems are sometimes costly.
Examples of Batch OS: payroll system, bank statements,
data entry, etc.

19
Distributed OS
A distributed OS is a recent advancement in the field of
computer technology and is utilized all over the world that too
with great pace. In a distributed OS, various computers are
connected through a single communication channel. These
independent computers have their memory unit and CPU and
are known as loosely coupled systems. The system processes
can be of different sizes and can perform different functions.
The major benefit of such a type of operating system is that a
user can access files that are not present on his system but in
another connected system. In addition, remote access is
available to the systems connected to this network.

20
…CONT
Advantages of Distributed OS
• Failure of one system will not affect the other systems because all the
computers are independent of each other.
• The load on the host system is reduced.
• The size of the network is easily scalable as many computers can be
added to the network.
• As the workload and resources are shared therefore the calculations are
performed at a higher speed.
• Data exchange speed is increased with the help of electronic mail.
Disadvantages of Distributed OS
• The setup cost is high.
• Software used for such systems is highly complex.
• Failure of the main network will lead to the failure of the whole system.
Examples of Distributed OS: LOCUS, etc.
21
Multitasking OS
The multitasking OS is also known as the time-sharing
operating system as each task is given some time so that all
the tasks work efficiently. This system provides access to a
large number of users, and each user gets the time of CPU as
they get in a single system. The tasks performed are given by
a single user or by different users. The time allotted to
execute one task is called a quantum, and as soon as the time
to execute one task is completed, the system switches over to
another task.

22
Advantages of Multitasking OS
• Each task gets equal time for execution.
• The idle time for the CPU will be the lowest.
• There are very few chances for the duplication of the
software.
Disadvantages of Multitasking OS
• Processes with higher priority cannot be executed first as
equal priority is given to each process or task.
• Various user data is needed to be taken care of from
unauthorized access.
• Sometimes there is a data communication problem.
Examples of Multitasking OS: UNIX, etc.
23
NETWORK OS
Network operating systems are the systems that run on a
server and manage all the networking functions. They allow
sharing of various files, applications, printers, security, and
other networking functions over a small network of computers
like LAN or any other private network. In the network OS, all the
users are aware of the configurations of every other user within
the network, which is why network operating systems are also
known as tightly coupled systems.

24
….CONT
Advantages of Network OS
• New technologies and hardware can easily upgrade the systems.
• Security of the system is managed over servers.
• Servers can be accessed remotely from different locations and systems.
• The centralized servers are stable.
Disadvantages of Network OS
• Server costs are high.
• Regular updates and maintenance are required.
• Users are dependent on the central location for the maximum number of
operations.
Examples of Network OS: Microsoft Windows server 2008, LINUX, thin
client etc.

25
Real-Time OS
Real-Time operating systems serve real-time systems. These
operating systems are useful when many events occur in a
short time or within certain deadlines, such as real-time
simulations.
Types of the real-time OS are:
• Hard real-time OS
The hard real-time OS is the operating system for mainly the
applications in which the slightest delay is also unacceptable.
The time constraints of such applications are very strict. Such
systems are built for life-saving equipment like parachutes
and airbags, which immediately need to be in action if an
accident happens.

26
…CONT
• Soft real-time OS
The soft real-time OS is the operating system for applications where time
constraint is not very strict.
In a soft real-time system, an important task is prioritized over less
important tasks, and this priority remains active until the completion of the
task. Furthermore, a time limit is always set for a specific job, enabling short
time delays for future tasks, which is acceptable. For Example, virtual
reality, reservation systems, etc.
Advantages of Real-Time OS
• It provides more output from all the resources as there is maximum
utilization of systems.
• It provides the best management of memory allocation.
• These systems are always error-free.
• These operating systems focus more on running applications than those in
the queue.
• Shifting from one task to another takes very little time.
27
….CONT

Disadvantages of Real-Time OS
• System resources are extremely expensive and are not so
good.
• The algorithms used are very complex.
• Only limited tasks can run at a single time.
• In such systems, we cannot set thread priority as these
systems cannot switch tasks easily.
Examples of Real-Time OS: Medical imaging systems,
robots, etc.

28
Mobile OS
A mobile OS is an operating system for smartphones, tablets,
and PDA’s. It is a platform on which other applications can run
on mobile devices.
Advantages of Mobile OS
• It provides ease to users.
Disadvantages of Mobile OS
• Some of mobile operating systems give poor battery quality
to users.
• Some of the mobile operating systems are not user-friendly.
Examples of Mobile OS: Android OS, ios, Symbian OS, and
Windows mobile OS.

29
 Single-tasking vs. multi-tasking operating systems:
Single-tasking operating systems allow only one program to
run at a time, while multi-tasking operating systems allow
multiple programs to run simultaneously. Desktop vs.
mobile operating systems: Desktop operating systems,
such as Windows and macOS, are designed for use on
desktop and laptop computers, while mobile operating
systems, such as iOS and Android, are designed for use on
smartphones and tablets. Open-source vs. proprietary
operating systems: Open-source operating systems are
developed by a community of developers and are available
for free, while proprietary operating systems are developed
by a single company and must be purchased.

30
32-BIT OS VERSUS 64-BIT
Parameter
OS 32-Bit OS 64-Bit OS

The 32 bit OS can store and manage less In contrast, the 64 bit OS has a larger data
data than the 64 bit OS, as its name handling capacity than the 32 bit OS. It
Data and Storage would imply. It addresses a maximum of indicates that a total of 264 memory
4,294,967,296 bytes (4 GB) of RAM in addresses, or 18 quintillion gigabytes of
more detail. RAM, can be addressed.

A 32-bit processor system will run only on A 64-bit processor system can run either a
Compatibility of System
32-bit OS and not on 64 bit OS. 32-bit or 64-bit OS

The 32-bit OS support applications with no


Application Support The 64-bit OS do not support applications.
hassle.

Higher performance than the 32-bit


Performance Performance of 32- bit OS is less efficient.
processor.

These support Windows XP Professional,


These support Windows 7, Windows XP,
Systems Available Windows 7, Windows 8, Windows 10,
Windows Vista, Windows 8, and Linux.
Windows Vista, Linux, and Mac OS X.

31
POPULAR OPERATING SYSTEMS
Some of the most popular operating systems in use today
include:
• Windows: Windows is the most popular desktop operating
system, used by over 1 billion users worldwide. It has a wide
range of features and applications, including the Office suite,
gaming, and productivity tools.
• macOS: macOS is the desktop operating system used by
Apple Mac computers. It is known for its clean, user-friendly
interface and is popular among creative professionals.

32
….CONT
• Linux: Linux is an open-source operating system that is
available for free and can be customized to meet specific
needs. It is used by developers, businesses, and individuals
who prefer an open-source, customizable operating system.
• iOS: iOS is the mobile operating system used by Apple
iPhones and iPads. It is known for its user-friendly interface,
tight integration with Apple’s hardware and software, and
robust security features.
• Android: Android is the most popular mobile operating
system, used by over 2 billion users worldwide. It is known for
its open-source nature, customization options, and
compatibility with a wide range of devices.

33
CHOOSING THE RIGHT
OPERATING SYSTEM
When choosing an operating system, there are several factors
to consider, including:
• Cost: Some operating systems, such as Linux, are free, while others,
such as Windows and macOS, must be purchased.
• Compatibility: Some software and hardware may only work with
certain operating systems, so choosing an operating system compatible
with your needs is important.
• Ease of use: Some operating systems, such as macOS and iOS, are
known for their user-friendly interfaces, while others, such as Linux, may
have a steeper learning curve.
• Security: Some operating systems, such as macOS and iOS, are known
for their robust security features, while others, such as Windows, may be
more vulnerable to security threats.

34
ADVANTAGES OF
OPERATING SYSTEM
There are several advantages of operating systems. We have
listed some of them below:
1. Ensuring correct and efficient use of the computer’s hardware.
2. Allowing different applications to run concurrently.
3. Managing files and folders.
4. Providing a user interface.
5. Managing security.
6. Managing resources.
7. Managing printing.
8. Providing a platform for software development.

35
DISADVANTAGES OF
OPERATING SYSTEM
There are several disadvantages of operating systems. We have
listed some of them below:
• They can be complex and difficult to use.
• They can be expensive to purchase and maintain.
• They can be vulnerable to attacks from malicious users.

36
SOFTWARE USER INTERFACE DESIGN
 User interface is the front-end application view to which user
interacts in order to use the software. User can manipulate
and control the software as well as hardware by means of
user interface. Today, user interface is found at almost every
place where digital technology exists, right from computers,
mobile phones, cars, music players, airplanes, ships etc.
 User interface is part of software and is designed such a way
that it is expected to provide the user insight of the software.
UI provides fundamental platform for human-computer
interaction.
 UI can be graphical, text-based, audio-video based,
depending upon the underlying hardware and software
combination. UI can be hardware or software or a combination
of both.

37
The software becomes more popular if its user
interface is:
• Attractive
• Simple to use
• Responsive in short time
• Clear to understand
• Consistent on all interfacing screens

38
 Communication between a user and a computer is two-way.
One of the jobs of the operating system is to provide a 'user
interface', so that a human can communicate with the
hardware that makes up a computer. When you buy a piece
of software, it too will have a user interface, so that you can
access and use the software. A user will give data and
instructions to a computer and a computer will give
information back to a user.

39
 The way that a computer and a user communicate is known as
the interface. There are alternative terms to describe this.
Another common term is the Human-Computer Interface, also
known as the HCI. If you are going to describe the interface
fully, you need to talk about the input devices, the software
interface and the output devices. In this section, we will
concentrate on the nature of the software interface. We will
describe the different types of software interface that you
might find as part of an operating system and identify their
characteristics.

40
USER INTERFACE GOLDEN RULES
The following rules are mentioned to be the golden rules for GUI
design, described by Shneiderman and Plaisant in their book
(Designing the User Interface).
• Strive for consistency - Consistent sequences of actions
should be required in similar situations. Identical terminology
should be used in prompts, menus, and help screens.
Consistent commands should be employed throughout.
• Enable frequent users to use short-cuts - The user’s
desire to reduce the number of interactions increases with the
frequency of use. Abbreviations, function keys, hidden
commands, and macro facilities are very helpful to an expert
user.

41
• Offer informative feedback - For every operator action,
there should be some system feedback. For frequent and
minor actions, the response must be modest, while for
infrequent and major actions, the response must be more
substantial.
• Design dialog to yield closure - Sequences of actions
should be organized into groups with a beginning, middle,
and end. The informative feedback at the completion of a
group of actions gives the operators the satisfaction of
accomplishment, a sense of relief, the signal to drop
contingency plans and options from their minds, and this
indicates that the way ahead is clear to prepare for the next
group of actions.

42
• Offer simple error handling - As much as possible, design
the system so the user will not make a serious error. If an error
is made, the system should be able to detect it and offer
simple, comprehensible mechanisms for handling the error.
• Permit easy reversal of actions - This feature relieves
anxiety, since the user knows that errors can be undone. Easy
reversal of actions encourages exploration of unfamiliar
options. The units of reversibility may be a single action, a data
entry, or a complete group of actions.

43
• Support internal locus of control - Experienced
operators strongly desire the sense that they are in charge of
the system and that the system responds to their actions.
Design the system to make users the initiators of actions
rather than the responders.
• Reduce short-term memory load - The limitation of
human information processing in short-term memory requires
the displays to be kept simple, multiple page displays be
consolidated, window-motion frequency be reduced, and
sufficient training time be allotted for codes, mnemonics, and
sequences of actions.

44
There are five different types of interface that might come with
an operating system. These are:
1. Graphical User Interfaces (GUI)
2. Command Line Interfaces (CLI)
3. Form-based interfaces
4. Menu-based interfaces
5. Natural language interfaces.

45
46
GRAPHICAL USER INTERFACE (GUI)
 Interfaces that are graphical in nature are known either as
Graphical User Interfaces (GUI) or WIMP interfaces
(Windows, Icons, Menus and Pointer). Typically, you would
expect these types of interfaces to be available in multi-
tasking environments (where you open and use more than
one piece of software at a time) or in applications software
that involve a considerable degree of complexity. You will all
have used a GUI hundreds of times, when you used
Windows, or Word, or a Star Office application, or Paint in
primary school, or Explorer or FireFox to surf the web and so
on. Each of these applications has its own window that it
opens up into, and you can open up more than one window
(and therefore more than one application) at a time. Only
one application is 'active' at any one time.

47
……CONT
 In Windows, you know which one is active because the active
window has a bright blue bar at the top of the window, as
opposed to a dimmed blue bar. There are also icons you can
click on for fast access to the tools in the application. There
are drop-down menus that ensure you don't have hundreds
of options constantly on display, taking up room on the
screen. The pointer is usually a mouse or a finger on
touchscreens although graphic designers and engineers
often prefer to use a tablet and stylus for pointing. A mouse
or tablet / stylus combination ensures that you can make
selections quickly rather than having to use a keyboard,
which is slower and prone to mistakes.

48
To summarize, you would typically expect to find the
following in a GUI or WIMP user interface:
O A 'window' for each open application. Many windows can be open at
the same time but only one window can be active at any one time.
There may be some way of indicating which one is active (perhaps by
making the bar at the top of the active window bright blue).
O Menus and icons. Available functions can be selected in one of two
ways, either by using pop-up menus or drop-down menus, or by
clicking on 'icons'. An icon is simply a small picture that represents a
specific function - clicking on it selects that function.
O A pointing device, to make selections. It is typically a mouse, a
graphics tablet and pen or a finger on touchscreens. The use of a
keyboard to navigate through the application is minimized because it is
a relatively time-consuming way of working.

49
COMMAND LINE INTERFACE
 Command line interfaces are the oldest of the interfaces
discussed here. It involves the computer responding to
commands typed by the operator. This type of interface has
the drawback that it requires the operator to remember a
range of different commands and is not ideal for novice
users.

50
COMMAND LINE INTERFACE

 A command line interface requires a user to type in


commands from a list of allowable commands. Suppose
you want to back-up a file called donkey.doc to a folder
(directory) called animals on your floppy disk. In a GUI, you
would open your file manager, click on the file you want to
save and drag it to the folder called animals on the floppy
disk. Anyone can do that! If you wanted to do the
equivalent in DOS, for example, which has a command line
interface, you would have to know how to construct the
command to copy a file from one place to another. You
51
would have to type: C:\> copy donkey.doc a:\animals
 This type of interface can take a long time to learn and is
not intuitive. For inexperienced users it can be a frustrating
type of interface whilst for experienced users it can be very
powerful. This is because command line interfaces provide
commands that can get a user very close to the workings of
the components of a computer system. There are
commands that can manipulate the hardware and software
in a computer system in a way that simply cannot be done
using a GUI. Indeed, there are tasks where you have to use
a command line interface to carry them out. UNIX and DOS
are good examples of operating systems that use this kind
of interface.
 Typical users of command line interfaces are technicians
and network managers. They need to perform many set-up
tasks and system tasks. These tasks can only be done using
this type of interface. 52
FORMS BASED INTERFACE
 Some operating systems are designed for businesses where
employees have to enter in lots of information. Just for a
moment consider a paper-based form that you are asked to
fill in, perhaps for the membership of a club or an application
for a driving license. What you have to write down is highly
directed. There are instructions to help you, boxes where you
write or select information from some choices and boxes
where you simply tick one of a selection. A form-based
software interface on a computer is similar to a paper-based
'interface'. The input into the computer is predictable. If you
used a range of form-based interfaces, you would start to see
a number of common characteristics.

53
1. There are field names, names next to a place where
information must be entered. The places where information
should be entered in by the operator are known as 'response
fields'.
2. Other types of response fields include radio buttons and
drop-down selectors.
3. The cursor 'tabs' automatically from one response field to
the next. This guides the user logically through the form,
ensuring that all the information needed is gathered.
4. As data is entered, it is 'validated'. Validation attempts to
ensure that only sensible data is entered into the system and
data that is not sensible is rejected. Validation helps ensure
that data entered into any system maintains its 'consistency'.

54
This means that any data stored is only of the format
expected in a particular field. Data can be validated
using a range of methods. (These are discussed in
more detail later in this chapter). The methods
include: A range check.
 A character length check.
 A data input mask.
 A presence check.
 Getting the user to select from a list using combo
boxes or look-up tables.
 Using check digits.
5. Input can be changed/cancelled if necessary.

55
6. Data is finally entered into the system only
when an 'OK' button, ENTER or something similar
is pressed.
7. There is some kind of HELP facility.
8. Some options are not displayed on the main
screen, to avoid cluttering up the form. Access to
less commonly needed facilities is via a selection
button that links to a separate screen.

56
Form-based interfaces are very suitable for any application
that involves entering predictable pieces of information
into the computer. Examples include
O Someone taking telephone orders for a product such as
a CD.
O Someone recording responses to questions in a
telephone questionnaire.
O Someone entering in details of people who want to apply
for a credit card.
O Someone applying to join a club or open a free email
account on the Internet.
O Someone who is buying something online.
All of these activities might be done with the aid of a form-
based interface. This is because the same, predictable
information will be asked for by the operator or by the
web-based organization over and over again for each order
or questionnaire or application. Here is an example of a
form-based interface. 57
58
MENU-DRIVEN INTERFACE
Some operating systems are designed with a
menu-based user interface. Menu-based user
interfaces are ideal for situations where the
user's IT skills cannot be guaranteed or in
situations which require selections to be made
from a very wide range of options or in situations
which require very fast selection. The user of a
system that uses a menu-based interface will be
presented with a limited number of options on
the screen. Once a selection has been made, the
user is presented with a sub-menu. This gives
them further options. They make another
selection and may be presented with a further
sub-menu. This continues until the user is able to
select exactly what they want from the choices
finally displayed on the screen. Here is an
example of a menu-based screen that might be 59
found at a tourist office.
60
A tourist, who may not have any IT skills, could
be presented with a screen with 9 buttons on it,
perhaps including theatres, cinemas, pubs and
trains, for example. They would touch the touch
screen in the area of one of the buttons to make
a selection. If they selected 'Cinemas', for
example, they would then be presented with a
sub-menu. This might look like another menu-
based screen with six buttons on it, for example,
one for each cinema in the area. If they then
selected one of those, they would be presented
with the films that are currently showing and the
times they are on. This type of user interface is
about as simple as you can get. You do not need
any computer skills to access the wealth of
information on a system like this.
61
NATURAL LANGUAGE INTERFACE
This kind of interface requires the user to enter
responses to questions asked by the computer.
The questions are displayed on the VDU and the
answers are entered via the keyboard. This kind
of interface is called a 'natural language'
interface because the computer and the user
appear to be holding a conversation. For
example, imagine the user has initiated a 'save
file' request. The 'conversation' might go like
this:
USER: Save file
COMP: What is the file name?
USER: chapter1.txt
COMP: What folder?
USER: UserGuide COMP: File already exists.
Overwrite?
62

USER: Yes
This kind of interface can be found on data entry
terminals and other types of 'dumb terminals'
connected to a network where non-expert users
are guided by the computer through the complex
tasks they need to perform.

63
 A natural language interface is a spoken interface
where the user interacts with the computer by
talking to it. Sometimes referred to as a
'conversational interface', this interface simulates
having a conversation with a computer. Made
famous by science fiction (such as in Star Trek),
natural language systems are not yet advanced
enough to be in wide-spread use. Commonly used
by telephone systems as an alternative to the
user pressing numbered buttons the user can
speak their responses instead. An Example of this
type of interface is Voice Recognition.
 This is the kind of interface used by the popular
iPhone application called Siri and Cortana in
Windows.

64
GESTURE DRIVEN
INTERFACE
 A recent innovation in user-interfaces is the
gesture-driven interface. This is an interface
which is controlled by a human making physical
gestures which are then detected by the
computer. The idea was discussed at the TED
conference by Pranav Mistry who invented the
Sixth Sense device. This uses cameras to detect
human motion which it uses to determine what
the user wants to do.

65
 Other examples include the increasing use on
touch-screen devices (such as mobile phones
and tablet computers) of gestures such as
'pinching' to zoom in and out. Some games
consoles are starting to use gesture driven
interfaces. The Wii was the first such console
which used a hand-held controller to detect
gestures. More recently the Xbox introduced a
system similar to SixthSense which uses a
camera to detect motion

66
END
67

You might also like