You are on page 1of 29

1/1/2014

Multitasking
in Computing
Comparison between Operating systems

Gulzeb Zahid
WWW.GULZEB7.WEBS.COM

TABLE OF CONTENTS
1

Introduction.......................................................................................................................... 3
1.1

Multi programming ........................................................................................................ 3

1.2

Time sharing.................................................................................................................. 4

1.3

Real time ....................................................................................................................... 4

Context Switch ..................................................................................................................... 5

Basic types of multi processing operating systems ................................................................... 6

3.1

Preemptive operating system .......................................................................................... 6

3.2

Cooperative Operating system ........................................................................................ 6

Multi-tasking in Windows ..................................................................................................... 7


4.1

Process .......................................................................................................................... 7

4.2

Thread........................................................................................................................... 7

4.3

User Mode scheduling .................................................................................................... 7

4.4

Fiber ............................................................................................................................. 8

4.5

Critical Section .............................................................................................................. 8

Multi-tasking in Linux........................................................................................................... 9
5.1

Linux as Multi Processing OS ......................................................................................... 9

5.2

Task State ...................................................................................................................... 9

5.3

Time Slice ................................................................................................................... 10

5.4

Scheduler..................................................................................................................... 10

5.5

Task Queue ................................................................................................................. 10

5.5.1

Declaration ........................................................................................................... 11

5.5.2

Mark .................................................................................................................... 11

5.5.3

Execution ............................................................................................................. 11

5.6

Task Switching ............................................................................................................ 11

5.7

Fork ............................................................................................................................ 12

Introduction........................................................................................................................ 14

Software Requirement ......................................................................................................... 15


7.1

Typing ......................................................................................................................... 15

7.1.1

In Windows Seven Ultimate .................................................................................. 15

2
7.1.2
7.2

In Ubuntu Linux 12.4 ........................................................................................... 15

Calculating .................................................................................................................. 15

7.2.1

In Windows Seven Ultimate .................................................................................. 15

7.2.2

In Ubuntu Linux 12.4 ........................................................................................... 16

7.3

Presentation ................................................................................................................. 16

7.3.1

In Windows Seven Ultimate .................................................................................. 16

7.3.2

In Ubuntu Linux 12.4 ........................................................................................... 16

7.4

Software accessibility ................................................................................................... 17

7.4.1

In Windows Seven Ultimate .................................................................................. 17

7.4.2

In Ubuntu Linux 12.4 ........................................................................................... 17

7.5

Drivers ........................................................................................................................ 17

7.5.1

In Windows Seven Ultimate .................................................................................. 17

7.5.2

In Ubuntu Linux 12.4 ........................................................................................... 18

7.6

Accounting .................................................................................................................. 18

7.6.1

In Windows Seven Ultimate .................................................................................. 18

7.6.2

In Ubuntu Linux 12.4 ........................................................................................... 18

7.7

Project Management .................................................................................................... 19

7.7.1

In Windows Seven Ultimate .................................................................................. 19

7.7.2

In Ubuntu Linux 12.4 ........................................................................................... 19

7.8

Security ....................................................................................................................... 20

7.8.1

In Windows Server 2008 ....................................................................................... 20

7.8.2

Linux Red Hat Features ........................................................................................ 23

7.9

Cost ............................................................................................................................ 25

7.9.1

In Windows Seven Ultimate .................................................................................. 25

7.9.2

In Ubuntu Linux 12.4 ........................................................................................... 25

7.10

E Mail ......................................................................................................................... 26

7.10.1

In Windows Seven Ultimate .................................................................................. 26

7.10.2

In Ubuntu 12.4 Linux ........................................................................................... 26

Conclusion ......................................................................................................................... 27

Reference............................................................................................................................ 28

