Вы находитесь на странице: 1из 35

CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

INDIVIDUAL ASSIGNMENT

TECHNOLOGY PARK MALASIA

CT049-3-1-OS

OPERATING SYSTEMS AND COMPUTER ACHITECHTURE

UC1F1609IT

HANDED BY: LUBNAA ABDUR RAHMAN – TP041666

HANDOUT DATE: 12 OCTOBER 2017

SUBMISSION DATE: 12 JANUARY 2017

Page 0 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Marking Grid

Assessment Criteria Marks Allocated Score


Research and Investigation 20%
Referencing 10%
Analysis 30%
Reflection 30%
Documentation 10%

Page 1 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Abstract

This report is made up of two parts;

1. Operating System

This report deals with memory management in operating systems, in this case Windows 7 is
the chosen OS. The first part introduces operating systems along with memory management and
Virtual Memory. It further explains the several tasks of the Virtual Memory Manager of Windows
7 and gives and insight of Microsoft SuperFetch which is a technology used in memory
management. Problems faced by memory management are thoroughly discussed along with
solutions to overcome them. Limitations together with their extensions to this research were listed.
The last part consists of the conclusion which assesses the importance of the memory management
and consists of Appendix A comprising of data charts, Figures, Frequently Asked Questions
(FAQs) and the Gantt Chart which is the plan of the activities done throughout this research.

2. Computer Architecture

This part of the report tackles microprocessors which form part of computers’ architecture.
The beginning introduces microprocessors and gives a brief overview of the generation of
computers. This research shows Moore’s prediction over the years in co-relation with the major
trends which affect the performance of microprocessors. This report further differentiates between
the microprocessor design for different devices; desktops, embedded computers, laptops, and
servers. Finally, the last part contains the conclusion and the of Appendix B comprising of data
charts, Figures, Frequently Asked Questions (FAQs) and the Gantt Chart which is the plan of the
activities done throughout this research.

Page 2 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Contents
Marking Grid .................................................................................................................................. 1
Abstract ........................................................................................................................................... 2
SECTION 1: OPERATING SYSTEMS ......................................................................................... 6
Introduction ..................................................................................................................................... 6
Memory Management ..................................................................................................................... 7
Virtual Memory .............................................................................................................................. 7
Virtual Memory Manager in Windows 7 ........................................................................................ 8
Paging ............................................................................................................................................. 8
Microsoft SuperFetch...................................................................................................................... 9
Demand Paging ............................................................................................................................... 9
Segmentation................................................................................................................................. 10
Demand Segmentation .................................................................................................................. 10
Page Faults and Solutions to overcome them ............................................................................... 10
1. First in First Out (FIFO) Page Replacement ...................................................................... 11
2. Not frequently used (NFU) page replacement ................................................................... 11
3. Aging page replacement algorithm .................................................................................... 11
4. Least Recently Used (LRU) Page Replacement ................................................................ 11
5. Optimal Page Replacement ................................................................................................ 11
Windows 7 Page Replacement Technique .................................................................................... 12
Limitation and Extension .............................................................................................................. 13
Limitations: ............................................................................................................................... 13
Extensions: ................................................................................................................................ 13
Conclusion .................................................................................................................................... 14
Appendix A ................................................................................................................................... 15
Figures, Data Charts, etc ........................................................................................................... 15
Frequently Asked Questions (FAQs) ........................................................................................ 17
Gantt Chart ................................................................................................................................ 18
SECTION 2: COMPUTER SYSTEMS ARCHITECHTURE ..................................................... 19
Definition of a Microprocessor ..................................................................................................... 19
Introduction ................................................................................................................................... 19
Generation of Computers .............................................................................................................. 20

Page 3 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Major Trends Affecting Microprocessor Performance and Design .............................................. 21


