Chapter 1 Part 2
description
Transcript of Chapter 1 Part 2
Chapter 1Operating System Environment
Chapter SummaryBy the end of this lecture, students will be
able to:1)Describe components of operating system:
kernel, shell, file system2)Describe using graphicals representation the
interaction between applications and the operating system
3) Identify different interfaces of operating system
4)Describe relations between system calls and Application Programming Interface (API)
Component of Operating System Operating system comprises a set of software
packages that can be used to manage interactions with the hardware.
The following elements are generally included in this set of software:
1. Kernel - Represents the operating system’s basic functions such as management of memory, processes, files, main inputs/outputs and communication functionalities.
2. Shell - Allowing communication with the operating system via a control language, letting the user control the peripherals without knowing the characteristics of the hardware used, management of physical addresses, etc.
3. File System - Allowing files to be recorded in a tree structure.
OPERATING SYSTEM
INTERFACES
User InterfaceA user interface is the system by which
people (users) interact with a machine. The user interface includes hardware (physical) and software (logical) components.
User interfaces exist for various systems, and provide a means of:
- Input, allowing the users to manipulate a system, and/or
- Output, allowing the system to indicate the effects of the users' manipulation.
User Interface Users may also interact with the
operating system with some kind of software user interface like typing commands by using command line interface (CLI) or using a graphical user interface.
For hand-held and desktop computers, the user interface is generally considered part of the operating system.
On large multi-user systems such as Unix-like systems, the user interface is generally implemented as an application program that runs outside the operating system. Operating System
Placement
Components of the User Interface The user interface has two main
components:Presentation language, which is the
computer-to-human part of the transaction.Action language that characterizes the
human-to-computer portion.
Types of User Interfaces There are several types of user interfaces:
Command Line Interfaces.Menu interfaces.Graphical User Interfaces (GUIs). Voice User Interfaces.Web Form Interfaces.
1) Command-Line InterfaceCLI are often used by programmers and system
administrators, in engineering and scientific environments, and by technically advanced personal computer users.
Examples of CLI application:
2) Menu InterfacesMenu Interface presents user with a
menu of choices.Rather than learning specific commands,
user choose them from the menu. Menus can contain submenus, in which
case user need to memorize how to access a particular command.
This is still much easier than memorizing the actual command.
Menu Interface
Menu interfaces commonly appear the beginning of a game, often at the title screen regardless of how menus are used later in the game.
Past the opening menu, games often provide an option menu for saving. While these examples constitute menu interfaces, many games include menu interfaces to control entity actions as well.
Some games provide a series of menus through which the player controls game entities that is analogous to menu systems found in interactive kiosks.
Menu Interface
The sophistication of these menu interfaces ranges from simple, flat menus to deeply nested menus with many sub-options.
The specific representation of menu interfaces can vary as well, some games representing menus as a series of graphical buttons, others using text menus.
Menu InterfaceMenu interface provides the user with an
onscreen list of available selections.A nested menu is a menu that can be
reached through another menu.
3) Graphical User Interface (GUI)A graphical user interface or GUI (sometimes
pronounced gooey) is a type of user interface item that allows people to interact with programs in more ways than typing such as computers
Examples: hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment with images rather than text commands.
A GUI offers graphical icons, and visual indicators, as opposed to text-based interfaces, typed command labels or text navigation to fully represent the information and actions available to a user.
Graphical User Interface (GUI)The actions are usually performed through
direct manipulation of the graphical elements. Pictures tend to make the interface more
intuitive.
GUI Characteristics
Characteristic DescriptionWindows Multiple windows allow different information to be
displayed simultaneously on the user’s screen.Icons Icons different types of information. On some systems,
icons represent files; on others, icons representprocesses.
Menus Commands are selected from a menu rather than typedin a command language.
Pointing A pointing device such as a mouse is used for selectingchoices from a menu or indicating items of interest in awindow.
Graphics Graphical elements can be mixed with text on the samedisplay.
4) Voice User InterfaceA Voice User Interface (VUI) makes human
interaction with computers possible through a voice/speech platform in order to initiate an automated service or process.
The VUI is the interface to any speech application.
Controlling a machine by simply talking to it was science fiction only a short time ago.
However, with advances in technology, VUI have become more common place, and people are taking advantage of the value that these hands-free, eyes-free interfaces provide in many situations.
Voice User InterfaceVoice User interface are developing rapidlyThere are two different types of voice
recognition:Continuous speech systems, allowing for
dictation.Speaker independence, so people can enter
commands or words at a given workstation.
5) Web Form InterfacesWeb Form interfaces are onscreen forms
displaying fields containing data items or parameters that need to be communicated to the user.
Web Form interfaces may be implemented using the Web.
Web Form InterfacesA Web Form allows a user to enter data that is
sent to a server for processing. Web forms resemble paper forms because
internet users fill out the forms using checkboxes, radio buttons, or text fields.
For example, Web Forms can be used to enter shipping or credit card data to order a product or can be used to retrieve data (e.g: searching on a search engine).
In addition to functioning as input templates for new information, Web Forms can also be used to query and display existing data in a similar manner to mail merge forms, with the same advantages.
Web Form Interface
Title
Author
Publisher
Edition
Classification
Date ofpurchase
ISBN
Price
Publicationdate
Number ofcopies
Loanstatus
Orderstatus
NEW BOOK
RELATION BETWEEN
SYSTEM CALLS AND API
System CallsUser programs are not allowed to access system resources
directly. They must ask the OS to do that for them.
OS provides a set of functions that can be called by user programs to request for OS services. Process to call is called “system calls”
System calls run in kernel mode.
They can be called by executing a special instruction (trap or software interrupt) which causes processor to switch to the kernel mode and jump to a previously defined location in the kernel.
When the system call finishes, processor returns to the user program and runs in user mode.
Application Programming Interface (API)An API is a set of functions provided by an
operating system or other system software.
An application program calls the functions to request the services.
An API clearly defines how to call functions and what the results are. (API is specification, not implementation)
Examples: APIs for file system, graphics user interface, networking, etc.
Application Programming Interface (API)Portability
User programs that follow the API’s definition are portable.
An API can provide a common interface for different implementations of a service. For example, the UNIX file system API is the
same for all kinds of devices.X windows API has many implementations on
different machine architectures Using an API allows upgrading system software
without changing user programs