26
Extending Operating System Research into the Cloud – The SkyLab Project Alexander Schmidt HPI, Potsdam University, Germany Cloud Futures 2010

Extending Operating System Research into the Cloud – The SkyLab Project Alexander Schmidt HPI, Potsdam University, Germany Cloud Futures 2010

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Extending Operating System Research into the Cloud – The SkyLab Project

Alexander Schmidt

HPI, Potsdam University, Germany

Cloud Futures 2010

Operating Systems and Middleware

Prof. Dr. rer. nat. habil. Andreas PolzeDipl.-Inf. Alexander Schmidt

Hasso-Plattner-Institute for Software Engineering

at University PotsdamProf.-Dr.-Helmert-Str. 2-3

14482 Potsdam, Germany

Operating Systems and Middleware

Prof. Dr. rer. nat. habil. Andreas PolzeDipl.-Inf. Alexander Schmidt

Hasso-Plattner-Institute for Software Engineering

at University PotsdamProf.-Dr.-Helmert-Str. 2-3

14482 Potsdam, Germany

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

4

Agenda

■ Teaching Operating System at HPI

□ Microsoft Windows Curriculum Resource Kit

□ Windows Research Kernel

□ Programming Projects

■ SkyLab

■ Conclusions

msdnaa.net - featured curriculum content

AP 03/06

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

Curriculum Resource Kit Background

■ CRK + WRK + ProjectOZ

□ Initiatives to encourage and support teaching Windows in OS curricula

□ Based on current Microsoft technology

□ Freely accessible Windows Research Kernel (WRK)

◊ Stripped down Windows Server 2003

◊ Architected by Dave Probert

□ ProjectOZ: environment for OS experiments based on native NT APIs

◊ Authored by Dave Probert

■ Windows as a vehicle for explaining OS concepts

□ Started out as an add-on to a traditional Unix-based OS curriculum; has evolved to a self-contained OS course

□ Requires the incorporation of a fair amount of Unix know how

◊ i.e.; scheduler, file system, inter-process communication, networking

□ Explains the rationales for certain Windows design decisions

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

CRK Course Layout (1)

■ 1. Overview of Operating Systems – (Core) OS1

■ 2. Operating System Principles – (Core) OS2

■ 3. Concurrency – (Core) OS3

■ 4. Scheduling and Dispatch – (Core) OS4

■ 5. Memory Management – (Core) OS5

■ 6. Device Management - The Input/Output System – (Elective) OS6

■ 7. Protection and Security – (Elective) OS7

■ 8. File System – (Elective) OS8

■ 9. Real-time and Embedded Systems – (Elective) OS9

■ 10. Fault-tolerance – (Elective) OS10

■ 11. System Performance Evaluation and Troubleshooting– (Elective) OS11

■ 12. Scripting – (Elective) OS12

■ A. Windows Networking – (Supplementary)

■ B. Comparing the Linux and Windows Kernels (Supplementary)

■ C. Windows – Unix Interoperability (Supplementary)

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

CRK Course Layout (2)

■ 1. Overview of Operating Systems – (Core) OS1

■ 2. Operating System Principles – (Core) OS2

□ 2.1. Structuring of the Windows Operating System (Core)

□ 2.2. Windows Core System Mechanisms (Core)

□ 2.3. Windows on Windows - OS Personalities (Core)

□ 2.4. The Windows API – Naming Conventions, Types (Core)

□ 2.5. OS Principles labs, quizzes, and assignments

■ Further information:

□ Polze and Probert. Teaching Operating Systems – The Windows Case. SIGCSE ’06

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

Windows Research Kernel (WRK)

□ Stripped down Windows Server 2003 sources

◊ Only kernel itself, no drivers, GUI, user-mode components

◊ Missing components: HAL, power management, plug-and-play

□ Released in 2006

□ Freely available to academic institutions

□ Encouraged by license:

◊ Modification

◊ Publication (of excerpts)

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

WRK Assignments

■ Debugging/Instrumenting the WRK

□ Boot phase

□ Process creation

□ Single-step debugging the WRK in a virtual machine

■ Creating a new system call

□ Hide/Show a specified process from the system

□ Memorize hidden processes

□ Implement a system service DLL

■ Implementing a synchronization primitive