1. Clock speed ........................................................................................................................ 21
2. Increasing number of Cores ............................................................................................... 21
3. Instruction Set Architecture (ISA) ..................................................................................... 22
4. Instruction Per Clock (IPC) ............................................................................................... 22
5. On-Board Cache................................................................................................................. 22
6. Number of Transistors ....................................................................................................... 22
Moore’s Law.......................................................................................................................... 23
Differences between microprocessors design goals for Embedded systems, desktops, servers, and
laptops ........................................................................................................................................... 23
Microprocessors for Embedded Systems .................................................................................. 23
Microprocessors for Desktops................................................................................................... 24
Microprocessors for Servers...................................................................................................... 25
Microprocessors for Laptops ..................................................................................................... 25
Limitation and Extension .......................................................................................................... 25
 Limitation ........................................................................................................................... 25
 Extension............................................................................................................................ 25
Conclusion .................................................................................................................................... 26
Appendix B ................................................................................................................................... 27
Figures, Data Charts, etc. .......................................................................................................... 27
Frequently Asked Questions ..................................................................................................... 30
Gantt Chart ................................................................................................................................ 31
Limitation and Extensions ............................................................................................................ 32
 Limitations ......................................................................................................................... 32
 Extensions .......................................................................................................................... 32
References ..................................................................................................................................... 33

Figure 1:Overview of a virtual memory (Dhamdhere, 2009) ....................................................... 15


Figure 2:Physical memory broken into page frames (Arpaci-Dusseau, 2014) ............................. 15
Figure 3: Aging algorithm; 6 pages for five clock ticks (LiraLab, n.d.)....................................... 16
Figure 4 21st Century Moore's Law Graph (Laws, 2015) ............................................................ 27
Figure 5 Graph of Moore's law with intel's microprocessors evolution (Processors, n.d.) .......... 28

Page 4 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Figure 6: Components of an Embedded system (Kamal, 2008) ................................................... 28


Figure 7: RabbitCore RCM3100 series microprocessor used in Embedded systems ................... 29
Figure 8: Power8 Processor architecture featuring the most powerful and scalable performance for
data center servers by IBM (Mujtaba, 2013) ................................................................................ 29

Page 5 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

SECTION 1: OPERATING SYSTEMS

Question 2: Research, investigate and document areas relating to memory management of


any Operating System of your choice. Areas to be discussed in your research documentation
to include among other areas, how memory is managed including mechanisms and strategies
used, problems faced by these techniques and solutions to overcome them.

Chosen operating system: Windows 7 (32-Bit)

Introduction

An operating system is a program that manages the computer hardware, providing a basis
for application programs and acts as an intermediary between the computer user and the computer
hardware (Silberschatz, et al., 2005).

The operating system has various tasks such as providing an interface for the user to
communicate with the computer, controlling and handling of the peripherals and managing
memory, which will be discussed in this research documentation, amongst others.

In a computer, there are two main types of memory;

1. Physical memory which includes:


i. Read Only Memory (ROM) which is non-volatile
ii. Random Access Memory (RAM) which is volatile
2. Virtual memory.

Page 6 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Memory Management
Memory management can be defined as the process of subdividing memory for the
accommodation of multiple processes (Stallings, 2012). The process of memory management is
necessary in a multiprogramming system. The purpose of memory management is to allow the
allocation of portions of memory to programs when needed and free the portion of memory when
the program which has been allocated to it is no more required. Memory needs to be properly
allocated to guarantee a rational supply of ready processes to consume accessible processor time.

Virtual Memory
In windows, virtual memory is regarded a storage allocation scheme in which secondary
memory can be addressed as though it were part of main memory (Stallings, 2012). Virtual
memory is also defined as a technique that allows the execution of processes that are not
completely in memory (Silberschatz, et al., 2005).

Virtual memory has many advantages and is widely used to since with this memory
management method, the programs can be practically larger than the physical memory itself which
helps resolving the problems related to memory limitations. In addition, Virtual Memory allows
multitasking where several applications can be run all at once. An overview of the virtual memory
can be seen in Appendix A, Figure 1.

Page 7 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Virtual Memory Manager in Windows 7


The Virtual Memory Manager is involved in several functions such as:

1. Managing logical address whereby logical address space in memory is organized through
Page-in/Page-Out.
2. Managing memory which is the tracking of the free/occupied spaces in memory
3. Collecting page reference information
4. Performing Page Replacement when a fault arises
5. Allocating physical memory

