Welco me
Bart’s Operating System Structure B.Visscher Aug 2001
Introduction Design Goals What is BOSS Hardware Dependency Flow Model Implementation resources BOSS Perceptron application Conclusion Questions
Design Goals Easy to understand and program Transparent Hardware / Software Fast Reliable Safe Free
Traditional v.s. BOSS Hardware Operating System Applications BOSS Applications Dependency Flow Model
Hardware Resource 2 Resource 1 Resource n Resource n-1 Resource 3 Network Resources Linked Together in Network
Resource Resource i Memory Processor Processors Network Environment / Side Effects
Dependency Flow Model Dependency Flow Networks Programming Owner structure Abstraction Process management Resource Structure Scheduling Information Security
Dependency Flow Network Sockets Process Ports Storage Channels Communication etc. + Repeat Programming
Owner structure Master Owner socket Owner socket DFN DFNDFN DFNDFN DFNDFN DFNDFN Owner holds DFN status Suspend Active Terminate Abstraction Process management
Resource structure Socket : request for a process Resource : provider of processes Resource Socket Scheduling Information Security
Socket Part of DFN Owner structure Resource structure Represents Resource process (atomic) DFN (combined) Local Memory Input Memory Output Memory Process
Abstraction Black Box = Owner Behavioral description Implicit White Box = DFN Dependency description Explicit Is the sum greater than 0? Hold > + 0 Subroutine Function True / False Numbers
LinkLoader Resource Converts passive dependency data into working processes (DFN) Manages Black box processes Communicates variables Introduces constants Suspends / Activates / Terminates processes Manages Namespaces Primary namespace Secondary namespace Global namespace
Complete Structure: BOSS Channels Resource 0 LinkLoader Ports Sockets LinkLoader processes Resource N Ports Sockets Extension processes Processor N.KProcessor N.1 Extension Resource 1 Ports Sockets Extension processes Processor 1.PProcessor 1.1 Extension Network
Implemented processes Naming of resource processes. (in 0,in 1 …in n )(out 0,out 1 …out n ) Resource: signal, boolean, byte, integer, float, double Example: boolean.and(boolean,boolean)(boolean) Example: integer.+(integer,integer)(integer) Resource: flow Processes: repeat, hold, sync, switch, merge, last, after All processes for data types : Resource: text user interface, TUI
Background TUI Resource Screen divided into multiple layers Background color Layer N Layer 2 Layer 1 Screen Layer 0 Layer Holder Demo
Perceptron Running Y’ = (W 0 + W 1 * X 1 + W 2 * X 2 ) > 0 Training (Determining W) Y = True, Y’ = False -> (Y-Y’)=1 Y = False, Y’ = True -> (Y-Y’)=-1 W i new = W i old + (Y-Y’)*X i Y, Y’ : boolean {True, False} X, W : integer {-n…-2,-1,0,1,2…n} *++*> Hold 0 W0W0 W1W1 W2W2 X1X1 X2X2 Y’
Perceptron Demos Random Value range: [–127,127] W 0, W 1 W 2 : 1 Training: True Y: True, False, Random TrueFalse Random Perceptron Random X1X1 X2X2 W0W0 W1W1 W2W2 Training Y W0W0 W1W1 W2W2 Y’ W0W0 W1W1 W2W2 False True Hold True / False Random Hold True
Conclusion Easy to understand and program / Free DFN Owner structure / Abstraction Information in resources Transparent Hardware / Software Atomic processes Combined processes Fast Parallel execution of processes Reliable / Safe Resource structure Autonomy of resources
Questions