1 INTRODUCTION
Multitasking refers to working on multiple task at a time. In computing,
multitasking is known when many processes are working together to
complete user commands by using share CPU processing and memory.
Before a short period of time operating systems are single tasking like
MS Dos where user need to command one task to computer processor,
and when it was completed then user can command another task to CPU.
But it was taken a lot of time to complete all task assigned by user.
Then this problem was solved by designing multitasking operating
systems like Windows or Linux. In These operating systems user can
command as many as process he can to computer CPU and all these
tasks are working same time. Programmer design Context Switch to
making operating multitasking.[1]
Operating systems had included scheduling strategies to make them
multitasking.

1.1 MULTI PROGRAMMING


In multi programming systems all tasks are remain working and utilizing
CPU speed until any process complete its task stage and need another
command for further continue process. This type of systems are utilizing
maximum clock speed of CPU all the time.

1.2 TIME SHARING


When many processes are using computer time at same time, it is called
time sharing. All process are using clock speed to perform their function
simultaneously. Clock speed is divide to all process according to
priority. [2]

1.3 REAL TIME


In real time multiprocessing systems it is essential to response the task to
computer as ATM machine, in this computer response is must within
minimum time in order to continue to next task.

2 CONTEXT SWITCH
It is responsible for switching between multiple processes in order to
complete all tasks. It actually restore old state of any task and retrieve
the new state and then switching to another task. It is specially designed
for single processor CPU where only processor cannot perform all task
simultaneously and every task need full CPU speed. This switch
switches the old and new state of all tasks until they complete and user
understand all tasks are working properly.[3]

3 BASIC TYPES OF MULTI PROCESSING OPERATING


SYSTEMS

1) Preemptive operating system


2) Cooperative operating system

3.1 PREEMPTIVE OPERATING SYSTEM


In this type of multiprocessing operating system CPU speed is divided
among all running processes equally, and all programs are working same
time by utilizing same clock speed of processor until they complete their
task.[4]

3.2 COOPERATIVE OPERATING SYSTEM


In this operating system each process is using full clock speed up to his
task is finish and when this processes is at rest or not using clock speed,
it allows other process to use the full clock speed temporary. It looks as
many task are working at a time but in fact only one task is utilizing full
clock speed but context switch switches between processes very fast
and it looks that all processes are working at a time.

4 MULTI-TASKING IN WINDOWS
First we need to know what process is and how it is multi task.

4.1 PROCESS
Process is actually any program which is working on computer and it
has one starting or entry point and one finishing or exit point. Its mean it
should start and it should have ending.

4.2 THREAD
It is not a program but part of process. Every process have at least one
thread and some processes have many threads. As we know windows
seven is using preemptive multithreading technology. So CPU speed is
divides among each thread to complete its tasks. When many processes
are working together to complete a group task which is known as job.
In windows seven operating system dealing with threads, CPU speed is
divided into all threads of any processor. Threads can be created and
suspended and resume and deleted among all processes while
performing a task to finish the job.[5]

4.3 USER MODE SCHEDULING


It is an application which is used to switching between threads, it create
its own threads and operate separately and system schedule processing

have no role in this. It can create and resume and suspend and delete its
own threads. It has its own context switches and it is more efficient then
system schedule.

4.4 FIBER
Fiber is manually unit which is inside threads contexts and it allow user
to do any thread process according to its own priority. Any thread may
have many fibers. It make it easy for user that which process he want to
finish earlier.[6]

4.5 CRITICAL SECTION


It is a section inside codes which modify the data structure which is in
use by many threads which sharing it at same time, if any thread want to
do any work in this area then it need to synchronize on this section
before entering or doing any work. Process can use this synchronization
to save their time.

5 MULTI-TASKING IN LINUX
Windows and Mac initially operating systems were using cooperative
multiprocessing systems but now they are using preemptive
multiprocessing operating systems. But from the first time Linux is
using preemptive multiprocessing technology. Only one time when it is
initializing, init it is using one process but after it is using preemptive
technology.[7]

5.1 LINUX AS MULTI PROCESSING OS