In windows 7, 32-Bit, the virtual memory manager makes use of a paging scheme of
management with pages of 4 kilobytes (kb) each whereas for the 64-Bit, pages are of 8kb each.
The address space in the windows 7, 32-bit, is of 4GB whereby 3GB is reserved for address space
and 1GB for the kernel mode.

Paging
Paging is the management scheme used in windows 7, whereby space is broken into fixed
sized pieces for data to be stored and retrieved from the secondary storage. It allows the physical
address space of a process to be noncontiguous. For paging to be implemented, a process address
space is split into fixed sized units which are called pages. Physical memory is considered as an
array which’s slots are called page frames (Arpaci-Dusseau, 2014). Figure 2 (Appendix A) shows
an example of the physical memory and its various page frames.

The virtual memory manager works by loading one component of the address space of a
process in memory to begin with. The component that contains the start address of the process,
which is the actual address of the instruction to be executed and loads the other parts of the process
when needed through a technique known as demand paging. (Dhamdhere, 2009)

Page 8 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Microsoft SuperFetch
Microsoft SuperFetch is a technology which is used in windows 7 to reduce time required
to launch applications and works along with the memory manager service to manage the RAM. It
has two goals which are to decrease the boot time and to make applications launch faster.
SuperFetch attempts to make data which is often accessed to be read from the RAM instead of the
hard drive.

Demand Paging
The technique of demand paging is to achieve an efficient usage of the memory and to
achieve a balance between the main memory and disk (secondary memory). The concept of
demand paging tags along with memory virtualization. The demand paging system is quite same
as a paging system whereby swapping takes place. Instead of loading the whole program, only the
process is loaded into memory thus maximizing space.

The paging table is responsible in moving the sections of virtual memory into and out of
physical memory. Whenever more memory is needed that what is already available in the RAM
(physical memory), the processes are stored as low priority on the disk. (Stallings, 2012)

The virtual address is split into a virtual page number (high-order bits) and an offset (low-
order bits). The virtual page number is used as an index into the page table to find the entry for a
virtual page. From the page table entry, the page frame number is then found. The page frame
number is attached to the high-order end of the offset, replacing the virtual page number, to form
a physical address that can be sent to the memory. The purpose of the page table is to map virtual
pages onto page frames. The page table is a function, with the virtual page number as argument
and the physical frame number as result. Using the result of this function, the virtual page field in
a virtual address can be replaced by a page frame field, thus forming a physical memory address
(Tanenbaum, 2009).

Page 9 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Segmentation
Segmentation is a user-visible division of a process into multiple variable-size segments,
whose sizes change dynamically during execution. It enables fine-grained sharing and protection.
In a computer system using segmentation, a reference to a memory location includes a value that
identifies a segment and an offset (memory location) within that segment. In segmentation, the
virtual address space is divided into several variable-size segments.

Demand Segmentation
Demand segmentation is used whenever there is insufficient hardware available for the
implementation of demand paging. The segment table has a valid bit to specify if the segment is
already in physical memory or not. If a segment is not in physical memory then segment fault
results, which traps to the operating system and brings the needed segment into physical memory,
much like a page fault. Demand segmentation allows for pages that are often referenced with each
other to be brought into memory together, this decreases the number of page faults.

Page Faults and Solutions to overcome them


A page fault can be defined as an interrupt which is caused when a memory page which is
mapped into the virtual memory is not actually loaded onto main memory. When a page fault
occurs, the OS must remove a page from memory to make space available for that page which is
required for the process. It would have been much easier to just replace any page by another one
just like that, but a performance issue will arise if a page which is commonly used is removed such
that it will result in extra overhead (Tanenbaum, 2009).

When memory is overallocated, which is when there is no free frame in memory for a new
page, some processes can either be swapped out or some pages can be overwritten. Usually this is
called page replacement.

Page 10 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

There are several page replacement techniques whereby the goal is to minimize the number
of page faults. These include:

1. First in First Out (FIFO) Page Replacement


The First In First Out algorithm is a low-overhead algorithm and is the simplest one. The
algorithm takes into consideration the time at which the pages were brought into memory.
The problem to this replacement technique is the Belady’s Anomaly.

