Janos A Java-oriented Active Network Operating System Jay Lepreau, Patrick Tullmann, Kristin Wright Wilson Hsieh, Godmar Back, many more... University.

Slides:



Advertisements
Similar presentations
Computer-System Structures Er.Harsimran Singh
Advertisements

On the Design of a Web Browser: Lessons learned from Operating Systems Kapil Singh and Wenke Lee Georgia Institute of Technology Web 2.0 Security and Privacy.
NetServ Dynamic in-network service deployment Henning Schulzrinne (Columbia University) Srinivasan Seetharaman (Georgia Tech) Volker Hilt (Bell Labs)
Confidential 1 Phoenix Security Architecture and DevID July 2005 Karen Zelenko Phoenix Technologies.
When Applications can Roam Freely OSGi Service Platform R4 Peter Kriens Technical Director OSGi
Presented by Vaibhav Rastogi. Current browsers try to separate host system from Web Websites evolved into web applications Lot of private data on the.
Interactive lesson about operating system
Northwestern University 2007 Winter – EECS 443 Advanced Operating Systems Exokernel: An Operating System Architecture for Application-Level Resource Management.
Operating System Structures
Department of Computer Science and Engineering University of Washington Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
CSE331: Introduction to Networks and Security Lecture 28 Fall 2002.
OS2-1 Chapter 2 Computer System Structures. OS2-2 Outlines Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection.
The Alta Operating System Patrick Tullmann Masters Thesis Defense University of Utah.
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
Department of Computer ScienceJanos Project Janos A Java-oriented Active Network Operating System Jay Lepreau, Patrick Tullmann, Kristin Wright Wilson.
Edward Tsai – CS 239 – Spring 2003 Strong Security for Active Networks CS 239 – Network Security Edward Tsai Tuesday, May 13, 2003.
1 Hybrid Resource Control for Active Extensions Parveen Patel Jay Lepreau University of Utah.
Dawson R. Engler, M. Frans Kaashoek, and James O'Tool Jr.
Janos Project: FY 2001 Jay Lepreau Flux Research Group University of Utah June 5, 2001.
1 Building with Assurance CSSE 490 Computer Security Mark Ardis, Rose-Hulman Institute May 10, 2004.
CMSC 414 Computer and Network Security Lecture 9 Jonathan Katz.
Figure 1.1 Interaction between applications and the operating system.
1 Bees: A Secure, Resource-Controlled, Java-Based Execution Environment Tim Stack Eric Eide Jay Lepreau University of Utah April 5, 2003.
New Results in Fluke/Flask Jay Lepreau Flux Group University of Utah July 13, 1998.
1 Janos Patrick Tullmann Flux Research Group University of Utah.
Exokernel: An Operating System Architecture for Application-Level Resource Management Dawson R. Engler, M. Frans Kaashoek, and James O’Toole Jr. M.I.T.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Chapter 2: Operating-System Structures Modified from the text book.
School of ComputingJanos Project Processes in KaffeOS: Isolation, Resource Management, and Sharing in Java Godmar Back Wilson HsiehJay Lepreau School of.
ADVANCED LINUX SECURITY. Abstract : Using mandatory access control greatly increases the security of an operating system. SELinux, which is an implementation.
KaffeOS: Controlling Resources In A Multi-Process Java Virtual Machine Godmar Back.
Case study 2 Android – Mobile OS.
UNIT-V The MVC architecture and Struts Framework.
Stack Management Each process/thread has two stacks  Kernel stack  User stack Stack pointer changes when exiting/entering the kernel Q: Why is this necessary?
1 IEEE LAN/ MAN Banf 1998 Open Java-Based Intelligent Agent Architecture for Adaptive Networking Devices Tal Lavian, Bay Architecture Lab
Eric Keller, Evan Green Princeton University PRESTO /22/08 Virtualizing the Data Plane Through Source Code Merging.
ICOM Noack Operating Systems - Administrivia Prontuario - Please time-share and ask questions Info is in my homepage amadeus/~noack/ Make bookmark.
1 Liquid Software Larry Peterson Princeton University John Hartman University of Arizona
Silberschatz, Galvin, and Gagne  Applied Operating System Concepts Module 2: Computer-System Structures Computer System Operation I/O Structure.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Introduction 1-1 Introduction to Virtual Machines From “Virtual Machines” Smith and Nair Chapter 1.
February 24, 1998Salt Lake Java SIG Processes In Java Patrick Tullmann Flux Research Group University of Utah.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Secure Active Network Prototypes Sandra Murphy TIS Labs at Network Associates March 16,1999.
Nested Java Processes: OS Structure for Mobile Code Patrick Tullmann & Jay Lepreau September 10, 1998 Flux Project University of Utah
Operating Systems Structure what is the organizational principle?
1 Choices “Our object-oriented system architecture embodies the notion of customizing operating systems to tailor them to support particular hardware configuration.
Operating Systems Security
Operating Systems Engineering Based on MIT (2012, lec3) Recitation 2: OS Organization.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Java EE Patterns Dan Bugariu.  What is Java EE ?  What is a Pattern ?
1.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Lecture 2: OS Structures (Chapter 2.7)
Introduction Why are virtual machines interesting?
Chapter 2: Computer-System Structures(Hardware) or Architecture or Organization Computer System Operation I/O Structure Storage Structure Storage Hierarchy.
Copyright 2002 Stephen F. Bush1 Three Points to Remember Active Networks Are Cool Active Networks Are Cool Active Networks Can Be At Least As Secure As.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Overview of today’s lecture Major components of an operating system Structure and internal architecture of an operating system Monolithic Vs Micro-kernels.
Introduction to Operating Systems Concepts
Modularity Most useful abstractions an OS wants to offer can’t be directly realized by hardware Modularity is one technique the OS uses to provide better.
Operating System Structures
Chapter 1: Introduction
Operating System Structure
Chapter 2: System Structures
Chapter 3: Operating-System Structures
Module 2: Computer-System Structures
Outline Chapter 2 (cont) OS Design OS structure
Introduction to Virtual Machines
System calls….. C-program->POSIX call
Introduction to Virtual Machines
Module 2: Computer-System Structures
Integrating Active Networking and Commercial-Grade Routing Platforms
Presentation transcript:

