Computer System Overview - National University of Sciences

Download Report

Transcript Computer System Overview - National University of Sciences

Operating Systems
1
Why Bother?
• We do not know:
•
•
•
•
•
Who is Linus Trovalds
Who is Andrew Tanenbaum
What does the “red devil” logo represent
How Bill Gates made his $$$ ….
What is this fuss about “open-source” software
• In addition, we want to learn:
• What is an Operating System (OS)
• How it manages computer hardware
• IMO, “the” most important subject in a IT
degree:
• We are doing one!
2
A Simple Definition of OS
• A complex layer of software between applications and the
computer hardware (my own definition)
• An operating system (OS) is a computer program that manages
the hardware and software resources of a computer (wikipedia)
• Its hard to agree on an authoritative definition:
• The bad news is that it is not possible (IMO)
• The good news is that it is not important
Applications like Internet Explorer
Operating System
Computer Hardware
3
What Needs Learning?
• Background:
• Computer architecture -- what exactly is managed by the OS
• Evolution of OS
• Processes:
• How OS is executing applications
• Memory:
• How memory is managed
• Scheduling:
• How are multiple applications managed
• Input, output, and file systems:
• How do computers store data on hard disk
• Networking:
• How do two computers talk to each other
• Security:
• How to ensure that your data is safe
4
Text Book
• “Operating Systems”, 5th Edition by William
Stallings
Currently its not available in the library but we have ordered it
• We might have to live with the 4th edition!
5
Why this Book?
• This book is very simple and “simple is good”
• If time allows, we will cover the whole book
• The slides for this books are freely available:
• I will use customized slides in the class and will upload it on my
website
• Do not expect that slides will help you in exams
• I’ll be testing your concepts!
• Do not expect a question like:
• “define operating system and give two examples”
• I will recommend that you read through the book
(Chapter by Chapter):
• Try to understand the OS concepts!
6
Rules of the Game
• Grading Policy:
• I will upload it on the course website
• We’ll have normal stuff like 2 OHTs, 1 final
exams, quizzes, and assignments
• In addition, I’d like every student to present
something interesting about OS or its
applications in the class:
• List of topics will be uploaded soon
7
Anyway .. .. ..
• Early computers (1940s era) had no OS
• Things got interesting in 1964:
• IBM developed System/360 hardware
• OS/360 was developed with the aim of “one OS for
IBM hardware”
• OS/360 evolved in Multics, which inspired UNIX in
1970s
• And UNIX changed everything!
8
9
Tanenbaum and Minix
• Professor of CS at Vrije Universiteit, Amsterdam in the
Netherlands
• Wrote Minix for research and teaching purposes
• http://www.cs.vu.nl/~ast/
• http://en.wikipedia.org/wiki/Andrew_S._Tanenbaum
10
Linus and Linux
• Linus Trovalds is the guy who
wrote Linux when he was a
student in Finland:
• Evolved out of Minix
• He is the ultimate authority of
Linux OS:
• Current estimates suggest that
he has 2% contribution to Linux
11
Linus vs. Tanenbaum
• Background:
• Linux has “monolithic” kernel
• Minix is based on “microkernel” approach
• AST posted an email “Linux is obsolete”:
•
•
“ … the debate is essentially over. Microkernels have won …”
“ … portability …”
• Reply from Linus:
•
•
•
•
“… look at who makes money off minix, and who gives linux out for free …”
“… your job is being a professor and researcher. That's one hell of a good excuse for some of the braindamages of minix …”
“.. From a theoretical (and aesthetical) standpoint linux looses ..“
“.. Linux wins heavily on points of being available now ..”
• Linus vs. Tanenbaum:
•
http://people.fluidsignal.com/~luferbu/misc/Linus_vs_Tanenbaum.html
• More on :
•
http://en.wikipedia.org/wiki/Tanenbaum-Torvalds_debate
and Google
• Today, Linux is much widely adopted than other non-M$
(Microsoft) Oses:
• Of course Windows is the clear market leader
12
Some Linux Distributions
•
•
•
•
•
•
•
•
Red Hat Fedora Linux
Debian
Gentoo
SuSE
Slackware
Ubuntu
Knoppix
Many more …
13
How Bill Gates made his $$$
• In terms of market-share, M$ Windows is the
big boy in OSes …
• I’ll let you find out more about this …
14
Steve Jobs - The Apple Guy
15
Open Source Software
• Open source refers to any computer software whose
source code is available under a license (or
arrangement such as the public domain) that permits
users to study, change, and improve the software, and
to redistribute it in modified or unmodified form
(Wikipedia)
• Open Source Initiative: http://www.opensource.org/
• Free Software Foundation: http://www.fsf.org/
• GNU (GNU’s Not Unix) Project: http://www.gnu.org/
• According to GNU:
• “Free software” is a matter of liberty, not price. To understand
the concept, you should think of “free” as in “free speech”, not
as in “free coke”
• How will companies make money then?
16
Now About Me
• Name: Aamir Shafi
• Computer Software Engr. from MCS (2003)
• Did my final year project at NIIT
• Ph.D. from the Institute of Cosmology and
Gravitation at the University of Portsmouth, UK
(2006)
• Ph.D. Supervisors:
• Mark Baker
• Bryan Carpenter
• Thesis Title: “Nested Parallelism for Multicore
Systems Using Java”
• Taking care of the Center for High Performance
Scientific Computing
17
Research Interests
• Research, development, and evaluation of parallel
programming libraries, languages, and paradigms
• Also interested in scientific computing and simulations:
• Ported a cosmological simulation code to Java
• I’m the developer and maintainer of MPJ Express:
• A Java HPC library
• http://acet.rdg.ac.uk/projects/mpj/
• http://mpj-express.org
• My old outdated website:
• http://acet.rdg.ac.uk/~mas
18
Parallel Computing Workshop
• At NIIT, we will be conducting a three day
workshop on parallel computing:
• More details on: http://www.niit.edu.pk/hpsc
• All BIT-7 students are encouraged to attend this
workshop:
• Registration
• High Performance Computing or Parallel
Computing or Scientific Computing is a very
specialized area:
• Probably our only chance to get into NASA or ESA …
19
Lets Start Parallel Computing
• Get to know Parallel Computing:
• http://www.llnl.gov/computing/tutorials/parallel_comp/
• Get to know Message Passing Interface (MPI):
• http://www.llnl.gov/computing/tutorials/mpi
• Get to know OpenMP:
• http://www.llnl.gov/computing/tutorials/openMP/
• Try running a “Hello World” MPJ Express
program:
• Download and install MPJ Express from
(http://acet.rdg.ac.uk/projects/mpj)
• Need help:
• See me in the HPC lab
20
My Take on Research
• In CS, research and development are strongly
tied together
• Normally researchers in HPC are excellent
programmers:
• Fortran, C, or Java
• A simple definition of research is “better
understanding of things”
• Research could be very frustrating and
challenging at times
• Good research always start with a lot of reading
and thorough literature review
• Anyway, its an OS class …
21
Summary
• Covered some popular UNIX-based OSes
• Reminded ourselves the importance of
operating systems
• Linux is a good OS, and deserves “a try” from
us
• Center for High Performance Scientific
Computing is up and running:
• Maybe you could join us while we are starting
• Next week we will talk about “computer
architecture and evolution of OS” -- basically
Chapter 1 and 2 of Stallings book
22