2. Not frequently used (NFU) page replacement


In this algorithm, a software counter is used. This counter is initially set to 0 for each page.
For every clock interrupt pages are scanned in the memory by the operating system and for
each page the referenced bit is added to the counter. When a page fault occurs, the page
with the lowest counter is replaced (Anon., 2013)

3. Aging page replacement algorithm


It is a modification of Not frequently used page replacement algorithm. In this algorithm,
before the referenced bit is added each counter is shifted 1 bit right. Then, referenced bit is
added to the left most bit. When a page fault occurs, the page with the lowest counter is
replaced.

4. Least Recently Used (LRU) Page Replacement


This technique, which is a variant of the clock replacement technique, is about removing
the page which has remained unused for the longest period when a page fault occurs (
Tanembum & BOS, 2014)

5. Optimal Page Replacement


The optimal page replacement algorithm says that the page with the highest label should
be removed ( Tanembum & BOS, 2014). It certainly gives the minimum number of page
faults but is hard to implement.

Page 11 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Windows 7 Page Replacement Technique


Windows 7 makes use of the aging page replacement algorithm, which is a descendant of
the Not Frequently Used replacement technique, whereby each page is assigned an age value
consisting of three bits that determines the age of a page thus helping the operating system to
decide which memory page can be discarded from the physical memory. The reference counter
used in the aging algorithm and ensures that pages referenced more recently, though less frequently
referenced, will have higher priority over pages more frequently referenced in the past: thus, when
a page needs to be swapped out, the page with the lowest counter will be chosen.

Figure 3 in Appendix A illustrates how aging algorithm works. Suppose that after the first
clock tick the R bits for pages 0 to 5 have the values 1, 0, 1, 0, 1, and 1, respectively (page 0 is 1,
page 1 is 0, page 2 is 1, etc.). In other words, between tick 0 and tick 1, pages 0, 2, 4, and 5 were
referenced, setting their R bits to 1, while the other ones remain 0. After the six corresponding
counters, have been shifted and the R bit inserted at the left, they have the values shown in column
(a) of figure 3. The four remaining columns show the six counters after the next four clock ticks.
When a page fault occurs, the page whose counter is the lowest is removed. A page that has not
been referenced for, say, four clock ticks will have four leading zeros in its counter and thus will
have a lower value than a counter that has not been referenced for three clock ticks.

Page 12 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Limitation and Extension

Limitations:

1. In Windows 7, Kernel address space shares the same space and is no longer divided
into some sections. But it still has some limitations, the space is not dynamic enough
to handle a very oversized resource.
2. Microsoft SuperFetch spends the leftover free memory on a low-priority applications
and processes. The effect will occur when the user tries to run a high-resolution video
or high performance game, the effects will slow down the computer because there are
no more or very few free memories left.

Extensions:

1. Kernel virtual address space should be dynamic enough to overcome any possibilities. The
user address space is a space that will not be unavailable each time, so it does not mean it
cannot be available to handle some oversized-resources problem. The virtual memory
space should be dynamic enough to let user address space to share a little space for the
Kernel address space.
2. Microsoft SuperFetch need to have some reserved memory for some applications that
require a lot of memory in their processes. SuperFetch should allocate the free memory for
the high-performance processes also, without neglecting the existence of low priority
processes in the free memory.

Page 13 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Conclusion
Memory management is important in Operating Systems so that data is well organized such
that it provides easier access of data to the user improving performance. A correct memory
management mechanism is one which should be easy to implement, causing the least possible
number of page faults and must be able to execute instructions quite quickly to avoid overhead
along with avoiding thrashing.

Page 14 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Appendix A

Figures, Data Charts, etc

Figure 1:Overview of a virtual memory (Dhamdhere, 2009)

Figure 2:Physical memory broken into page frames (Arpaci-Dusseau, 2014)

Page 15 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Figure 3: Aging algorithm; 6 pages for five clock ticks (LiraLab, n.d.)

Page 16 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Frequently Asked Questions (FAQs)

 What is virtual memory and how does it work?