Janos A Java-oriented Active Network Operating System Jay Lepreau, Patrick Tullmann, Kristin Wright Wilson Hsieh, Godmar Back, many more... University of Utah Flux Research Group April 16, 1999

What is Janos?  Single-address space OS, with some but not much hardware memory protection  Contains a JVM  Primary target application code is Java byte code  Can also run Posix-like apps

Our Primary Hard Problem Availability: Resource Management and Control

Other Hard Problems  Information security  Performance  Tech transfer

Approach  Custom JVM providing inter-AA (inter-applet, inter- servlet) isolation within the same JVM  Add a policy-free strong security architecture that NSA, SCC, and we developed in another OS.  Underneath is a highly-modular “embedded” OS  Produce separately useful OS, security, and Java VM components.

Claim: Broad Relevance Our custom JVM, and probably the accompanying security architecture implementation, can run wherever JVM’s run today.

Resource Control  Leverage experience providing resource control in more traditional OS’es.  Apply user/kernel mode boundary to a type-safe environment (Java)  Obvious resources: Cycles / Bandwidth / Memory  Other resources: Caching store, persistent store, specialized hardware, specialized data  Admission control, prevent denial of service, fair sharing, perhaps latency constraints, early accounting

Genesis  Leverage lessons, designs, and sometimes code from earlier projects –Fluke OS »Microkernel-based OS with an extensible process model –Security architecture added to Fluke »Policy-flexible fine-grain mechanisms, revocation –The OSKit »Reusable low-level components and a framework (COM, APIs)  Other: –Optimization of Java for systems code »predictability, speed –Network testbed (possibly)

Janos Structure The OSKit++ Hardware Custom Java VM ANTS-5 EE Active Protocols

Janos Structure The OSKit++ Hardware Custom Java VM ANTS-5 EE Active Protocols

Janos Structure The OSKit++ Hardware Custom Java VM ANTS-5 EE Active Protocols Sec. Policy Engine

Janos Structure The OSKit++ Hardware Custom Java VM ANETD ANTS-5 EE Active Protocols Non-Java EE Other Java EE Sec. Policy Engine

Non-Java EE The OSKit++ Hardware Other Java EE Custom Java VM ANETD ANTS-5 EE Active Protocols Sec. Policy Engine UNIX

Possible Curves in the Road  Neither prototype JVM OS model is the right one  Hardware protection may be included  Flask security architecture may not map well to Java and Janos  Challenges in GC and cpu interactions.  More surprises undoubtedly await…

Status Done:  Prototype of JVM with strong OS process model  Prototype of JVM with resource controls for memory,cycles, GC  Partially modified ANTS to allow resource control To Do:  Eval and unify aspects of prototypes  New OSKit modules –Security components –Modular and optimized network access –Crypto, secure boot, …  Checks in enforcers  Performance, performance  9/99: Team3, support PANDA and Ninja