Title: Electrotechincal Laboratory
1Network Transferable Computer
- Electrotechincal Laboratory
- Kuniyasu SUZAKI
- http//www.etl.go.jp/suzaki/NTC
2Outline
- Current computing environment
- What is next? What is NTC?
- Relational work and my research plan at UIUC
- Conclusion
3Trend of Computing Environment
- CPU becomes faster and faster. (1GHz)
- Memory and disk become larger.(1GB 20GB)
- Network becomes faster and wider.(1Gbps)
- Machine becomes smaller and handy.
- From Single Task OS to Multi task OS
- From CUI to GUI
- Network mobile computing environment
- Machine can emulate other machines and OS.
4Emulator for normal users
- Emulator becomes popular for normal users
- To hide the delay of software development.
- Ex MacOS FAT binary (from 68000 to PowerPC)
- To play games on PC
- Bleem! for PC
- Bleem, Inc. http//www.bleem.com
- PlayStation Emulator on PC
- Bleem, Inc. http//www.bleem.com
- Only 12 workers. The programmer is Randy Linden
only. - Virtual Game Station (VGS)
- Connectix Inc. http//www.connectix.com
- PlayStation Emulator on PC
5Emulator for normal users
- To keep the legacy machines.
- Ex Atrai Emulator, Old Macintosh Emulator
- To use other OSs application because CPU becomes
much powerful. - Many people want to use Windows applications even
if they hate the OS.
6Virtual Machine software
- DOS/V Machine
- VMware ( http//www.vmware.com )
- Plex86(FreeMware) ( http//www.plex86.org )
- Fusion-PC ( http//www.microcode-solutions.com )
- Mac Emulator
- PowerPC Mac
- Virtual PC ( http//www.conectix.com )
- General Machine
- Bochs ( http//www.bochs.com )
7VMware
- Commercial software offered by VMware (
http//www.vmware.com ) - Professor Mendel Rosenblum established the
company. - Emulate DOS/V machine
- Some devices are included Phoenix BIOS, VGA, AMD
PCnet, Sound Blaster16, etc. We can install
Windows OS and Linux, etc. - Most instructions are executed as native code.
- The speed efficiency is more than 80 of the
native CPU.
8Monitor image of VMware
9Bochs
- Free DOS/V machine emulator offered by Bochs
(http//www.bochs.com ) Kevin Lawton - It is under development. No network devices. The
virtual machine runs as a stand alone. - Kevin Lawton moved to the development of Plex86
- http//www.plex86.org
- Platform free Emulate
- DOS/V,Sparc/Solaris,Mac,SGI,IBM RS6000, etc.
- Full emulation of x86 instruction. The efficiency
is not good.
10Emulator for developer
- To get the share of popular CPU
- Crusoe (Transmeta Inc.)
- CMS(Code Morphing Software) emulate X86
- DAISY (Dynamically Architected Instruction Set
from Yorktown) http//oss.software.ibm.com/develop
erworks/opensource/daisy - To get common computing environment on each
machine - JAVA
- Intent (http//www.tao-group.com)
11What is next?
- We could get such technical trends emulator,
high speed network, and mobile devices. How do we
use them? - We would like to use the same computer
environment at anytime, at anywhere, for
everybody. - We propose
- NTCNetwork Transferable Computer
12What is NTC?
- NTC can transfer the running OS image via network
or removable media.
13Basic concept
? Transfer Transfer the disk (All OS image
Memory image and file system) to other machine
disk
- Basic idea of NTC is the same
- of following physical handling.
CPU
CPU
? Resume Restore the memory contents from the
disk
? Hibernate Save the memory contents To the disk
Memory
Memory
Common Architecture
Common Architecture
14Requirement
- Required facilities and functions are
- same architecture machine.
- It is solved by Virtual Machine software.
- the OS can hibernate and resume without the help
of hardware(BIOS). - the hibernated OS image, which includes memory
image and file system, can be transferable by
network or removable media. - We cant transfer the disk image from the
hibernated computer.
15Basic Idea
16Hibernation
- Its a function to suspend and resume the running
OS. - Hibernation is develop to keep the battery. It is
very important function for note PC. - Basically it depends on BIOS to control devices.
- To stop the hard disk.
- To stop the CPU.
- To stop the memory.
17Specification of BIOS
- To support the hibernation, there are some BIOS
specifications. - APM (Advanced Power Management)
- Low power mode interface made by Microsoft and
Intel (Old specification) - ACPI (Advanced Configuration Power Interface)
- Low power mode interface made by Intel,Microsoft,
and Toshiba. - ACPI2 (2000.8.30) http//www.teleport.com/acpi/
- It can mange multi processors,64bit CPU, Hot
Plug-in, Buttery control (Speed Step), etc.
18Mode of hibernation
- Standby mode
- The memory keeps OS image and CPU and hard disk
stop. The machine should keep power of memory. - Suspend mode
- OS image is moved from memory to hard
disk(in-volatile memory) and the power is stopped
entirely. - Even if this mode, we can not transfer the OS
image, because the BIOS has to know the state.
19Hibernation which is independent of BIOS
- Normal hibernation is not suitable for NTC.
- Because it depends on BIOS and keeps the state on
the machine. - We must use the hibernation which is not
independent of BIOS. - Linux has SWSUSP (Software Suspend)
- http//falcon.sch.bme.hu/seasons/linux/swsusp.htm
l - It is a special type of shut down and reboot.
When the machine shuts down, the software keeps
the running OS image to the SWAP area. When it
boots, it uses the SWAP area image and restart
the OS.
20Current Implementation
- Virtual Machine software
- vmware (version 2.0)
- It can run under Linux Windows NT/2000.
- Transferred OS
- Linux (RedHat 6.2)
- With hibernation soft SWSUSP.
21Current Implementation
22Action of NTC
Hibernate
Transfer
Resume
The running OS image on the desktop computer is
hibernated.
The hibernated OS image is transferred by
removable media.
The hibernated OS is resumed on laptop computer
23Resume Time
24Usage for normal user
- Install once, Use any machine
- User is not required to install more than once
and use same environment on any machines. - User can bring back office machine environment to
home. - User can get the copy which is set up by an
expert. Expert has good knowledge and experience.
Normal users can share them. - When we buy a new machine, we do not need to
re-install all software again. The setup OS can
survive.
25Usage for developer
- Up to now debugging requires many steps. Many
developers are told the debugging point by
e-mail, get the source code, compile it and
execute it to reach the debugging point. - NTC offers platform for collaboration
- Developers can share the same OS environment and
debugging point from the copy of live OS image.
They are not required to compile and execute. - They also can replay the debugging point by the
use of old OS image.
26The image of NTC world
Expert offers us an excellent OS image.
Mobile user can also share the OS.
User can use the OS image without install
Developer can share the debugging.
OS image is distributed on the net.
27Relational work
- Process migration
- Transfer a process to another machine
- Java
- Program once, run anywhere programming
environment. - JavaVM(Byte Code Interpreter)
- Remote virtual display software
- It transfer the display image to another machine.
- It doesnt open remote X Window.
28Migration vs. NTC
29Java vs. NTC
- Java can not support OS
- Because there is no supervisor mode.
- According to the reason JavaOS could not build.
- Java is too high abstraction.
- Garbage collection is slow.
- Java could not support hibernation.
- Poor Interruption handling.
- NTC is depends on virtual machine.
- Virtual machine offers us the same environment of
DOS/V machine. And the CPU power is not so poor.
(Ex VMware offers us 80 of native CPU speed.)
30Remote Virtual Display vs. NTC
- Remote Virtual Display is popular now.
- VNC (Virtual Network Computer)
- ATT Free software
- http//www.uk.research.att.com/vnc/
- Desktop On-Call
- IBM commercial software
- http//www.ibm.co.jp/pspjinfo/javadesk/syoukai1.ht
ml - pcAnywhere
- Symantec commercial software
- http//www.symantec.com/region/jp/products/pca/pca
.html - RED
- Columbia Univ. Prof. Jason Nieh, research
- http//www.cs.columbia.edu/nieh/research/thin/
31Sample of VNC (Win98 on Linux)
32Remote virtual display vs. NTC
33Next Step (1)
- To control CPU speed
- When we transfer the OS image to another CPU
machine, the animation play faster or slower. - We need to control the CPU speed. Im planning to
use the DSRT2 (Dynamic Soft Real Time CPU
Scheduler 2.0) to solve the problem. - http//cairo.cs.uiuc.edu/software/DSRT-2/dsrt-2.ht
ml
34Next Step (2)
- We need the fast and secure transfer for NTC.
- Im planning to transfer the OS image from ETL to
UIUC. Im planning to use - Coda Distributed file system developed CMU.
- iSCSI Internet SCSI
- rsync ssh rsync is efficient backup tool and
ssh is secure shell.
35Next Step (3)
- To adapt real mobile environment.
- Current version NTC is transfer the stand alone
OS image. I would like to adapt it to real mobile
environment. - I would like to adapt Mobile IP to distinguish
the machine in the network.
36Conclusion
- We propose the method, named NTC, to transfer the
running OS image to another machine. - This research is done with Waseda Univ and
Hiroshima-City Univ. - The test version of OS image is distributed the
following home page. - http//www.etl.go.jp/suzaki/NTC
37Animation for NTC