The amount of RAM available is never enough to run all the programs of the user all at once. With
virtual memory, the computer searches the RAM for areas that have not been used recently and
copies them onto the hard disk. Virtual memory is used to help physical memory to execute more
tasks because some pieces of processes are loaded to physical memory and it can handle a process
that may be larger than physical memory.

 What is thrashing?

Thrashing occurs when a computer's virtual memory subsystem is in a constant state of paging,
rapidly exchanging data in memory for data on disk, to the exclusion of most application-level
processing which then causes the computer’s performance to degrade.

 Should Microsoft SuperFetch be enabled or not?

It is the preference of the user but SuperFetch has various advantages. Microsoft SuperFetch can
give memory manager a hand to divide an often-used program into priorities It keeps the computer
consistently responsive to programs by making better use of the computer's RAM.

Page 17 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Gantt Chart

Page 18 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

SECTION 2: COMPUTER SYSTEMS ARCHITECHTURE

Question 1: Research, investigate and document microprocessors of desktop machines,


servers, and laptops. Areas to be discussed in your research documentation to include among
other areas are major trends affecting microprocessor performance and design in recent
years and differences between microprocessors design goals for laptops, servers, desktops,
and embedded systems.

Definition of a Microprocessor

Microprocessor is a digital device on a chip which can fetch instructions from a memory,
decode and execute them i.e. performs certain arithmetic and logical operations, accept data from
input device, and send results to output devices (Kaushik, 2015).

Introduction

The microprocessor is a multipurpose, clock driven, register based, programmable


electronic device which accepts either digital or binary data as input, processes the data per
instructions stored in its memory, and gives an output. The microprocessor consists of several
components that work together in making sure all instructions done on the computer are carried
out in the right manner and overall constitute any microprocessor unit. These include: the
register, the arithmetic and logic unit (ALU), and logic gates ( Oluwamuyiwa & Adekunle,
2013).

Microprocessors contain both combinational logic and sequential digital logic and
operate on numbers and symbols represented in the binary numeral system. Structures of
microprocessors vary accordingly to the purposes it was designed for (Brain, 2000). The first
microprocessor, known as the Intel 4004 was created by Intel in 1971 containing 2300 transistors
and its instruction set contained only 45 instructions.

Page 19 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Generation of Computers

Generation (Years Device Characteristics & Features


used)
First (1942-1959) Vacuum Tubes 1. Supported only machine language
2. Generated a lot of heat and
consumed large amount of
electricity
3. Took much space
Second (1959-1965) Transistors 1. Quite costly
2. Performed Batch operation
3. Higher performance compared to
the previous generation
Third (1965-1975) Integrated Circuits 1. Time Sharing operating systems
2. Was easier to update
3. Was cheaper, smaller, and more
reliable compared to previous ones
Fourth (1975-Present) Microprocessors with 1. Multiprocessing and Graphic User
VLSI Technology Interface (GUI) Operating systems
2. Object Oriented programs
3. Small, affordable, and easy to make
use of
Microprocessors with 1. Powerful, cheap, and reliable
ULSI Technology 2. Allowance for rapid software
development
Fifth (Present- Future) Artificial Intelligence 1. Intelligence exhibited by machines
2. Imitate cognitive functions
Table 1 Generation of computers
As it can be seen in Table 1, Microprocessors are the fourth generation of computers and
can be divided into two parts; 1. With VLSI (Very Large Scale Integration) and 2. With ULSI
(Ultra Large Scale Integration). ULSI is a successor to VLSI.

Page 20 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Major Trends Affecting Microprocessor Performance and Design


Microprocessors impact massively on the computer’s performance therefore the performance
of the microprocessor itself is a matter of concern. With time, more powerful processors which are
faster in speed, smaller in size and with lower energy consumption are being developed. There are
some major trends affecting the microprocessors’ performance which are:

1. Clock speed
The Microprocessor's job is to process instructions and execute them. The rate at which the
processor performs its task can be considered as the clock speed. The clock speed refers to the
frequency at which one core of a multi-core processor is running and is used as an indicator of the
processor's speed. Measured in mega Hertz (MHz) or giga Hertz (GHz), it is a measure of the
number of instructions per unit time which can be carried out by the processor. The higher the
clock speed, the more instructions can be carried out per unit time and therefore a higher
performance can be achieved.

