Title: Sistemas Operativos II
1Sistemas Operativos II
- M.C. Juan Carlos Olivares Rojas
2Temario
- 1.0 Repaso
- 1.1 Sistemas distribuidos.
-
- 1.2 Concepto y caracterÃsticas de los SOR
- 1.3 Concepto y caracterÃsticas del SOD.
3Operating System Review
- Operating Systems History
- Basic Concept about OS
- OS Architecture
- Monolitic
- By Layers
- Microkernel
- Others
- OS Virtualization
- OS Installation (Solaris, Windows 7, Linux,
FreeBSD, MacOSX).
4Operating System Description
- Whats an Operating System?
- Its a software which control a computer, It acts
like a Human-Machine Interface. It manages all
the resources (hardware and software) of a
Computer System.
5Introduction
6Operating Systems
- The objective of an Operating System is the
operation of a Computer. - Its the computer principal software which
execute when the computer is turned on. - Does a calculator have an Operating System? Why?
7Introduction
Bank Systems
Reservation
Web Browser
Application programs
Compilers
Editors
Command Interpreter
System programs
OPERATING SYSTEM
Machine Language
Hardware
Microprogramming
Physical Devices
8Operating Systems
- The Operating System development is influented by
technological development. The Operating System
premisses (objective function) are - Minimize the effort (human-machine frontier).
- Maximize the computer resources performance
9Operating Systems
- The principal resources managed by an Operating
System are - Process, Tasks, Applications (Process Management)
- Devices, Peripherals (I/O Management)
- Memory (Memory Management)
- Data (File System)
10Operating Systems
11Operating Systems
- The esential part of an Operating System is the
Kernel. - An Operating System is executed in supervisor
mode of the microprocessor (it can access all
microprocessor functions). - The programs are executed in user mode.
12Operating Systems
- The Operating Systems actions depends of the
applications that run on it. - Its no the same resource administration for a
monouser system than multiuser system, or process
administration in a multitask system than
time-sharing system. - Operating Systems are totally dependent of
computer architectures.
13Operating Systems
- This is the reason why Operating Systems such as
Windows can not be executed over Power PC
Architectures, because its linked an x86 Intel
Architecture. - Recently 64 bits microprocessor are becoming
popular, for this reason is necesary and special
operating Systems for the correct resources
utilization.
14Operating Systems
- Actually Operating System supports multitasking
and concurrence in native form on multiprocessor
or multicore processors. - For the good use of resources, Operating Systems
need to use politics and control mechanism. An
Operating System has to plan, control, drive and
execute all the system operations.
15Operating Systems
- The programs can access directly to some function
in superivor mode throught a System Call. - An operating System has an interface to users and
other interface to programms (programmers). - In UNIX this distnction doesnt exist.
16Operating Systems
- As well hardware and software are not mutually
exclussive (they are a binom). Operating System
are in the middle of this resources. - Actually the trend is construct operating Systems
for Emedded Devices such as ATM, watchs, PDAs,
cell phones, electrodoméstics, etc.
17Operating Systems
- Another Operating Systems which are growing are
Real-Time OS. - Examples of Operating Systems are DOS, Windows,
Unix, Linux, Mac OS X, among others.
18Operating Systems History
- Quiz 1
- What was the firt OS for 32 Bits PCs?
- When was Linux OS appear?
- What was the first important OS constructed
enterily in high level programming language? - What is the most recent Linux Version?
19Operating System History
- In the begining Turing created the machine
- The Operating System History comes hand in hand
with hardware and software evolution. - The computer paradigms have changed with the pass
of the times, for instance de 1950-1970 decade
the concept of one computer many users appears.
20Operating Systems History
- In1980-1990 decade the computer paradigm shifted
to one computer one user. - Finally in this decade, the paradigm shift to
one user many computers.
21Operating Systems
- In the Generation 0 (1940s) and First Generation
(1950s) the Operating System doesnt exist,
reason why users have to configure the circuits
for operating the machine. - The second generation (1960s) appears the first
OS which principal fuction was to act like a
extended machine.
22Operating System History
- All the OS was constructed in assembler language,
reason why it was totally dependant of the
machine. - The OS only can manipulate some peripherals. The
batch processing was used to improve the
resources use. - In Third Generation (1970s) OS was more complex
because they used concepts such as
multiprogramming and time-sharing.
23Operating Systems
- Unix was the first OS constructed in a High-Level
Language (C Languaje) with only the critical part
(I/O) in assembler. - In the Fourth Generation (1980s) appears the
first extremely-used OS in PCs DOS and Windows.
Reason why OS was more complex and more easy to
use.
24Operating System History
- Since 1990 the computer network utilization
(overall Internet) and multimedia in OS was
extended in such way than today are present in
any OS.
25Introduction
IBSYS
IOCS
55 60 65 70 75 80 85 90 95 00 03
CTSS
DOS/360
OS/360
MULTICS
CP/CM5
RSX-11M
UNIX
TSO
RT-11
CP/M
UNIXV.7
VMS 1.0
DOS/VDSE
MVS/370
VM/370
4.1BSD
XENIX
MS-DOS 1.0
SYSTEM III
DR/DOS
SUN OS
4.2BSD
VS
MVS/XA
VM/XA
SYSTEM V
AIX
OS/2
POSIX
MACH
WIN 3.0
4.3BSD
OSF/1
VMS 5.4
WIN 3.1
AIX/370
SYSTEM V.4
VS/ESA
MVS/ES
VM/ESA
AIX/ESA
SOLARIS 2
LINUX
4.4BSD
WIN NT
WIN 9X
WIN 2000
VMS 7.3
WIN XP
LINUX 2.6
SOLARIS 10
WIN Server 2003
26Windows and Linux Evolution
1970
1980
1990
2000
VMS v1.0
NT 4.0
Server 2003
Windows XP
Windows 2000
Windows NT 3.1
1970
1980
1990
2000
v2.0
v2.2
v2.3
v2.4
v2.6
Linux v1.0
UNIX V6
UNIX público
Nacimiento de UNIX
27OS Basic Concepts
- Process is a program in execution.
- File basic unit of persistent storage
information - Shell a part in an OS which functions like an
interface (front end) between programms and user
with OS (back end). This term generally is
focused in Command Line Interfaces (CLI).
28OS Basic Concepts
- System Call is the way in how programs can acess
to supervisor mode instructions of microprocessor
throught kernel. - Its important dont confuse the call system and
command terms for instance, kill is a command
(calling by usuers) which let to send signals to
process and kill() is system call (calling by a
programm) which do the same.
29OS Structure
- Operating Systems have evolutioned in its
internal form trying to achive its performance. - All OS have a process which fuction is load the
OS and the Applications, this process is called
Loader. For instance, Linux have loader like LILO
(Linux LOader) and Grub. - The loader use a boostrap to expand the OS.
30OS Structure
- All OS have a core process called Kernel, it has
the basic routines of an OS. - Some OS use the microkernel concept, this have
the function to coordinate to the other parts of
an OS such as I/O Devices, Process, Memory and
File Systems. - The structure of and OS could be different but in
most of the time are very similar because some OS
use Open Standards.
31OS Architecture
- The first structure for an OS was Monolithic
Structure. This doesnt have any real structure,
this is the reason why OS is only one big process
called Kernel. - Other well-know structure for OS is client-server
model in where OS have server process management
each one of system resources and kernel functions
in base a one client making request to servers.
32Monolithic Architecture
App
App
User Mode
Kernel Mode
System Services
OS Procedures
Hardware
33OS Architecture
- This Client-Server function has to let OS
portability to another architectures such as
distrubted architectures, where each service
could be localizate in diferent remote machines. - Other Architecture was Ring Architecture, where
OS is structured in concentric circles called
Rings. Each Ring has a well-defined structure.
34OS Architecture
- The most used Architecture in OS is Layer
Architecture, where Layers are divided in
diferente levels like Ring Architectures. Inside
each layer can exist two o more levels. Layers
can interact with higher an lower levels thus in
the same level.
35Layer Architecture OS
Application Program
Application Program
Application Program
User Mode
Kernel Mode
System Service
File System
I/O and Memory Management System
Process Management
Hardware
36Microkernel Architecture
Memory Server
Client Application
Network Server
Process Server
File Server
Display Server
User Mode
Kernel Mode
Microkernel
Request
Response
Hardware
37Windows NT High-Level Architecture
38Windows NT Architecture
Envinroments Subsystem
Procesos del Sistema
Services
Applications
Windows
OS/2
Session Handler
POSIX
Windows DLLs
System Thread
NTDLL.DLL
System Dispatch System
Windows USER, GDI
(Kernel Mode Interfaceel)
Object Handler
File System Cache
I/O Manager
Plug and Play Manager
Energy Manager
Security Reference Monitor
Virtua Memory
Process and Threads
Local Process Call
Configuration Manager (Registry)
File System and Device Drivers
Grpahical Manager
Kernel
Interfaces de Hardware(buses, Dispositivos de E/S
, interrupcciones, intervalos de temporizadores,
DMA, control de memoria cache , etc.)
Hardware Abstraction Layer (HAL)
39Windows NT Architecture
- Kernel and Executive are located at ntoskrnl.exe
program - Inside Executive are located File, Memory and
Process Manager. - Device Handler are located in files with .sys
management.
40Windows NT Architecture
- Wndows Handler is located windowsk.sys file. HAL
is located at hal.dll - Most of Windows Code is writed in C, some of this
component are developed at C. One of the trends
is writing legacy modules in C - Operating System such Windows 7 has more than 39
millions of line of codes.
41Windows NT Architecture
- Core OS components
- NTOSKRNL.EXE Executive and kernel
- HAL.DLL Hardware abstraction layer
- NTDLL.DLL Internal Support Systems
- Fundamentales System Process
- SMSS.EXE Service Management Process
- WINLOGON.EXE System Authentication Process
- SERVICES.EXE Control Services Process
- LSASS.EXE Local Security Authority Subsystem
- Windows Subsystem
- CSRSS.EXE Windows Process Subsystem
- WIN32K.SYS USER and GDI Components
- KERNEL32/USER32/GDI32.DLL Windows subsystem DLLs
42WoW64
- Win32 over Win64 is the Windows Subsytem which
Execute Win32 applications in 64-bits
environments in transparent mode. - Other diferences implie in the word length of
data and addressing memory of an OS. - HOMEWORK Writing a Research Document where
compares Windows NT Architecture with Linux 2.6.
43WoW64
32-bit EXE, DLLs
32-bit ntdll.dll
Wow64cpu.dll
Wow64win.dll
Wow64.dll
64-bit ntdll.dll
Modo Usuario
Win32k.sys
Ejecutivo
Modo Kernel
44OS Virtualization
- Virtualization isnt a new concept. I was
originated in 1970s by IBM in its OS VM/360. - The virtual term means a thing with simulated
existence Abstraction. - Every Problem in Computing Science can be solved
by adding an indirection layer.
45OS Virtualization
- In Computing a lot of things are virtual
- Virtual Reality
- VLAN (Virtual LAN)
- VNC (Virtual NetworkComputing)
- VPN (Virtual PrivateNetwork)
- Virtual Memory
- Virtual Storage
- JVM (Java Virtual Machine)
- .
46OS Virtualization
- Actual Problems in OS
- Security (viruses)
- Legacy Software
- Performance
- Incompatibility between applications in diferent
OS - All these problems can be solved through
Virtualization. - Virtualization is another OS Architecture using
and special core element called Exokernel.
47OS Virtualization
- Aproximately only 10 of time a computer is
working. - Virtualization Freedom. One server can be the
work of many - Around 20 (in 2006 10) of server are
virtualized.
48OS Virtualization
49OS Virtualization
- Some virtualization tools are
- Bochs and QEMU (emulation)
- VMWARE, Virtual PC, Virtual Box, Parallels
Workstation (Completed Virtualization) - Xen andUser-ModeLinux (UML) paravirtualization
- Linux V-Server and OpenVZvirtualización (OS
Virtualized)
50OS Virtualization
51OS Virtualization
52OS Virtualization
53Tarea
- Instalar una máquina virtual en una Laptop o
Pendrive. - Traer un disco de instalación de un sistema
operativo diferente al de la máquina anfitriona
(por ejemplo si tengo windows traer un sistema
X). - Práctica 1 revisión de las máquinas del
laboratorio, particionamiento e instalación de
sistemas operativos reales.
541.1 Sistemas Distribuidos
- 1.1.1 Ventajas y desventajas contra los sistemas
centralizados. - 1.1.2 Modelo cliente servidor.
- 1.1.3 CaracterÃsticas de hardware.
- 1.1.4 CaracterÃsticas de software.
- 1.1.5 Direccionamiento lógico y fÃsico.
55Referencias
- Stallings. Sistemas Operativos. Ed. Megabyte.
Noriega Editores. - Cualquier libro de Sistemas Operativos de Red y
Distribuidos.