User can feel this multiprocessing technology when he use Unix and can
see many windows opens with different applications and all applications
are working at same time. In Linux multiple program can also be
running in Command line Console. In which one program is running in
front and other programs are working in back ground.
We can use a,u, x options to transfer the out put screens. May be one
process taking too much time. We can press spacebar to see next process
while pressing b , we are able to see previous process.
We can also see the process tree by pstree command.

5.2 TASK STATE


There are many states of task which are using multiple processes at one
time. These processes are working as;
1. Task Running : this task is ready to perform its function.
2. Task Interruptible : This function is waiting for input signal to
perform action, current state sleep.

10

3. Task Un Interruptible : this process waiting for other input ,


currently sleep.
4. Task Zombie : this task is without its parents process.
5. Task Stopped : task complete.[8]

5.3 TIME SLICE


Linux has its own management to check which process is using how
much CPU speed. This action can be performed by a variable counter.
When it is using too much then other processes which do not use too
much clock speed , their allocated clock speed is transferred to that task.

5.4 SCHEDULER
It is a code which tell us which action to be taken at what time. This is
unique technology first use by Linux then after other operating systems.

5.5 TASK QUEUE


Linux perform fast as it suspend any un urgent task and give clock speed
to other urgent task to perform quickly. Task let is also latest function by
latest kernel. It has following functions;
Declaration
Mark
Execute

11

5.5.1 Declaration
It is used to declare a structure which is used for making any process in
queue.

5.5.2 Mark
When some task is not urgent, this is assigned a number for postpone.
This mark is done by Mark function in kernel.
5.5.3 Execution
When urgent task is performed then non urgent task is done. It is called
execution of postpone task.

5.6 TASK SWITCHING


Task switching is need in many cases which are given below;
I.
II.
III.

When CPU time is assigned to all tasks, then we give access to


some task to perform faster.
When given task is request for access any resource, it is sleep, so
its clock speed we have to give to any other task to finish quickly.
When task wait for pipe, then we need to give priority to other
process so it can write the pipe.

12

5.7 FORK
It is used to create another task. When parent process and child process
is complete then some time they need another task to show their out put ,
for this reason we need to create a new task using fork.[9]

13

Section B
Comparison Between
Windows Seven and
Linux

14

6 INTRODUCTION
In given Scenario I have to choose between Linux 12.4 Ubuntu and
Microsoft Windows Seven Ultimate to install on systems of new branch
of International Cultural Institute Horizon (ICIH) in order to stabilize a
new branch which will perform all functions accordingly. This new
branch have 15 employees. So we need following items in office to start
with.
i.
ii.
iii.
iv.
v.
vi.
vii.

15 Desktop Computers
16 LCD Monitors
1 Server
1 Router
1 Switch of 24 Ports.
Keyboards and Mice
Operating Systems and software.

We have all items except Operating systems and software and I have to
help the company to buy a suitable Operating system for all computers
so employees can perform their duties well. For this purpose let us see
what are the requirements in any office, so I will see which operating
system fulfil all requirements , and I will prefer to buy this operating
system.

15

7 SOFTWARE REQUIREMENT

7.1 TYPING
7.1.1

In Windows Seven Ultimate

In windows seven Ultimate Microsoft word is used for typing the


necessary documentation like quotation, Invoices, Letters and
application. New Microsoft work version 2013 have new look and all
functions. Which can be used to perform all office documentation duties
for all staff.

7.1.2

In Ubuntu Linux 12.4

In Linux Open office writer is used for making documentation. It is


world wide used and can convert and save almost all types of documents
file like .doc etc. it can also modify Microsoft word files and save into
their current and its own file format. And have easy to use graphical user
interface.

7.2 CALCULATING
7.2.1

In Windows Seven Ultimate

16

In Windows Seven Ultimate we can use Microsoft Excel 2013 as a


calculation software for making invoices and making all calculating by
using its easy formula and user friendly tasks.

7.2.2

In Ubuntu Linux 12.4

In Ubuntu Linux 12.4 we can use Open office Calc. to calculating the all
necessary measurements. It also have same functions as Microsoft Excel
as well as it can also modify Excel files and can save into its own format
and also excel format.