2. Increasing number of Cores


Computer users would want their computers to be able to handle massive computing which
implies using multi core processors. A multi-core processor is an integrated circuit (IC) to which
two or more processors have been attached for enhanced performance, reduced power
consumption, and more efficient simultaneous processing of multiple tasks (Rouse, 2013).
Multicore processors improve the performance and parallel processing which allows several tasks
to be performed simultaneously.

Multicore processors bring along a lot of advantages mainly:


i. Increased performance for the same power consumption
ii. More effective compared to single core in terms of running applications
iii. Multi-Threaded software applications
iv. Cost effective

Page 21 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

3. Instruction Set Architecture (ISA)


It provides the level of abstraction between the software and the hardware; the ISA is defined
as that part of the processor’s architecture related to programming which includes native data
types, instructions, registers and so on. The instruction set tells how the processor should execute
the tasks. The better instruction set and processor architecture the better performance of processor
will be (Shanley, 2009).

4. Instruction Per Clock (IPC)


One aspect of the processor’s performance in computer architecture is the Instruction Per Clock
which can be defines as the average number of instructions executed for each clock cycle (Henessy
& Patterson, 2007).

5. On-Board Cache
Cache memory is a temporary location to store information. Nowadays processors come with
an onboard cache which is internal RAM. Instead of continuously requesting data from the RAM,
the data on the on-board cache can be directly used by the CPU which impacts on the performance
as data can be reached faster.

6. Number of Transistors
Microprocessors consist of several transistors. The number of transistors available on the
microprocessor affects the performance of the CPU. By increasing the number of transistors, it
allows a technology known as pipelining. The execution of instruction overlaps in the pipelined
architecture.

Most modern processors have multiple instruction decoders with its very own pipeline that
lets multiple instruction streams, where one instruction is completed at each clock cycle with a lot
of transistors used in the microprocessors (Brain, 2000). The increase in the number of transistors
are directly linked to Moore’s Law.

Page 22 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Moore’s Law
Over the years, the design of microprocessors has not stopped changing since there’s a
demand for increasingly performant computers. Therefore, better microprocessors must be
developed to support higher performance. The Founder of Intel, Gordon E. Moore, came up with
a prediction, known as Moore’s Law, which is the observation that the number of transistors in a
dense integrated circuit doubles approximately every two years. Figure 4 & 5 in Appendix B, are
graphs of number of transistors against years, confirm Moore’s law.

Intel over the years, through investments, has made Moore’s law a reality while combining
meeting highest possible standards and meeting user requirements. In Figure 5, the evolution of
microprocessors can be seen.

Differences between microprocessors design goals for Embedded


systems, desktops, servers, and laptops
Microprocessors features and characteristics are unique and vary per their platforms on
which they are built on such as Embedded systems, Desktops, Servers and laptops. Since these
systems differ from each other, the same applies for their microprocessors. The differences
between the microprocessors come in terms of cost, functionality, sizes and performance. The
microprocessors used in any system must be energy efficient to minimize battery usage, especially
on portable devices, while not meddling with performance ( Oluwamuyiwa & Adekunle, 2013).

Microprocessors for Embedded Systems


An Embedded system is a system which has embedded software and computer hardware,
which makes it a system dedicated for an application or specific parts of an application or product
or a part of a larger system (Kamal, 2008). An embedded system can also be any device which has
a computer but is not intended to be a general-purpose computer, which means the microprocessor
is only part of a larger system (Wolf, 2008). Embedded systems contain either microprocessors or
microcontrollers.

Page 23 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Some features of an embedded system would be:

1. It embeds hardware in the same way as a computer which is illustrated in figure 6 in


Appendix B
2. It embeds main application software
3. It embeds a real-time operating system which supervises the application software
running on hardware and organizes the resources.

