about prof van renesse
play

About#Prof.#van#Renesse Research(Interests:( - PowerPoint PPT Presentation

About#Prof.#van#Renesse Research(Interests:( scalability,#fault#tolerance,# CS#4410/4411 security,#OSs,#and#more Operating#Systems ! Has#worked#on#Amoeba#and#Plan#9#operating# systems Professor'Bracy &'Van'Renesse !


  1. About#Prof.#van#Renesse • Research(Interests:( scalability,#fault#tolerance,# CS#4410/4411 security,#OSs,#and#more Operating#Systems ! Has#worked#on#Amoeba#and#Plan#9#operating# systems Professor'Bracy &'Van'Renesse ! Best#known#research#artifacts:#Chain#Replication,# Fall'2015 Scuttlebutt#(used#in#Cassandra,# etc.) Cornell'University • Other(Interests:( Playing#music#(trad.#jazz),# swing#dancing,#unicycling The'slides'are'the'product'of'many'rounds'of'teaching'CS'4410' by'Professors'Sirer,'Bracy,'George,'and'Van'Renesse. CS#4410:#Introduction 2 About#Prof.#Bracy About#You… • Professional#Interests:# • Demographics,# etc. ! Teaching: intro#to#programming,#digital#design,# computer#architecture,#system#software,# ! Research: computer#architecture,#instruction#fusion,# hardware#support#for#thread#synchronization • New#to#Cornell ! Previously#@#Washington#University#in#St.#Louis ! Prior#to#that:#research#@#Intel#Labs ! Also#teaching#3410#this#semester#(and#will#be#teaching# both#again#next#semester) • Other(Interests: at#the#moment#…unpacking CS#4410:#Introduction 3 CS#4410:#Introduction 4

  2. What’s#This#Course#About? What#Kind#of#a#Course#Is#This? • Ostensibly: operating#systems • Constructive,#top]down ! architecting#complex#software ! Start#from#first#principles#and#re] ! identifying#needs#and#priorities derive#the#design#of#every# ! separating#concerns component# of#a#complex#system ! implementing#artifacts#with#desired#properties • Deconstructive,#bottom]up ! Dissect#existing#systems,#learn#what# • Actually: software#design#principles tradeoffs#they#make,#what#patterns# ! OSes illustrate#important#organizational#principles# they#use and#design#patterns • Warning: lots#of#new#jargon,# ! Could#also#teach,#say,#building#browsers,#as#an# excuse#for#teaching#these#principles terms,#etc.#to#be#learned CS#4410:#Introduction 5 CS#4410:#Introduction 6 Course#Objective What#is#an#Operating#System? • Establish#a#foundation#for#building#complex# • An#OS#provides#a#virtual#execution# programs environment#on#top#of#hardware#that#is#more# convenient#than#the#raw#hardware#interface ! Architect#systems ! Identify#desirable#properties ! “All#of#the#code#you#did#not#write” ! Build#large#systems ! Simpler Applications ! Debug#complex#systems ! More#reliable ! More#secure Operating • Understand#all#layers#of#the# software(stack( ! More#portable System ! More#efficient between#hardware#and#applications Hardware CS#4410:#Introduction 7 CS#4410:#Introduction 8

  3. OS:#a#collection#of# abstractions Abstractions#are# designed • Processes ( abstract4CPUs ) • Not#a#consequence#of#logical#reasoning • Files ( abstract4disks ) • A#good#abstraction • Network#Endpoints ( abstract4NICs ) ! is#portable#and#hides#implementation#details ! has#an#intuitive#and#easy]to]use# interface • Windows ( abstract4screens ) ! can#be#instantiated#many#times • … ! is#efficient#and#reasonably#easy#to#implement you#can#think#of#these#as#objects#with#state#and# methods CS#4410:#Introduction 9 CS#4410:#Introduction 10 What'do'OS'abstractions'do? What#Resources? • Manage#physical#resources • Physical#Resources • Provide#virtual#resources ! CPU,#memory,#disks,#screen,#keyboard,#mouse,# networks,#I/O#devices,#… • Implement#mechanisms#and#enforce#policies# to#arbitrate#access#to#resources • Virtual#Resources • Mediate#the#interaction#of#mutually# ! Files,#directories,#sockets,# windows,#names,#… distrusting#applications • Provide#an#extensible,#general]purpose# platform#for#a#variety#of#applications CS#4410:#Introduction 11 CS#4410:#Introduction 12

  4. Issues#in#OS#Design More#Issues • Structure: how#is#an#OS#organized? • Reliability: how#do#we#deal#with#failures? • Concurrency: how#are#parallel#activities# • Portability:#how#to#write#once,#run#anywhere? created#and#controlled? • Extensibility: how#do#we#add#new#features? • Sharing: how#are#resources#shared? • Communication: how#do#we#exchange# • Naming: how#are#resources#named#by#users? information? • Protection: how#are#distrusting#parties# • Scale: what#happens#as#demands#increase? protected#from#each#other? • Persistence: how#do#we#make#information# • Security: how#to#authenticate,#authorize#and# outlast#the#processes#that#created#it? ensure#privacy? • Accounting: who#pays#the#bills#and#how#do#we# • Performance: how#to#make#fast? control#resource#usage? CS#4410:#Introduction 13 CS#4410:#Introduction 14 Why#Learn#Operating#Systems? Fact Cons: • There#has#never#been#as#exciting#a#time#to# • OS#jobs#<#1%#of#jobs#out#there work#on#systems#hardware#and#software#as# now!!! Pros: • Course#concepts#apply#to#building#correct,#high] performance#applications#(clients#of#OSes),#and# building#reusable#platforms • World#is#increasingly#dependent#on#computer# • Course#goes#far#beyond#OS#design:#computer# systems organization,#concurrency,#synchronization,# ! Connected,# networked,#interlinked input/output,#filesystems,#networking,#routing,# distributed#systems#and#so#forth • Don’t#be#a#poser • People#don’t#know#how#to#build#r obust( systems The4ayes4have4it! CS#4410:#Introduction 15 CS#4410:#Introduction 16

  5. BSOD BSOD CS#4410:#Introduction 17 CS#4410:#Introduction 18 BSOD Therac]25 A'safetyLcritical'system'with'software'interlocks • Beam'controlled'entirely'through'a'custom'OS • CS#4410:#Introduction 19 CS#4410:#Introduction 20

  6. Therac]25 Therac]25#Outcome • Old#system#used#a#hardware#interlock • Beam#killed#one#person#directly,#burned# others,#and#may#have#given#inadequate# ! Lever#could#either#be#in#“zap”#or#“x]ray”#position • New#system#was#computer#controlled treatment#to#cancer#patients • A#synchronization#failure#was#triggered#when# • Problem#was# very difficult#to#diagnose;#initial# competent#nurses#used#the#back#arrow#to# fix#involved#removal#of#the#back#arrow#key# change#the#data#on#the#screen#“too#quickly” from#the#keyboard • People#died#because#a#programmer#could#not# write#correct#code#for#a#concurrent#system CS#4410:#Introduction 21 CS#4410:#Introduction 22 Denver#airport USS#Yorktown########### • The#most#modern,#most#expensive#(>>$2B)# airport#in#recent#history • Modern#guided#missile#cruiser#off#of#Norfolk,# • Highly#automated#luggage#handling#system# VA#in#1998 was#supposed#to#deliver#your#luggage#to#you# • Crew#member#entered#0#for#a#data#value at#arrival • Cascade#of#failures#led#to#a#failure#of#the# • Lack#of#persistence#caused#luggage#carts#to# propulsion#system “forget”#their#contents,#sprinkling#the#luggage# • Yorktown#was#dead#in#the#water#for#a#couple# on#the#runway of#hours CS#4410:#Introduction 23 CS#4410:#Introduction 24

  7. (Concurrency)#Bugs#in#Databases Failures#in#the#Cloud • April#21]25,#2011:#Amazon’s#EBS#down#due#to# operator#error#and#various# Mandelbugs • July#2,#2009#(6#hours):#Google’s#GFS#Mandelbug causes#outage#of#App#Engine “Mandelbugs account4for4between4154and4804 percent4of4all4software4faults4detected4after4 release” Mostly#“independent” Vandiver 2007 Michael#Grottke,#Kishor S.#Trivedi:#Fighting#Bugs:#Remove,#Retry,# Replicate,#and#Rejuvenate.#IEEE#Computer#40(2):#107]109#(2007) Many#machines# " many#faults CS#4410:#Introduction 25 CS#4410:#Introduction 26 Bitcoin#Banks Other#Faulty#Systems • There#is#a#new#crop#of#systems#for#holding# • FAA#air#traffic#control#system data#known#as#NoSQL databases • IRS#data#management#system • Folks#@#Cornell#and#in#OS#community# • IBM#“Microkernel” cautioned#about#the#errors#people#were# • Pentagon#data#security committing#with#NoSQL#systems • Many#others,#too#numerous#to#list • Simplest#attack—simultaneous#withdrawals— ! Google#“software#bug”#on#the#News#tab… actually#works!#Attackers#stole#millions#of# dollars#from#Bitcoin banks ! One#bank#lost#a#million#and#folded ! Another#lost#$500K,#took#losses CS#4410:#Introduction 27 CS#4410:#Introduction 28

  8. Summary Philosophy • We#lack#the#necessary#technologies#and#know] • Not#your#grandparents’#OS#course how#to#build#robust#computer#systems • We#believe#that#the#following#topics#are# critical#for#every#software#engineer • There#is#huge#demand#for#people#who#deeply# ! Building#concurrent#systems ! Architecting#networked# components understand#and#can#build#robust#systems ! Building#transactional#systems • Not#widely#shared,#the#course#is#unique CS#4410:#Introduction 29 CS#4410:#Introduction 30 Logistics Communication • Lectures • Web#Page:# ! Tuesday,# Thursday# 2:55]4:10pm,# Ives(305 http://www.cs.cornell.edu/Courses/cs4410 ! 4411:#Friday#3:35]4:25pm# (~every#2#wks) ,#Gates#G01 ! Office#hours,#assignments,# lectures,#and#other# • Instructors supplemental#materials#will#be#on#the#web#site ! Prof.#Bracy,#bracy at#cs.cornell.edu • Piazza:# http://piazza.com/cornell/fall2015/cs4410 ! Prof.#van#Renesse,# robbert.vanrenesse at# ! 95%#of#communication cornell.edu ! Public(posts: for#everyone ! Office#Hours ! Private(posts: for#instructor/TA#eyes#only • Prof.#van#Renesse:#??? • Prof.#Bracy:#Wed/Fri#9]10am • CMS • TAs#– a#small#army#at#your#disposal ! Dissemination#of#code,#grades CS#4410:#Introduction 31 CS#4410:#Introduction 32

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend