Date post: | 14-Oct-2014 |
Category: |
Documents |
Upload: | waleed-rafique |
View: | 364 times |
Download: | 5 times |
SUBMITTED BY:-
WALEED RAFIQUE FA08-BS(TN)-
056
SUBMITTED TO:-
MUDASSAR RAZA
Lecturer
COMSATS Institute of Information Technology
GAME BASED
OPERATING SYSTEMS
TABLE OF CONTENTS
1. INTRODUCTION 1
1.1 What Is Operating System? 1
1.2 History Of Operating Systems 1
1.2.1 First Generations (1940-1950) 2
1.2.2 Second Generation (1950-1960) 2
1.2.3 Third Generation (1960-1980) 4
1.2.4 Fourth Generation (1980-Present) 9
1.3 Why We Need Game Console Instead Of PC? 15
1.4 History Of Video Gaming System 16
1.4.1 First Generation (1972 – 1977) 16
1.4.2 Second Generation (1977-1982) 17
1.4.3 Third Generation (1982-1989) 17
1.4.4 Fourth Generation (1989-1994) 18
1.4.5 Fifth Generation (1994-1998) 18
1.4.6 Sixth Generation (1998-2004) 18
1.4.7 Seventh Generation (2004-Present) 19
2. GAME CONSOLES 21
2.1 Microsoft XBOX 360 21
2.1.1 CPU 21
2.1.2 GPU 22
2.2 Sony Playstation 3 23
2.2.1 Cell Processor 23
2.2.2 GPU: RSX "Reality Synthesizer" 24
2.3 Nintendo Wii 24
2.3.1 Design 25
2.3.2 WiiMote – Gamepad 25
2.4 Comparison 26
2.5 Inside Video Game System 32
2.6 Advandtages And Disadvantages 33
2.6.1 Advantages 33
2.6.2 Disadvantages 34
2.7 Future Trends 34
3. OPERATING SYSTEM 36
3.1 Task Scheduling 36
3.1.1 Multilevel Feedback Queue 36
3.2 Deadlocks 38
3.2.1 Deadlock Handling 40
3.2.1.1 Ignore Deadlocks 40
3.3 Memory Management 41
3.3.1 Difference Between Pc And Consoles 41
3.3.2 Virtual Memory 42
3.3.3 Physical Memory 42
3.3.4 Alignment 43
3.3.4.1 Hardware Access 43
4. REFERENCE 45
TABLE OF FIGURES
FIGURE 1: OPERATING SYSTEM 1
FIGURE 2: HISTORY OF OPERATING SYSTEM 2
FIGURE 3: THE SYSTEM RUNNING ONE JOB AT A TIME 3
FIGURE 4: MULTIPROGRAMMING 5
FIGURE 5: JOB UTILIZATION 6
FIGURE 6: MICROSOFT XBOX 360 21
FIGURE 7: SONY PLAYSTATION 3 23
FIGURE 8: NINTENDO WII 25
FIGURE 9: MULTILEVEL FEEDBACK QUEUES 37
Figure 10: Deadlock 39
1. INTRODUCTION
1.1 WHAT IS OPERATING SYSTEM?
An operating system, or OS, is a software program that enables the computer
hardware to communicate and operate with the computer software.
Figure 1: Operating System
1.2 HISTORY OF OPERATING SYSTEMS
Operating systems have evolved through a number of phases or generations.C
hapt
er: 1
. IN
TR
OD
UC
TIO
N
1
Figure 2: History Of Operating System
1.2.1 FIRST GENERATIONS (1940-1950)
In the 1940s, the earliest electronic digital systems had no operating systems.
Computers of this time were so primitive compared to those of today that programs were
often entered into the computer one bit at a time on rows of mechanical switches.
Programming languages were unknown (not even assembly languages).
1.2.2 SECOND GENERATION (1950-1960)
This decade saw a number of innovations in computer architecture. These
included index registers and subroutine call instructions, both crucial to the development
of modern ideas of programming. The General Motors Research Laboratories
implemented the first operating systems in early 1950's for their IBM 701. The systems
Cha
pter
: 1. I
NT
RO
DU
CT
ION
2
of the 1950s generally ran only one job at a time. It allowed only a single person at a time
to use the machine. These were called single-stream batch processing systems because
programs and data were submitted in groups or batches.
Figure 3: The System Running One Job At A Time
Batch operating systems used a Job Control Language (JCL) to give the operating
system instructions. These instructions included designation of which punched cards
were data and which were programs, indications of which compiler to use, which
centralized utilities were to be run, which I/O devices might be used, estimates of
expected run time, and other details.
List of operating systems from the second generation:
1951
o LEO I “Lyons Electronic Office” was the commercial development of
EDSAC computing platform, supported by British firm J. Lyons and Co.
Cha
pter
: 1. I
NT
RO
DU
CT
ION
3
1954
o MIT's operating system made for UNIVAC 1103.
1955
o General Motors Operating System made for IBM 701.
1956
o GM-NAA I/O for IBM 704, based on General Motors Operating System
1957
o Atlas Supervisor (Manchester University).
o BESYS (Bell Labs), for IBM 7090 and IBM 7094.
1958
o University of Michigan Executive System (UMES), for IBM 704, 709,
and 7090.
1959
o SHARE Operating System (SOS), based on GM-NAA I/O
1.2.3 THIRD GENERATION (1960-1980)
We can say the 1960’s the era of timesharing and multiprogramming. The
systems of the 1960s were also batch processing systems but they were able to take better
advantage of the computer resources by running several jobs at once. It was observed by
operating system designers that when one job was waiting for an input-output operation
to complete before the job could continue using the processor, some other could use the
idle processor. Similarly, when one job was using the processor, other jobs could be
using the various I/O devices. The operating system designers realized that running a
mixture of diverse jobs appeared to be the best way to optimize computer utilization. The
Cha
pter
: 1. I
NT
RO
DU
CT
ION
4
process by which they do so is called multiprogramming in which several users
simultaneously compete for system resources.
Figure 4: Multiprogramming
Another major feature in third-generation operating system was the
technique called spooling. In spooling, a high-speed device like a disk interposed
between a running program and a low-speed device involved with the program in
input/output. Instead of writing directly to a printer, for example, outputs are written to
the disk. Programs can run to completion faster, and other programs can be initiated
sooner when the printer becomes available, the outputs may be printed.
Another feature present in this generation was time-sharing technique, in which
each user directly connected to computer system. So when the user is interacting with the
computer, the computer system must respond quickly to user requests, otherwise user
productivity could suffer. Timesharing systems were developed to multiprogramming
large number of simultaneous interactive users.
In 1970 Ken Thompson of AT&T Bell Labs suggested the name “Unix” for the
operating system that had been under development since 1969. In 1973 the kernel of
UNIX was rewritten in the C programming language. This made UNIX the world’s first
portable operating system, capable of being easily ported (moved) to any hardware. This
was a major advantage for UNIX and led to its widespread use in the multi-platform
environments of colleges and universities.
Cha
pter
: 1. I
NT
RO
DU
CT
ION
5
(a) Uniprogramming (b) Multiprogramming
Figure 5: Job Utilization
List of operating systems from the third generation:
1960
o IBSYS (IBM for its 7090 and 7094)
1961
o CTSS (MIT's Compatible Time-Sharing System for the IBM 7094)
o MCP (Burroughs Master Control Program)
1962
o Atlas Supervisor (Manchester University) Cha
pter
: 1. I
NT
RO
DU
CT
ION
6
o GCOS (GE's General Comprehensive Operating System, originally
GECOS, General Electric Comprehensive Operating Supervisor)
1964
o EXEC 8 (UNIVAC)
o OS/360 (IBM's primary OS for its S/360 series)
o TOPS-10 (DEC, the name TOPS-10 wasn't adopted until 1970)
o Berkeley Timesharing System (for Scientific Data Systems' SDS 940)
o Dartmouth Time Sharing System (Dartmouth College's DTSS for GE
computers)
1965
o Multics (MIT, GE, Bell Labs for the GE-645)
o BOS/360 (IBM's Basic Operating System)
o TOS/360 (IBM's Tape Operating System)
1966
o OS/360 (IBM's primary OS for its S/360 series)
o MFT
o DOS/360 (IBM's Disk Operating System)
o MS/8 (Richard F. Lary's DEC PDP-8 system)
1967
o CP/CMS (IBM, also known as CP-67) Cha
pter
: 1. I
NT
RO
DU
CT
ION
7
o Michigan Terminal System (MTS) (time-sharing system for the IBM
S/360-67 and successors)
o ITS (MIT's Incompatible Timesharing System for the DEC PDP-6 and
PDP-10)
o ORVYL (Stanford University's time-sharing system for the IBM S/360)
o TSS/360 (IBM's Time-sharing System for the S/360-67, never officially
released, canceled in 1969 and again in 1971)
o MVT
o WAITS (SAIL, Stanford Artificial Intelligence Laboratory, time-sharing
system for DEC PDP-6 and PDP-10, later TOPS-10)
1968
o Airline Control Program (ACP) (IBM)
o TSS-8 (DEC for the PDP-8)
o THE multiprogramming system (Technische Hogeschool Eindhoven)
1969
o TENEX (Bolt, Beranek and Newman for DEC systems, later TOPS-20)
o Unics (later Unix) (AT&T, initially on DEC computers)
o RC 4000 Multiprogramming System (RC)
o Multics (MIT, GE, Bell Labs for the GE-645 and later the Honeywell
6180)
1970
o DOS-11 (PDP-11)
Cha
pter
: 1. I
NT
RO
DU
CT
ION
8
1971
o RSTS-11 2A-19
o OS/8
1972
o RDOS
o SVS
o VM/CMS
1973
o (Elbrus-1) - Soviet computer - created using high-level language uЭль-76
(AL-76/ALGOL 68).
o VME - implementation language S3 (ALGOL 68).
o RSX-11D
o RT-11
o Alto OS
1974
o DOS-11 V09-20C
o SINTRAN III
o MONECS
1975
o CP/M
o BS2000 V2.0
Cha
pter
: 1. I
NT
RO
DU
CT
ION
9
o Sixth Edition Unix
1976
o Cambridge CAP computer - All operating system procedures written in
ALGOL 68C, with some closely associated protected procedures in
BCPL.
o Cray Operating System
o FLEX
o TOPS-20
1977
o 1BSD
o KERNAL
o OASIS operating system
o TRS-DOS
o Virtual Memory System (VMS) V1.0 (Initial commercial release, October
25)
1978
o 2BSD
o Apple DOS
o HDOS 1.0
o TripOS
o UCSD p-System
Cha
pter
: 1. I
NT
RO
DU
CT
ION
10
o Lisp Machine (CADR)
1979
o Atari DOS
o POS
o NLTSS
o UNIX/32V
o Version 7 Unix
1.2.4 FOURTH GENERATION (1980-PRESENT)
With the development of LSI (Large Scale Integration) circuits, chips, operating
system entered in the system entered in the personal computer and the workstation age.
Microprocessor technology evolved to the point that it becomes possible to build desktop
computers as powerful as the mainframes of the 1970s.
The 1980s saw the commercial release of the graphic user interface, most
famously the Apple Macintosh, Commodore Amiga, and Atari ST, followed by
Microsoft’s Windows.
Two operating systems have dominated the personal computer scene: MS-DOS,
written by Microsoft, Inc. for the IBM PC and other machines using the Intel 8088 CPU
and its successors, and UNIX, which is dominant on the large personal computers using
the Motorola 6899 CPU family.
List of operating systems from the fourth generation:
1980
o CTOS
o OS-9
Cha
pter
: 1. I
NT
RO
DU
CT
ION
11
o 86-DOS
o SOS
o Pilot (Xerox Star operating system)
o Xenix
1981
o PC-DOS
o MS-DOS
o Business Operating System
o UTS
o Acorn MOS
o Aegis SR1
1982
o Commodore DOS
o LDOS (By Logical Systems, Inc. - For the Radio Shack TRS-80 Models I,
II & III)
o SunOS (1.0)
o QNX
o Ultrix
1983
o Lisa Office System 7/7
o Coherent
Cha
pter
: 1. I
NT
RO
DU
CT
ION
12
o GNU
o Novell NetWare (S-Net)
o ProDOS
o SunOS 1.0
1984
o Mac OS (System 1.0)
o MSX-DOS
o Sinclair QDOS
o QNX
o UNICOS
o Venix 2.0
1985
o AmigaOS
o Atari TOS
o DG/UX
o MIPS OS
o Oberon - written in Oberon-2
o SunOS 2.0
o Version 8 Unix
o Windows 1.0
o Xenix 2.0
Cha
pter
: 1. I
NT
RO
DU
CT
ION
13
1986
o AIX 1.0
o GS-OS
o Genera 7.0
o HP-UX
o SunOS 3.0
o GEOS
o Version 9 Unix
1987
o Arthur
o IRIX
o MINIX 1.0
o BS2000 V9.0
o OS/2 (1.0)
o PC-MOS/386
o Windows 2.0
1988
o A/UX (Apple Computer)
o RISC iX
o LynxOS
o Mac OS (System 6)
Cha
pter
: 1. I
NT
RO
DU
CT
ION
14
o MVS/ESA
o OS/400
o SpartaDOS X
o SunOS 4.0
o TOPS-10 7.04
o HeliOS 1.0
1989
o EPOC
o NEXTSTEP (1.0)
o RISC
o SCO UNIX
o TSX-32
o Version 10 Unix
o Xenix 2.3.4
1990
o AmigaOS 2.0
o BeOS (v1)
o Genera 8.0
o OSF/1
o AIX 3.0
o Windows 3.0
Cha
pter
: 1. I
NT
RO
DU
CT
ION
15
1991
o Linux
o Mac OS
o MINIX 1.5
o PenPoint OS
o RISC OS 3
1992
o 386BSD 0.1
o AmigaOS 3.0
o Amiga Unix 2.01
o RSTS/E 10.1
o Solaris 2.0
o OpenVMS V1.0
o Plan 9 First Edition
o Windows 3.1
1993
o FreeBSD
o NetBSD
o Newton OS
o Windows NT 3.1
o Open Genera 1.0
Cha
pter
: 1. I
NT
RO
DU
CT
ION
16
o IBM 4690 Operating System
o Novell NetWare 4
o Slackware 1.0
o Spring
1994
o AIX 4.0, 4.1
o RISC OS 3.5
o NetBSD 1.0
1995
o Digital UNIX (aka Tru64 UNIX)
o OpenBSD
o OS/390
o Plan 9 Second
o Ultrix 4.5
o Windows 95
1996
o Mac OS 7.6
o Windows NT 4.0
o RISC OS 3.6
o AIX 4.2
o Palm OS
Cha
pter
: 1. I
NT
RO
DU
CT
ION
17
1997
o Inferno
o Mac OS 8
o SkyOS
o MINIX 2.0
o RISC OS 3.7
o AIX 4.3
1998
o Solaris 7
o Windows 98
o RT-11 5.7
o Novell NetWare 5
o JUNOS
1999
o AROS
o RISC OS 4
o Mac OS 9
o Windows 98 (2nd edition)
o Inferno Second Edition
2000
o AtheOS
Cha
pter
: 1. I
NT
RO
DU
CT
ION
18
o Mac OS 9
o Windows 2000
o Windows Me (Millennium Edition)
2001
o Mac OS X
o Windows XP
o z/OS
2002
o Syllable
o Red Hat Enterprise Linux
2003
o Windows Server 2003
o Fedora Core Linux FC1
2006
o Windows Vista
2009
o Windows 7
1.3 WHY WE NEED GAME CONSOLE INSTEAD OF PC?
A video game console is an interactive entertainment computer or modified
computer system that produces a video display signal which can be used with a display
device (a television, monitor, etc.) to display a video game.
Cha
pter
: 1. I
NT
RO
DU
CT
ION
19
Why would we need a game console instead of a computer? There are several
reasons:
A video game console is less expensive than a computer specially designed to run
video games.
Consoles tend to load games faster than most PCs.
Video game systems are designed to be part of your entertainment system. This
means that they are easy to connect to your TV and stereo.
There are no compatibility issues, such as operating system, DirectX drivers,
correct audio card, supported game controller, resolution and so on.
Game developers know exactly what components are in each system, so games
are written to take full advantage of the hardware.
Most video game systems have games that allow multiple players. This is a
difficult process with a typical home computer.
1.4 HISTORY OF VIDEO GAMING SYSTEM
The history of video game consoles is divided into as many as seven generations
according to the technologically development and popularity.
1.4.1 FIRST GENERATION (1972 – 1977)
Although the first computer games appeared in the 1950s, they were based around
vector displays, not analog video. It was not until 1972 that Magnavox released the first
home video game console which could be connected to a TV set—the Magnavox
Odyssey, invented by Ralph H. Baer. The Odyssey was successful only to some extent,
and it was Atari's arcade game called Pong which loudly announced the entry of video
games and took the public attention to the emerging industry. By the autumn of 1975
Magnavox, bowing to the popularity of Pong, cancelled the Odyssey and released a
scaled down console that only played Pong and hockey, the Odyssey 100. A higher end
Cha
pter
: 1. I
NT
RO
DU
CT
ION
20
console called the Odyssey 200 was simultaneously released with the 100, and had added
features like onscreen scoring, ability to support up to four players and had a third game -
Smash. This phase in the development of video game consoles is called the first
generation.
1.4.2 SECOND GENERATION (1977-1982)
In 1976, the Fairchild Video Entertainment System (VES) was released. This
console made the first true use of the cartridge as game storage device. Previously there
had been other consoles like the Odyssey that used cartridges, but had no data and served
a function similar to flipping switches. The VES, however, contained a programmable
microprocessor so its cartridges only needed a single ROM chip to store microprocessor
instructions. RCA and Atari soon released their own cartridge-based consoles. Atari's
Video Computer System (VCS), later known as the Atari 2600, was based on an 8-bit
Motorola 6507 microprocessor, with 256 bytes of RAM. We can say this generation as
the”Golden Era” of video game systems.
1.4.3 THIRD GENERATION (1982-1989)
In 1983, Japanese gaming giant Nintendo introduced the Family Computer, also
known as Famicom in Japan. It supported high-resolution sprites and with more colored
tiled backgrounds. This facilitated games in Famicom to be longer and have higher
graphics detailing. Nintendo brought their Famicom over to the US in the form of the
Nintendo Entertainment System (NES) in 1985 and almost instantly gained immense
popularity. To distinguish its product from older video game consoles, Nintendo used a
front-loading cartridge port similar to a VCR on the NES, packaged the NES with a
Super Mario Brothers game.
1.4.4 FOURTH GENERATION (1989-1994)
In October 1988, Sega, another electronics baron, retrieved market share by
releasing its own high featured console in Japan called the Mega Drive. Sega extended
Cha
pter
: 1. I
NT
RO
DU
CT
ION
21
the Mega Drive with the Mega CD/Sega CD, to provide increased storage space for
multimedia-based games that were then in vogue among the development community.
Two years after this, Nintendo released its extremely popular Super Nintendo
Entertainment System (SNES). This is the era when video game consoles were fiercely
demanded by kids across North America.
1.4.5 FIFTH GENERATION (1994-1998)
Initial fifth generation consoles included the Atari Jaguar and the 3DO, which
were loaded with many more features than the Super Nintendo. It was in this era, on
December 3, 1994, that Sony's PlayStation was released in Japan. The PlayStation could
have been a result of a business partnership between Sony and Nintendo to make a CD
based add-on for the SNES. But, this was not to be and Nintendo walked out of the deal
approached Philips. With the PS project nearing completion, Sony used its own resources
and marketed this console under its own brand name. This was a landmark event in the
history of video game consoles.
1.4.6 SIXTH GENERATION (1998-2004)
This generation saw a move towards PC-like architectures in gaming consoles, as
well as a shift towards using DVDs for game media. This brought games that were both
longer and more visually appealing. Furthermore, this generation saw another noticeable
development in the history of game consoles. There was experimentation with LAN type
online console gaming and introductions of flash drives and hard drives for game data
storage.
Sony's PlayStation 2 was released in North America on October 26, 2000 as the
follow-up to its highly successful PlayStation, and was also the first home game
console to be able to play DVDs.
The Nintendo GameCube, released November 18, 2001 in North America, was
Nintendo's fourth home video game console and the first console by the company
to use optical media instead of cartridges.
Cha
pter
: 1. I
NT
RO
DU
CT
ION
22
Microsoft's Xbox, released on November 15, 2001 in North America, was the
company's first video game console. The first console to employ a hard drive right
out of the box to save games, and had similar hardware specifications to a low-
end desktop computer at the time of its release.
1.4.7 SEVENTH GENERATION (2004-PRESENT)
The features introduced in this generation include the support of new disc
formats: Blu-ray Disc, utilized by the PlayStation 3, and HD DVD supported by the Xbox
360 via an optional accessory, which was later discontinued as the format was closed.
Another new technology is the use of motion as input, and IR tracking, as implemented
on the Wii, and PS3. Also, all seventh generation consoles support standard wireless
controllers.
Microsoft released the Xbox 360 in 2005. It featured processing power never
before seen until Sony rivaled back with its Playstation 3 one year later. It
additionally played DVDs, which is the main reason it has been able to somewhat
compete with Nintendo's console.
Sony PlayStation 3 was released in Japan on November 11, 2006.PlayStation 3
come with a hard drive and is able to play Blu-ray Disc movies and games out of
the box. The PlayStation 3 was the first video game console to support HDMI
output out of the box, utilizing full 1080p resolution. Up to seven devices
(including controllers, with tilt-sensing capabilities) connect to the console using
Bluetooth.
Nintendo Wii was released in North America on November 19, 2006. The Wii
does not support an internal hard drive, but instead uses 512 MB of internal Flash
memory and includes support for removable SD card storage. It also has a
maximum resolution output of 480p, making it the only seventh generation
console not able to output high-definition graphics. Along with its lower price, the
Wii is notable for its unique controller, the Wii Remote, which resembles a TV
remote. The system utilizes a "sensor bar" that emits infrared light that is detected
Cha
pter
: 1. I
NT
RO
DU
CT
ION
23
by an infrared camera in the Wii Remote to determine orientation relative to the
source of the light.
Cha
pter
: 1. I
NT
RO
DU
CT
ION
24
2. GAME CONSOLES
2.1 MICROSOFT XBOX 360
Release Date: 22 November 2005
Figure 6: Microsoft XBOX 360
2.1.1 CPU Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
25
As with any computer, the CPU is the heart of the Xbox 360. Microsoft has
outfitted the 360 with a 165-million transistor, multi-core processor running three 3.2-
GHz PowerPC cores.
Each core on the chip functions as a separate processor. Recently, hardware
manufacturers have started combining several cores, or processors, onto one chip. This is
a multi-core processor. Multi-core processors offer a combination of tremendous
computing capabilities and efficient power consumption. They split
heavy workloads over multiple powerful processors rather than giving all the work to one
super-powerful processor.
The other interesting thing to note about the Xbox 360 CPU is that each core is
capable of processing two threads simultaneously.
2.1.2 GPU
Another powerful asset in the Xbox 360 is the Graphics Processor Unit (GPU).
The Xbox 360 boasts the new, custom-built 500-MHz ATI Graphics Processor card with
10 MB of embedded DRAM. The most innovative thing about this card is that it is built
on unified shader architecture.
Shaders are computer programs that determine the final look of what you see on
the screen when you're looking at computer animation. Shaders take rendered 3-D objects
built on polygons (the building blocks of 3-D animation) and make them look more
realistic. There are two types of shaders: pixel shaders and vertex shaders.
Pixel shaders alter the lighting, color and surface of each pixel. This in turn
affects the overall color, texture and shape of 3-D objects built from these pixels.
Pixel shaders help "smooth out" 3-D objects, giving them a more organic texture.
Vertex shaders work by manipulating an object's position in 3-D space. "Vertex"
refers to the intersection of two coordinates in space. The machine maps the
position of an animated object in 3-D space by giving it a value. These values are
the x, y and z coordinates. By manipulating these variables, a vertex shader
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
26
creates realistic animation and special effects such as "morphing." To read more
about vertex shaders,
2.2 SONY PLAYSTATION 3
Release Date: 11 November 2006.
Figure 7: Sony PlayStation 3
2.2.1 CELL PROCESSOR
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
27
Sony designed the PlayStation 3 to be more than just a video game console. It
supports all kinds of digital entertainment and is basically a home-entertainment
computer. This computer sports a specially designed CPU called the Cell processor.
Sony, Toshiba and IBM worked together to develop the Cell processor. The setup of the
Cell processor is like having a team of processors all working together on one chip to
handle the large computational workload needed to run next-generation video games.
The Cell is a 3.2-GHz PowerPC core equipped with 512 KB of L2 cache. The
PowerPC core is a type of microprocessor similar to the one you would find running the
Apple G5. It's a powerful processor on its own and could easily run a computer by itself;
but in the Cell, the PowerPC core is not the sole processor. Instead, it's more of a
"managing processor." It delegates processing to the eight other processors on the chip,
the Synergistic Processing Elements.
The computational workload comes in through the PowerPC core. The core then
assesses the work that needs to be done, looks at what the SPEs are currently processing
and decides how to best dole out the workload to achieve maximum efficiency.
2.2.2 GPU: RSX "REALITY SYNTHESIZER"
Because graphics are so important to computers, there are microprocessors
dedicated only to creating and displaying computer graphics. This processor is called the
Graphic Processing Unit (GPU). One of the most anticipated aspects of the PlayStation 3
is the new GPU that was created for it -- the RSX "Reality Synthesizer."
Sony designed the RSX with graphics-card manufacturer Nvidia. The RSX is
based on Nvidia's GeForce graphics technology. It's a 550-MHz, 300-million-transistor
graphics chip. Unlike the GPU in the Xbox 360, the RSX is built on the traditional
independent vertex/pixel shader architecture. All of this translates to a level of graphic
detail never before seen on a video-game console. With one HDMI output, the
PlayStation 3 supports 480i, 480p, 720p, 1080i and 1080p.
2.3 NINTENDO WII
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
28
Release date: 19 November 2006
Figure 8: Nintendo Wii
2.3.1 DESIGN
Wii Nintendo is looking interestingly and he is a smallest and lightest console
from the great three. Designers created the small and noiseless device looking shapely
and modernly. Wii, similarly to different consoles, can work both in the vertical, as well
as horizontal position, and these are thanks to special pads which are caring about the
stability devices. Inside the console such a great power isn't dozing like at competitors,
but with appearance certainly can equal his rivals.
2.3.2 WIIMOTE – GAMEPAD
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
29
Nintendo implemented the really interesting solution - untypical WiiMote
controller which has no analogue knobs whereas with appearance resembles... remote
control of the TV set. The equipment has built in accelerometer and special, separate
sensor responsible for detecting laying the controller in the space. Games exploiting the
pilot Nintendo are giving the player pleasure very much. How does it work? Well, when
we play tennis the equipment is replacing for us rocket, when we are fighting with the
sword, the device will be performing the role of the sword. What's more, the system of
implementing of moves is very user-friendly, what producers will be able to put new
outlines of movements to data of games. The equipment has also a system of shocks and
the loudspeaker built in.
It is possible to connect different devices to the controller. Thanks to the special
slot, the equipment can cooperate e.g. with Nunchuk – it is official addition, later will
appear of them more. One should keep the device in the left hand since this way it was
shaped. When equipped we will find the analogue knob and two buttons. Nunchuk is
broadening WiiMote functions in traditional games where mechanics of steering are
forcing the user into using the analogue knob. This way so playing the war game e.g. he
will be useful in 100 per cent. Combination WiiMote-Nunchuk is coming true very well
in dedicated Wii games. However to older titles Nintendo recommends Classic
Controller, which with appearance to the console a NES. Resembles the most standard
fall we are connecting the equipment to WiiMote, the same as Nunchuk.
2.4 COMPARISON
NAME XBOX 360 PLAYSTATION
3
NINTENDO WII
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
30
Console
Microprocessor
Processor
Type
3.2 GHz PowerPC with
3 dual-threaded
processor cores
3.2 GHz Cell
processor with 7
single-threaded
synergistic
processing units
cores (not directly
comparable to
Xbox 360
processor cores)
729 MHz IBM
Broadway processor
with 5 execution units
GRAPHICS PROCESSOR
GPU Type ATI-based custom
processor
NVIDIA-based
RSX "Reality
Synthesizer"
ATI Hollywood
processor
Clock Speed 500 MHz 550 MHz 243 MHz
Video RAM Up to 512 MB 256MB GDDR3 24 MB of system
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
31
GDDR3 system
RAM (700 MHz)
plus 10 MB
embedded DRAM
(eDRAM) frame
buffer
(700MHz) RAM (486 MHz)
plus 3 MB of
embedded DRAM
(eDRAM)
Video Memory
Bandwidth
21.6 GBps to
system RAM; 256
GBps to eDRAM
22.4 GBps 3.9 GBps
VIDEO
Native Video
Resolutions
16:9 widescreen
720p, 1080i, 1080p
(will downsample to
standard definition)
480i, 480p, 720p,
1080i, 1080p (will
downsample to
standard definition)
853 x 480 (480p) in
widescreen or 4:3
aspect ratio
AUDIO
Analog Sound
Output
Dolby Pro-Logic II Stereo Dolby Pro-Logic II
Digital Sound
Output
5.1-channel Dolby
Digital
5.1-channel Dolby
Digital (HDMI),
n/a
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
32
7.1-channel LPCM
Number Of Voices Software-based,
limited only by CPU
and memory
Hardware based:
320 compressed
channels.
Software based:
limited only by CPU
and memory.
Hardware DSP with
64+ channels
SYSTEM MEMORY
Main System RAM 512 MB GDDR3
RAM (700 MHz),
shared with GPU
256 MB XDR RAM
(3.2GHz)
64 MB GDDR3
RAM
Memory
Bandwidth
22.4 GBps 25.6 GBps 1.9 GBps
STORAGE
Optical Drive 12X dual-layer
DVD
Blu-Ray Proprietary optical
drive
Supported Optical
Formats
Xbox DVD, BD, Wii discs (both 4.7
GB single layer and
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
33
DVD-Video,
DVD-ROM,
DVD-R/RW,
DVD+R/RW,
CD-DA,
CD-ROM,
CD-R,
CD-RW,
WMA CD,
MP3 CD,
JPEG Photo CD
(HD DVD
supported with
optional HD DVD
drive).
BD-ROM,
Blu-ray Disc,
CD, CD-DA,
CD-DA (ROM),
CD-R,
CD-RW,
DualDisc (audio
side),
DualDisc (DVD
side),
DVD+R,
DVD+RW,
DVD-R,
DVD-ROM,
DVD-RW,
PlayStation 3 BD-
ROM,
PlayStation 3 DVD-
ROM,
SACD HD,
SACD Hybrid (CD
layer).
8.5 GB dual layer),
Nintendo
GameCube discs.
Not DVD
compatible.
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
34
Included Storage Arcade: 256 MB
Memory Unit (MU)
Xbox 360: 20 GB
removable hard
drive
Elite: 120 GB
removable hard
drive
40 GB or 80 GB
replaceable hard
drive.
512 MB of internal
flash memory
External Hard
Drive Support
Yes, but limited to
media playback
only.
Yes No
Memory Card
Ports
2 Xbox 360
Memory Unit ports
(64 MB or 512
MB).
PS3 40 GB: No
PS3 80 GB:
Memory Stick, SD,
CompactFlash ports
1 SD card slot, 2
GameCube memory
card ports.
USB 2.0 Ports 3 PS3 40 GB: 2
PS3 80 GB: 4
2
There are many more specifications of these consoles that can be compared
additionally, but these are the ones that most users would be concerned with. Here are
some of the key points that can be inferred from this table, and that help in answering the
question What is better – Xbox 360, PS3 or Wii.
The Wii has the lowest memory space possible. The PS3 has the most with their
320 GB version.
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
35
The graphics and CPU clocking speed are almost similar for all three consoles.
The biggest advantage is with the PS3, as it plays Blu-ray discs. The Wii cannot
play any media content.
2.5 INSIDE VIDEO GAME SYSTEM
First of all, since the development of the game system called Atari 2600, nothing
has really changed in terms of the basic hardware inside the game console. The only
change was that the components even became more advanced. Here are what these game
consoles have in common in terms of hardware:
User control interface
CPU
RAM
Software kernel
Storage medium for games
Video output
Audio output
Power supply
The user control interface is what separates a video game from a TV. This is
where you, the user, will interact with the game. Without it, it will be like a passive form
of entertainment that is very much like your home TV. The user control interface is
where you will plug in your joysticks, or controllers.
Ever since the early days of the Atari 2600, video game systems have relied on
RAM to provide temporary storage of games as they're being played. Without RAM,
even the fastest CPU could not provide the necessary speed for an interactive gaming
experience.
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
36
The software kernel can be compared to your desktop computer's operating
system. This provides the interface between the different hardware and the video game.
The two most common storage technologies used for video games today are CD
and ROM-based cartridges. Current systems also offer some type of solid-state memory
cards for storing saved games and personal information. Systems like the PlayStation 2
have DVD drives. The PlayStation 3 goes even farther -- it has a Blu-ray DVD drive.
The audio and video output is where you will connect your video game system to
your standard TV and your stereo. Obviously, the video output goes to the TV and the
Audio output goes to your stereo system.
As you can see, the video game system works fairly simple. It is simply just a
matter of transmitting and receiving electronic signals to hardware in the video game.
Some people even connect their video game systems to their home entertainment system.
These people connect their game system to their wide screen TV and some even connects
it to their digital surround speakers for a more satisfying and realistic game play.
2.6 ADVANDTAGES AND DISADVANTAGES
2.6.1 ADVANTAGES
The most obvious advantage consoles have is cost.
The second most obvious advantage is simplicity. People can actually take a
console home and be playing a game within minutes. No operating systems to
configure or drivers to update, and better still, no purchasing a game only to find
out that it isn't compatible with your PC for some obscure reason.
The graphic quality and the performance of the game are very high, because
console have the same hardware and the developer knows that what kind of game
can be easily played on the console. Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
37
Multiplayer gaming is also made easy with companies like Microsoft offering
online services for their product. The Xbox, which came equipped with a network
card, raised the bar for consoles in this regard, making it a simple matter to hook
it up to a DSL or Cable Internet connection and get into a multiplayer game on
Xbox Live, complete with voice chat.
Console games tend to have a relatively low learning curve. You might need fast
thumbs, but you certainly won't need to spend hours in a "tutorial" trying to learn
how to operate basic game functions.
No need to set up or install the game before you can play.
2.6.2 DISADVANTAGES
Although sealing everything into one unit does keep it simple, when some of the
components inside the box become dated there's no way to solve the problem
without replacing the entire console.
Consoles perform only one task really well, where PCs can be used for an
extremely wide range of things.
There is a distinct lack of inter-connectivity between the different console brands.
Many games are available for one type of console but not others, and when it
comes to online play, each is typically restricted to its own network. This means
that people with Xboxes can usually only play against other people with Xboxes.
2.7 FUTURE TRENDS
Until the Nintendo Wii came along and seized control of the market, the future of
video game consoles was pretty predictable. Keep making bigger, faster, more powerful
consoles with better graphics, sound. But the Wii changed all that. There will be another
generation of video game systems that will be made. It will be known as the eighth
generation of gaming. This is the generation of interactive gaming, online competition,
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
38
and plenty of action. Most likely, you can expect the systems to be from Nintendo, Sony,
and Microsoft.
The Xbox 720 would be the hypothetical name for it considering that Xbox went
to Xbox 360 to go full circle. It would be a guess that it would go to two full circles thus
giving it the name 720. The power that it could possess could be limitless and even have
the potential to play not just the 360 games but also the Xbox ones as well.
Sony will be looking to make a rebound so to speak when it comes to its next
generation console. It will probably be dubbed the PlayStation 4. This one could possibly
have two places to place games depending upon compatibility issues with one drive to
make it work all the way back to the PlayStation. There is also the case of a button
pushed so that it can be set up to work with PS2 and PS1 games so that it does not affect
the other drives. The controllers can be wireless and it will have graphics that could
slightly improve but looking at how they are now, it may seem a bit difficult to make it
even better.
Nintendo will never put more focus on the graphics than they have in their
history. They have been more about the innovation. Perhaps this could be the time to
make a modified version of the Virtual Boy, only this time use all the colors and make it
work. It would need that Virtual Reality feel with it being in a First Person view.
Cha
pter
: 2. G
AM
E C
ON
SO
LE
S
39
3. OPERATING SYSTEM
3.1 TASK SCHEDULING
Scheduling refers to the way processes are assigned to run on the available CPUs,
since there are typically many more processes running than there are available CPUs.
This assignment is carried out by software known as a scheduler and dispatcher.
There are five scheduling algorithms:
First In First Out (FIFO)
Shortest Job First (SJF)
Priority Based Scheduling
Round Robin Scheduling
Multilevel Queue Scheduling
The game consoles used the Multilevel Feedback Queue.
3.1.1 MULTILEVEL FEEDBACK QUEUE
A multi-level feedback queue scheduling policy gives preference to short and I/O
bound processes, it also rapidly establishes the nature of a process and schedules it
accordingly.
Multi-level feedback queues work on priorities. Processes are placed in separate
queues based on their priority, this in turn is based on their CPU consumption and if a
process uses too much of the CPU, it will be given a lower priority and therefore get less
CPU time than fast and I/O bound processes.
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
40
Any processes that do not complete in their allocated time slice / quantum are
demoted to a queue of less priority, these lower priority queues generally have larger
quantum’s / time slices.
Each of the queues may use a different scheduling algorithm, this is done to make
the overall scheduling method as efficient as possible.
The features that may vary between different multi-level feedback queue
scheduling methods are:
The number of queues.
The scheduling algorithm for each queue.
The method used to determine when to upgrade a process to a higher-priority
queue.
The method used to determine when to demote a process to a lower-priority
queue.
The method used to determine which queue a process will enter when that process
needs service.
Figure 9: Multilevel Feedback Queues
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
41
From the above figure of Multilevel Feedback Queues:
A process entering the ready queue is put in queue O. A process in queue 0 is
given a time quantum of 8 milliseconds.
If it does not finish within this time, it is moved to the tail of queue 1.
If queue 0 is empty, the process at the head of queue 1 is given a quantum of 16
milliseconds.
If it does not complete, it is preempted and is put into queue 2.
Processes in queue 2 are run on an FCFS basis but are run only when queues 0
and 1 are empty.
3.2 DEADLOCKS
A set of processes or threads is deadlocked when each process or thread is waiting
for a resource to be freed which is controlled by another process.
Assume we have the following operating system:
Finite number of resources to be distributed among some number of competing
processes.
Resources may be of several types and there may be several instances of each
When a process requests a resource any instance of that resource will satisfy the
process
o Processes can
o request a resource
o use the resource
o release the resource
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
42
A set of processes is in a deadlock state when every process in the set is waiting
for an event that can be caused only by another process in the set.
o Same resource type - three tape drives, three processes request a tape
drive then they each request another. Dining philosophers request
chopsticks held by another.
o Different resource type - process A has a printer process B has a file, each
requests the other's resource.
Figure 10: Deadlock
In order for deadlock to occur, four conditions must be true.
Mutual exclusion - Each resource is either currently allocated to exactly one
process or it is available. (Two processes cannot simultaneously control the same
resource or be in their critical section).
Hold and Wait - processes currently holding resources can request new resources
No preemption - Once a process holds a resource, it cannot be taken away by
another process or the kernel.
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
43
Circular wait - Each process is waiting to obtain a resource which is held by
another process.
3.2.1 DEADLOCK HANDLING
There are several ways to address the problem of deadlock in an operating system.
Just ignore the problem altogether. Maybe if you ignore it, it will ignore you.
Detection and recovery. Let deadlocks occur, detect them, and take action.
Dynamic avoidance by careful resource allocation.
Prevention, by structurally negating one of the four conditions necessary to cause
a deadlock.
We will discuss only this method of handling deadlock because most of the game
consoles use this handling technique.
3.2.1.1 IGNORE DEADLOCKS
The simplest approach: stick your head in the sand and pretend there is no
problem at all. In general, this is a reasonable strategy. Deadlock is unlikely to occur very
often; a system can run for years without deadlock occurring. If the operating system has
a deadlock prevention or detection system in place, this will have a negative impact on
performance (slow the system down) because whenever a process or thread requests a
resource, the system will have to check whether granting this request could cause a
potential deadlock situation.
Most operating systems potentially suffer from deadlocks that are not even
detected, let alone automatically broken. Most operating systems, including Windows,
just ignore the problem on the assumption that most users would prefer an occasional
deadlock to a rule restricting all users to one process, one open file, and one of
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
44
everything. If deadlocks could be eliminated for free, there would not be much
discussion.
3.3 MEMORY MANAGEMENT
Memory management is a tricky compromise between performance (access time)
and quantity (available space). We always seek the maximum available memory space
but we are rarely prepared to compromise on performance.
Memory management must also perform the following functions:
allow memory sharing (for a multi-threaded system);
allocate blocks of memory space for different tasks;
protect the memory spaces used (e.g. prevent a user from changing a task
performed by another user);
optimize the quantity of available memory, specifically via memory expansion
systems.
The main problem with memory is that there’s never enough. Modern consoles
(like the Xbox 360 and PS3) have about 512MB of memory. This might seem like a lot
compared to the 32MB of the PS2, but really isn’t that great compared to a PC, or the
requirements of modern games. Additionally, consoles don’t generally support virtual
memory, a feature of PCs which let the operating system use the hard disk as additional
RAM when needed. The end result is that console games have many extra constraints and
must take over the burden of managing their own memory more closely than normal PC
applications.
3.3.1 DIFFERENCE BETWEEN PC AND CONSOLES
The key differences between regular PC and consoles are: Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
45
No virtual memory, which means once you’re out of memory, you’re out of
memory. No swap file is going to save you on a console.
Multiple physical memory types. On the PC you have RAM and video RAM, but
you have a video driver that manages it for you, not on consoles.
Memory alignment is also a problem on consoles. The x86 CPU is very forgiving.
However console CPUs are generally stricter. Alignment is also very important
for performance.
3.3.2 VIRTUAL MEMORY
Having no virtual memory or swap file is the reason we need to focus so much
time and energy on memory management. On a console, when you’ve used all your
memory you can’t swap memory to the swap disk. You have no choice but to fit within
the limits of the system.
3.3.3 PHYSICAL MEMORY
Physical memory refers to memory that is actually physically different. Like
different physical locations in the hardware. Also they have different sizes, speeds and
access restrictions. The most common example is main (or system) memory and video
memory. PCs are built like this too: the CPU has one set of memory and the video card
has its own set. On the PC the video memory is generally not directly accessible and is
managed by the video driver. On a console it is usually up to the game to manage its own
memory.
The different arrangement of physical memory is where most consoles differ from
each other (the other main way is the different CPU and GPU configurations). This
means that each console can have very different configurations and restrictions when it
comes to physical memory types, however the restrictions imposed by physical memory
types usually follows a few common patterns.
Here are some issues that physical memory types can impose:
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
46
Different physical addressing. Main memory may have addresses in the range
[0x60000000, 6fffffff] where video memory would have the range [0x10000000,
0x1fffffff].
Different visibility from different devices. Meaning that the main CPU may not
be able to access parts of video memory. Similarly the GPU may not access
memory in the CPU’s cache. This means that when the CPU creates data for the
GPU to use is must make sure the data is flushed from the cache before the GPU
accesses it.
Non-symmetrical access and throughput. Just because a device can read from a
memory location doesn’t mean it can write to that same location. It wouldn’t be
unheard of for a GPU to be able to read from main memory but be unable to write
to main memory. Often devices can both read and write but at different rates. It’s
also common for the CPU to write to the video memory at 1GB/s but only read at
say, 256MB/s.
These differences affect how we manage memory. Physical addressing requires
that we maintain different heaps for different memory types – the CPU allocates from
main memory, GPU data (like textures, meshes) uses video memory. However it also
means we need to provide a way of allocating memory of different physical types.
Different visibility means that memory shared between devices (like CPU and GPU) may
need to be marked as uncached. We’ll have to take that into account when allocating
memory too, especially since uncached memory can have severe performance issues if
handled improperly. Lastly, non-symmetrical access will affect how we manage physical
memory.
3.3.4 ALIGNMENT
Alignment is a limitation of the hardware which only allows access to data if it is
located at certain addresses in memory.
3.3.4.1 HARDWARE ACCESS
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
47
Some hardware, like the GPU, the sound processor and even the DVD drive have
even stricter alignment restrictions. Sometimes they have very large alignment
requirements like 32 bytes or even 128 or 4096 bytes or more. The reasons are
complicated, but have to do with how memory is transferred between devices and
accessed at a hardware level. For example the data for a texture will may have to start at a
physical page boundary, or 4 Kb alignments. This means that when we load and allocate
memory for the texture we have to be aware of this requirement. Like the alignment of
regular data types, often the hardware will transparently read the wrong data if
misaligned. Needless to say, you have to be familiar with the requirements of the
hardware you’re interacting with.
As far as memory management is concerned, hardware requirements mean that
we’ll need to provide the functionality to allocate memory at various alignments.
Cha
pter
: 3. O
PE
RA
TIN
G S
YS
TE
M
48
4. REFERENCE
1.1 What Is Operating System?
http://www.computerhope.com/os.htm
http://www.webopedia.com/FIG/OPER-SYS.gif
1.2 History Of Operating System
http://www.personal.kent.edu/~rmuhamma/OpSystems/Myos/osHistory.htm
http://www.osdata.com/kind/history.htm
http://www.cs.uiowa.edu/~jones/opsys/notes/03.shtml
History of Operating Systems By Ayman Moumina
http://www.computinghistorymuseum.org/teaching/papers/research/history_of_op
erating_system_moumina.pdf
http://en.wikipedia.org/wiki/Timeline_of_operating_systems
1.4 History Of Video Game System
http://www.buzzle.com/articles/history-of-video-game-consoles.html
http://en.wikipedia.org/wiki/Video_game_console
http://www.informit.com/articles/article.aspx?p=378141
2. Game Console
http://electronics.howstuffworks.com/video-game1.htm
http://en.wikipedia.org/wiki/
History_of_video_game_consoles_(seventh_generation)
Cha
pter
: 4. R
EF
ER
EN
CE
49
http://electronics.howstuffworks.com/xbox-three-sixty.htm
http://electronics.howstuffworks.com/playstation-three.htm
http://electronics.howstuffworks.com/wii.htm
2.4 Comparison
http://www.winsupersite.com/article/product-review/xbox-360-vs-playstation-3-
vs-wii-a-technical-comparison.aspx
http://www.buzzle.com/articles/xbox360-vs-ps3-vs-wii.html
2.5 Inside Video Game System
http://www.articlealley.com/article_1271408_32.html
http://electronics.howstuffworks.com/video-game3.htm
2.6 Advantages And Disadvantages
http://internetgames.about.com/od/hardware/a/pcvsconsole.htm
http://ezinearticles.com/?Computer-Gaming-Versus-Console-
Gaming&id=581633
2.7 Future Trends
http://ezinearticles.com/?The-Future-of-Video-Game-Consoles&id=1644356
http://www.helium.com/items/993554-the-future-generation-of-games-consoles
3.1 Task Scheduling
http://en.wikipedia.org/wiki/Scheduling_(computing)
http://www.dlhoffman.com/classnotes/csci420-f05/slides/ch5/siframes.html
http://wiki.answers.com/Q/What_is_Multilevel_feedback_queue
Cha
pter
: 4. R
EF
ER
EN
CE
50
http://siber.cankaya.edu.tr/OperatingSystems/week6/node7.html
3.2 Deadlocks
http://lovingod.host.sk/tanenbaum/Recovery-from-Deadlock.html
http://www.cs.rpi.edu/academics/courses/fall04/os/c10/index.html
http://www.cs.csi.cuny.edu/~imberman/OS/Deadlock.htm
3.3 Memory Management
http://en.kioskea.net/contents/systemes/memoire.php3
http://systematicgaming.wordpress.com/2008/08/05/memory-management-
introduction/
http://systematicgaming.wordpress.com/2008/08/15/memory-management-
consoles/
Cha
pter
: 4. R
EF
ER
EN
CE
51