Embedded systems have typical functions such as storage, processing, and communication.
Microprocessors are used in such systems as they are an efficient way to implement digital
systems. The microprocessors are designed using the RISC architecture which minimizes the
number of instruction and reduce the complexity of the mobile processor. Embedded systems also
make use of microcontrollers rather than using separate microprocessors.

The power consumption of an embedded microprocessor depends on the relative size of


the microprocessor; embedded system uses a very small amount power therefore this reduces the
power consumption of the system. The microprocessor design goal of an embedded system would
be the memory management mainly. Figure 7 in Appendix B is an illustration of a microprocessor
of series RabbitCore RCM 3100 which is used in an embedded system.

Microprocessors for Desktops


Desktops, also known as Personal computers (PCs), are those computers designed for
regular usage at a single work station mainly due to its size. The main components of a PC are the
Central Processing Unit (CPU), the monitor, the keyboard and the mouse and can also include
various peripherals. The design goal of microprocessors for desktops vary accordingly to the
purpose for which the computer will be used. For High end desktops, the microprocessor design
focuses on performance where multithreading is used to get the execution fast and efficiently,
while for mainstream desktops, the goal is to achieve a balance between the cost and the
performance ( Oluwamuyiwa & Adekunle, 2013). Microprocessor design goals for desktop also
ensures that job scheduling is supported.

Page 24 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Microprocessors for Servers


A server is a computer which forms part of a network and provides specific services to
other computers in the network and acts as the storage location for files and applications shared on
the network (Baksrdjieva, n.d.). In most of the cases, servers need to be on all the time to prevent
and disruption in the networking system. Microprocessor design goals for a server would be to
ensure that reliability and high availability (available all the time) of the server by making use of
lager cache memory than used on desktops. Microprocessor design for servers also caters for the
energy consumption and the stability of the server along with server uptime. Figure 8 in Appendix
B shows and example of a server’s microprocessor by IBM.

Microprocessors for Laptops


A laptop, also known as notebook computers, is compact and portable version of the
desktop computer. Sometimes users of laptops would find it difficult to move along with their
battery adapter everywhere, therefore the microprocessor design goal for laptops emphasizes
mostly on power consumption and avoids production of too much heat which might cause damage
to parts of the laptop. Those microprocessors are designed in such a way, by lowering both the bus
speed and the clock speed, to allow cooling of the laptops.

Limitation and Extension

 Limitation
1. The major disadvantage of the Microprocessor is that it gets over-heated.
2. It has limitations on the size of data.
3. Based on the research undertaken, there is no specification on the size of microprocessor

 Extension

1. Deeper research on the microprocessors can be done in order to get more information and
know the possible solutions to the current problems faced with microprocessors.

Page 25 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Conclusion

The microprocessor plays an important role as it acts as the brain and operates the processes in
computers. So, the performance of the microprocessor itself becomes the main priority for the user.
There are some major trends affecting the microprocessor performance, which are clock speed, number
of cores, instruction set architecture, instruction per clock, on-board cache and number of transistors.
The main function of the microprocessor in different devices is the same, that of carrying out the
processors. But different devices’ microprocessors will vary in term of design depending on the use of
the device.

Page 26 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Appendix B
Figures, Data Charts, etc.

Figure 4 21st Century Moore's Law Graph (Laws, 2015)

Page 27 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Figure 5 Graph of Moore's law with intel's microprocessors evolution (Processors, n.d.)

Figure 6: Components of an Embedded system (Kamal, 2008)

Page 28 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Figure 7: RabbitCore RCM3100 series microprocessor used in Embedded systems

Figure 8: Power8 Processor architecture featuring the most powerful and scalable performance
for data center servers by IBM (Mujtaba, 2013)

Page 29 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Frequently Asked Questions

 What is microprocessor?
A microprocessor is an Integrated Circuit (IC) which has only the Central Processing Unit (CPU)
inside it.

 What are the major factors that affecting microprocessor's performance?

1. Number of Cores
2. Clock Speed

3. Instruction Set Architecture

4. Instruction per Clock

5. On-Board Cache

6. Number of transistors

 What is the difference between a microprocessor and a microcontroller?