7.3 PRESENTATION
7.3.1

In Windows Seven Ultimate

In Windows Seven Ultimate we can use Microsoft Power point for


making presentation for conference as well as showing demo for all
products to customers and directors. New power point have many new
tools to deal with presentation and it make it easy for user to show his
skills for betterment of company.

7.3.2

In Ubuntu Linux 12.4

In Ubuntu Linux 12.4 we can use Open Office impress to create full
multimedia presentations. And new version include many new
techniques which help user to define his skills in presentation.

17

7.4 SOFTWARE ACCESSIBILITY


7.4.1

In Windows Seven Ultimate

In Windows Seven Ultimate if we want to download any software which


is required for office use. We have to search for many website to
download any software. And also most of windows software are costly,
and need proper training for new users.

7.4.2

In Ubuntu Linux 12.4

In Ubuntu Linux 12.4 we have Ubuntu software center from where we


can download more then 36000 software at one place and most of
software are free of cost. And no need to search on many website to
search your required software, but you can find almost every software
which you need from one place.

7.5 DRIVERS
7.5.1

In Windows Seven Ultimate

In Windows Seven Ultimate all new hardware accessories already have


their own software drivers, so very less hardware accessories need driver
for windows seven Ultimate. And all new hardware are compatible for
windows seven.

18

7.5.2

In Ubuntu Linux 12.4

Before a long time it was considered that Linux is difficult as it was


difficult to get driver for Linux, but as now more then 27 million people
are using Linux, so it make it think the hardware production companies
to make their devices compatible with Linux. Now every new device
which is launched in market have already compatibility with Linux and
most of them are plug and play for Linux or have driver for Linux inside
packaging of their products.

7.6 ACCOUNTING
7.6.1

In Windows Seven Ultimate

In Windows Seven Ultimate a lot of accounting software are available,


but from them best software is Quick books which make it easy for
accountants as well as cashiers to track their transactions. And it also
have online support facility. And have a good community to help and
training in any problem which accountant face while making accounting
in company.

7.6.2

In Ubuntu Linux 12.4

In Ubuntu Linux 12.4 GNUcash is used mostly for accounting. It is easy


to use and have all functions which help accountant to trace company
transactions and money. It also have community to help the accountant,
if he need any help while accounting. It is free of cost.

19

7.7 PROJECT MANAGEMENT


7.7.1

In Windows Seven Ultimate

In Windows Seven Ultimate we can use Microsoft Project 2013 for


making and scheduling our planning for our projects. It have all tools
which help office management to work according to planning, and also
how to create planning.

7.7.2

In Ubuntu Linux 12.4

In Ubuntu Linux 12.4 we can use Open proj. for making and implement
our planning for projects on time. It is free of cost and having all feature
which help management to complete all projects while maintaining the
time schedule.

20

7.8 SECURITY
7.8.1

In Windows Server 2008

Windows Server 2008 focus on high security and having following


functions which make it valuable.

7.8.1.1

Virtualization

By using this technology, windows is able to create virtual servers on


gest computers, as a result no one access or hack from outside the main
server. Almost 75% large companies start this technology.

7.8.1.2

Server Core

Most of people dislike to installation and this feature able for minimum
installation to carry out roles as DHCP, DNS. It is good for security
point of view.[10]

7.8.1.3

IIS 7

This is upgradeable version of IIS 6. It have more better features which


help network administrator to keep all network safe and secure. It have a
unique option to delegate server administration to Site Administrator
while minimize the authority.

21

7.8.1.4

Role Based Installation

This is a excellent part which I like in windows server 2008. Any role
you want to use in server. Install it and uninstall what is not necessary. It
help the administrator to save time and attention instead of installing a
full server.

7.8.1.5

Read Only Domain Control

Some times main server at head quarter are more secure but servers at
branches are less secure, so through using this role, headquarter server is
secure as no one can do something wrong in headquarter server as they
have only permission to read only and not for access full. So no one can
hack headquarter server while accessing branch server.