□ Implement reader/writer locks inside the WRK

□ Run provided test program

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

Memory Management Project Assignment

□ Design a working set data structure

◊ Manage resident pages

◊ Discuss lookup overhead efficiency

◊ Discuss space complexity

□ Implement page replacement strategy

◊ FIFO

◊ Student-defined alternative

□ Run provided test workload

◊ Document page faults

◊ Experience Belady‘s anomaly

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

13

WRK/CRK Experiences & Observations

■ Virtualization technology

□ Simplified testing

□ Simplified distributing of exercises and demos

□ Available on multiple platforms

■ Steep learning curve

□ Configuration overhead

□ Code complexity

■ Increased usage of personal laptops

□ Support of multiple platforms

□ Variation in operating systems and compute power

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

14

Agenda

■ Teaching Operating System at HPI

■ SkyLab

□ Idea and Concepts

□ Architecture

□ Requirements

■ Conclusions

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

15

Why Skylab?

Courtesy: NASA

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

16

Skylab

SP-401

Skylab, Classroom in SpaceEdited by Lee B. Summerlin

Scientific and Technical Information Office

National Aeronautics and Space Administration

Washington, D.C. 1977

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

17

SkyLab in the Cloud

■ Virtualize laboratory environment

□ No physical machines in university

□ Set of virtual machines in the cloud

■ Migrate exercises and demos into the cloud

□ VM template(s) per exercise

□ Instantiation on demand on lab VMs

■ Facilitate experiments through remote display session

□ Experiments in Web browser

□ Support of various platforms and compute power

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

18

Concepts

■ Roles

□ Faculty

□ Tutor

□ Student

■ Laboratory

□ Number of Workspaces

□ Associated with Faculty

□ Participated by Students

■ Experiment

□ Virtual machine template (demos, experiments)

□ Temporarily assigned to a course

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

19

WRK Repository

Virtualized LaboratoryVirtualized Laboratory

SkyLab Architecture

Persistent Storage

SkyLab Manager

Virtualized Laboratory

Workspace Workspace Workspace

...

Cloud Infrastructure

VM VMVMVM VMVM

VM VMVM

Exp

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

20

SkyLab ― Laboratory Allocation Workflow

SkyLab Manager

Virtualized Laboratory

Workspace Workspace Workspace

...

Faculty

Allocate Lab

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

21

WRK Repository

Virtualized LaboratoryVirtualized Laboratory

SkyLab ―Experiment Instantiation Workflow

Persistent Storage

SkyLab Manager

Virtualized Laboratory

Workspace Workspace Workspace

...

Cloud Infrastructure

VM VMVMVM VMVM

VM VMVM

Exp

Exp.Exp. Exp.

VM

VM

VM

VM

VM

VM

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

22

WRK Repository

Virtualized LaboratoryVirtualized Laboratory

SkyLab ―Running an Experiment

Persistent Storage

SkyLab Manager

Virtualized Laboratory

Workspace Workspace Workspace

...

Cloud Infrastructure

VMVM

VM

Exp

Exp.Exp. Exp.

VM

VM

VM

VM

VM

VM

RDP Session

RDP Dispatch

Persist Updates

Pulling Results

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

24

Which Cloud Platform?

Requirements

■ Arbitrary VM images

■ Remote desktop session

■ Virtual serial port

■ Differencing virtual hard drives

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

25

Agenda

■ Teaching Operating System at HPI

■ SkyLab

■ Conclusions

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

26

Conclusions

■ WRK great for teaching operating systems

■ Personal laptops as alternative to faculty provided CS laboratories

■ SkyLab: virtual laboratory in the cloud for OS projects

□ Set of experiments

□ Execution through Web interface

□ Run experiments wherever you want

■ SkyLab: challenging requirements for Cloud vendors

Cloud Futures 2010 | Alexander Schmidt | April 8, 2010

27

Thank You for Your Attention!

■ WRK great for teaching operating systems

■ Personal laptops as alternative to faculty provided CS laboratories

■ SkyLab: virtual laboratory in the cloud for OS projects

□ Set of experiments

□ Execution through Web interface

□ Run experiments wherever you want

■ SkyLab: demanding requirements

Contact:

[email protected]://www.dcl.hpi.uni-potsdam.de/research/WRK