Minix over Linux: A User-space Multiserver Operating System

advertisement
2011 Brazilian Symposium on Computing System Engineering
Minix over Linux:
A User-space Multiserver
Operating System
Pablo Pessolani, Oscar Jara
Departamento de Ingeniería en Sistemas de Información
Facultad Regional Santa Fe, UTN
Santa Fe, Argentina
100062324 王璽鈞
100062330 孫士媛
101062702 翁景華
1
Agenda
Introduction1 – Server Virtualization
II. Introduction2 – Minix
III. Minix over Linux: A User-space Multiserver
Operating System
I.
I.
Prerequisite
II.
III.
Mol Architecture and Components
Conclusions and Future Works
100062324王璽鈞 100062330孫士媛 10162702翁景華
2
Agenda
Introduction1 – Server Virtualization
II. Introduction2 – Minix
III. Minix over Linux: A User-space Multiserver
Operating System
I.
I.
Prerequisite
II.
III.
Mol Architecture and Components
Conclusions and Future Works
100062324王璽鈞 100062330孫士媛 10162702翁景華
3
Server Virtualization
101062702翁景華
4
What is virtualization
Convert one physical server into multiple virtual machines
100062324王璽鈞 100062330孫士媛 10162702翁景華
5
Why Virtualize?
•
Consolidation
- Make good use of physical machine’s resources
- Decrease the use of physical space
•
Isolation
- Running software without worrying about affecting other applications or
OSes
•
High Availability
- If a sever fail, another serve can take its place
•
Easy Deployment
- move a virtual server from one physical machine in a network to another
100062324王璽鈞 100062330孫士媛 10162702翁景華
6
Terminology
• Host
-physical server, e.g. a real computer
• Guest
-
- virtual server, e.g. a virtual machine
• Hypervisor (or Virtual Machine Monitor)
- A piece of software
- Presents the guest OSes with a virtual platform and manages
the execution of the guest OSes
100062324王璽鈞 100062330孫士媛 10162702翁景華
7
Types of Server Virtualization
•
Full virtualization
- Simulates complete hardware environment
- Guest OS is unmodified to run
- OS is not aware that it is not running on real hardware
- Hypervisor is required
-
•
Limitation
- Low efficiency
• Examples:
- Virtual Box
- Virtual PC
- VMware
- QEMU
100062324王璽鈞 100062330孫士媛 10162702翁景華
8
Types of Server Virtualization
•
Para-virtualization
- Not fully emulate a complete hardware environment
- Guest OS is modified to run on the hypervisor
- Guest OS is aware of being virtualized itself
- More efficient than full virtualization
-
•
Limitation
- Need OS modification
- compatibility and portability
•
Examples:
- XEN
- KVM
- Win4Lin 9x
100062324王璽鈞 100062330孫士媛 10162702翁景華
9
Types of Server Virtualization
•
Operating System-level virtualization
- Host OS has the ability to do shared kernel virtualization
•
performs all the functions of a fully virtualized hypervisor
- Based on the creation of isolated containers
- The most efficient than the other two
•
Containers
Limitation
- Guest OS should be similar to host
•
Examples
- Linux-VServer
- OpenVZ
- FreeBSD Jails
- Chroot
100062324王璽鈞 100062330孫士媛 10162702翁景華
10
Comparison
Full virtualization
Para-virtualization
OS-level
virtualization
Performance
scalability
-
Versatility
(Share OS and drivers)
Virtual HW


x
Hypervisor
Thin hypervisor
Container
100062324王璽鈞 100062330孫士媛 10162702翁景華
11
Agenda
Introduction1 – Server Virtualization
II. Introduction2 – Minix
III. Minix over Linux: A User-space Multiserver
Operating System
I.
I.
Prerequisite
II.
III.
Mol Architecture and Components
Conclusions and Future Works
100062324王璽鈞 100062330孫士媛 10162702翁景華
12
Minix
100062324王璽鈞
13
Minix--mini UNIX
•
Andrew Tanenbaum
•
Assembly language/C
•
Copyright of UNIX 7
•
Unix Like
•
Tape
•
For education
100062324王璽鈞 100062330孫士媛 10162702翁景華
14
Overview of Processes in MINIX
100062324王璽鈞 100062330孫士媛 10162702翁景華
15
Interprocess Communication in MINIX
100062324王璽鈞 100062330孫士媛 10162702翁景華
16
MINIX Scheduling
•
Each time a process is interrupted from a I/O device or from the clock.
•
Within the task and sever levels processes run until they block, never preempted
by the clock,
•
but user processes are scheduled using round robin.
100062324王璽鈞 100062330孫士媛 10162702翁景華
17
Microkernel
•
Modular kernel
•
Basic service: for process、storage、I/O
•
Others EX Internet
•
Scalability/ useful Application
100062324王璽鈞 100062330孫士媛 10162702翁景華
18
Difference
•
Linux、Unix use
/
Minix use
100062324王璽鈞 100062330孫士媛 10162702翁景華
19
100062330孫士媛
20
Agenda
Introduction1 – Server Virtualization
II. Introduction2 –Minix
III. Minix over Linux: A User-space Multiserver
Operating System
I.
I.
Prerequisite
II.
III.
Mol Architecture and Components
Conclusions and Future Works
100062324王璽鈞 100062330孫士媛 10162702翁景華
21
What is MoL?
1.
2.
3.
Minix on Linux
A User-space
Multiserver Operating
System
“A reliable OS running
as a message oriented
middleware”
100062324王璽鈞 100062330孫士媛 10162702翁景華
22
Why Minix?
1.
2.
3.
4.
5.
Microkernel based
Multilayer system
Client/Server model
Message Transfer Interprocess
Communications (IPC)
Interrupt hiding
100062324王璽鈞 100062330孫士媛 10162702翁景華
23
Agenda
Introduction1 – Server Virtualization
II. Introduction2 – Minix
III. Minix over Linux: A User-space Multiserver
Operating System
I.
I.
Prerequisite
II.
III.
Mol Architecture and Components
Conclusions and Future Works
100062324王璽鈞 100062330孫士媛 10162702翁景華
24
Two design goals
1.
2.
To be as independent of the host’s architecture
as possible to facilitate the migration to
different platforms other than Linux.
To use a minimum of the host’s resources in
order to facilitate live process migration on a
cluster of machines.
100062324王璽鈞 100062330孫士媛 10162702翁景華
25
Architecture
100062324王璽鈞 100062330孫士媛 10162702翁景華
26
Architecture
100062324王璽鈞 100062330孫士媛 10162702翁景華
27
Architecture
100062324王璽鈞 100062330孫士媛 10162702翁景華
28
Agenda
Introduction1 – Server Virtualization
II. Introduction2 – Minix
III. Minix over Linux: A User-space Multiserver
Operating System
I.
I.
Prerequisite
II.
III.
Mol Architecture and Components
Conclusions and Future Works
100062324王璽鈞 100062330孫士媛 10162702翁景華
29
Works Ahead
Stable production-mode version
2. Security features
3. Virtualization of more devices
4. Performance optimizations
5. Binary compatibility
6. Process and status monitoring .etc
1.
100062324王璽鈞 100062330孫士媛 10162702翁景華
30
Main Target
Distributed processing
II. SSI-DOS = Single System Image DOS
I.
100062324王璽鈞 100062330孫士媛 10162702翁景華
31
Download