A microprocessor is an Integrated Circuit (IC) which has only the Central Processing Unit (CPU)
inside it. They lack Random Access Memory (RAM), Read Only Memory (ROM), and other
peripherals on the chip. On the other hand, a microcontroller possesses a CPU along with RAM,
ROM, and other peripherals on the same chip and is also termed as a mini computer.

Page 30 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Gantt Chart

Page 31 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Limitation and Extensions

 Limitations

1. Word Limit
The word limit which is only of 3500 words, acts as a barrier to delve more into the subject.
Therefore, the research had to be summarized.
2. Limited Information
Information on the memory management in Windows 7 is limited. It is difficult to find
information which can be supported.

 Extensions

1. In depth study
A more in depth research can be done by researchers on the topics so that more substantiated
information can be given. Increasing the word limit will help to give more details on the
subject.

Page 32 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

References

Oluwamuyiwa , N. A. & Adekunle, Y. A., 2013. DESIGN PRINCIPLES FOR TODAY’S


MICROPROCESSORS. European Scientific Journal, 9(15), pp. 293-306.
Tanembum , A. S. & BOS, H., 2014. Modern Operating Systems. 4th ed. s.l.:Pearson.
Anon., 2008. TechTerms. [Online]
Available at: http://techterms.com/definition/clockspeed
[Accessed 22 December 2016].
Anon., 2013. MoreProcess. [Online]
Available at: http://www.moreprocess.com/operating-systems/least-recently-used-lru-not-
frequently-used-nfu-aging-page-replacement-algorithm
[Accessed 31 December 2016].
Arpaci-Dusseau, R. H. A.-D. &. A. C., 2014. Operating systems; three easy pieces. s.l.:Arpaci-
Dusseau.
Baksrdjieva, P. T., n.d. Introduction to computer networking. s.l.:s.n.
Belarus, 2009. Belarus. [Online]
Available at: http://www.belarus.net
[Accessed 23 December 2016].
Brain, M., 2000. HowStuffsWork. [Online]
[Accessed 22 December 2016].
Dhamdhere, D. M., 2009. Operating Systems- A systems based approached. s.l.:Raghothaman
Srinivasan.
Henessy, J. L. & Patterson, D. A., 2007. Computer Architecture A quantitative approach. 4th ed.
s.l.:s.n.
Kamal, R., 2008. Embedded Systems; Architechture, programming and design. 2nd ed. New
Delhi: Mc-Graw Hill.
Kaushik, D., 2015. AN INTRODUCTION TO MICROPROCESSOR 8085. New Delhi: Dhanpat
Rai Publishing.
Laws, D., 2015. Computer History Museum. [Online]
Available at: http://www.computerhistory.org/atchm/moores-law50-the-most-important-graph-
in-human-history/
[Accessed 22 December 26].
LiraLab, n.d. Memory Management. s.l.:s.n.

Page 33 of 34
CT049-3-1-OS UC1F1609IT Lubnaa Abdur Rahman(TP04166)

Mujtaba, H., 2013. wccftech. [Online]


Available at: http://wccftech.com/ibm-power8-processor-architecture-detailed/
[Accessed 3 January 2017].
Processors, I., n.d. s.l.:Intel.
Rouse, M., 2013. TechTarget. [Online]
Available at: http://searchdatacenter.techtarget.com/definition/multi-core-processor
[Accessed 22 December 2016].
Saxena, A., 2014. A Study of Page Replacement Algorithms. International Journal of
Engineering Research and General Science, II(4), pp. 385-388.
Shanley, T., 2009. x86 Instruction Set Architechture. 1st ed. Colorado Springs: MindShare Press.
Silberschatz, A., Galvin, P. B. & Gagne, G., 2005. Operating System Concepts. 7th ed. s.l.:JOHN
WILEY & SONS. INC.
Stallings, W., 2012. OPERATING SYSTEMS. 7th ed. s.l.:Pearson Education, Inc..
Tanenbaum, A. S., 2009. Modern Operating System. 3rd ed. New York: Pearson.
Wolf, W., 2008. Computers as components. 2nd ed. s.l.:Morgan Kaufmann.

Page 34 of 34