7.8.1.6

Network Access Protection

Windows server 2008 make sure that all clients who want to access its
resources are patched and having firewall. If there is any problem, it
notify the administrator to take necessary actions.

7.8.1.7

Power shell

This technology is taken from Linux. Windows command line is more


secure and easy and perform all functions quickly and easy. This is old

22

technology but windows server 2008 made it more strong and easy to
use.

23

7.8.2

Linux Red Hat Features

7.8.2.1

Virtualization

Linux Red Hat have provided the Virtualization technology not only
server abut also client computers and make them able to run any guest
software into client. More then 75% large companies are currently using
virtualization technology to make their network trouble free.

7.8.2.2

High-End Processor Support

Red hat now support high end processor support like Xeon Intel 5500
Nehalm and AMD Istambul Platform to make the network resources
access fastest and more accessible for end user.

7.8.2.3

RHEL

To really make use of all this power on the processing side, you need to
be able to deploy it to clients and RHEL does this well. It now
includes better support for InfiniBand and Fibre Channel over Ethernet
for those times when gigabit networking isn't fast enough. RHEL also
now supports smart network adapters that include processors to handle
GRO[11]

24

7.8.2.4

Improved Programming Tools

Linux red hat make it easy for programmer by adding many


programming tools which help programmers in many ways. It also
include some static kernel trace point.

25

7.9 COST
7.9.1

In Windows Seven Ultimate

Windows seven Ultimate for 15 computers have a expensive cost of 65


OMR per license, so price for 15 Desktop will be as follows. And also
we include software which are needed for office requirement.

S.No
1
2
3
4
5

Software
Windows Seven Ultimate
Windows Server 2008 for Server
Quick Books
Microsoft Office 2013
Microsoft Office Project

7.9.2

In Ubuntu Linux 12.4

Qty
15
1
5
15
5

Price
975
300
1000
3000
300

Ubuntu Linux 12.4 is free of cost and can be download from its official
website. But Linux server Red hat price 25 OMR. So price for Linux
software is;

S.No Software

Qty

Price

26

1
2
3
4
5

Ubuntu Linux 12.4


Red hat Server
GNUCash
Openoffice
Openproj

7.10

E MAIL

7.10.1

In Windows Seven Ultimate

15
1
5
15
5

0
25
0
0
0

Employee can use Microsoft Outlook to receive and send Emails for
company. Which give full access for employees to their emails.

7.10.2

In Ubuntu 12.4 Linux

Employee can use Thunder bird software for receiving their official
emails and sending also. It is free of cost and easy to use.

27

8 CONCLUSION
In my Conclusion it is better to use Linux Ubuntu instead of windows.
As we discuss above, Linux have feature which are required to run any
office.
Windows have some good features and linux have some good features ,
it is slightly difficult to choose, but by managing cost and other
compatibility qualities I prefer Linux instead of Windows.
It is easy to use and good support online and community. It can perform
all actions which can keep any office in working condition. In is good in
security and cheap, and help user in every matter what is required in
office.

28

9 REFERENCE
[1] http://en.wikipedia.org/wiki/Computer_multitasking
[2] http://www.webopedia.com/TERM/M/multitasking.html
[3]http://wiki.answers.com/Q/What_is_the_difference_between_multitas
king_multiprogramming_and_multiprocessing
[4] http://technet.microsoft.com/en-us/library/cc767883.aspx
[5] http://wiki.osdev.org/Context_Switching
[6] http://en.wikibooks.org/wiki/Windows_Programming/Multitasking
[7] http://msdn.microsoft.com/enus/library/windows/desktop/ms681917(v=vs.85).aspx
[8] http://www.serverwatch.com/trends/article.php/3716276
[9] http://en.wikipedia.org/wiki/Windows_Server_2008
[10]http://www.pcworld.com/article/171500/Top_5_Features_of_New_
Red_Hat_Linux.html
[11] http://www.redhat.com/rhel/features/

You might also like