Digital Logic - Wellesley College · 2018-10-24 · Digital Logic Microarchitecture Instruction Set...
Transcript of Digital Logic - Wellesley College · 2018-10-24 · Digital Logic Microarchitecture Instruction Set...
CS240incontext
Devices(transistors,etc.)
Solid-StatePhysics
Hardware
H
DigitalLogic
Microarchitecture
InstructionSetArchitecture
OperatingSystem
ProgrammingLanguage
Compiler/Interpreter
Program,Application,Algorithm
Softw
are
HowCom
putersW
ork1
Security+ReliabilityTrickiestexploits&errors
involvemultiplelayers, evenhardware!
PerformanceMemory:clever,imperfectabstraction.
Tinycodechanges,hugeimpact.
RepresentationNorepresentationwithouttaxation.
Representationshavecosts.
AbstractionDonotstarteveryprojectwithtransistors.Abstractionisbeautifulandempowering,
butrealabstractionshaveleaksandwrinkles.
Thesethingsmattermoreeveryday.
TranslationBetweenlayersofabstraction.
Structuredcomputation.
BigIdeasinCS,Systems,andbeyond2
Ariane 5Rocket,1996Explodedduetocastof64-bitfloating-pointnumberto16-bitsignednumber.Overflow.
1998MarsClimateOrbiterDisintegratedduetomismatchedunitsinLockheed-Martin/NASAsoftwarecomponents.
http://www.safetyresearch.net/blog/articles/toyota-unintended-acceleration-and-big-bowl-%E2%80%9Cspaghetti%E2%80%9D-code
Toyota"UnintendedAccelerationEvents"Oklahomajury:"SpaghettiCode"="recklessdisregard"
>10,000globalvariables81,514violationsofMISRA-Ccodingrules
Expect3minorbugs+1majorbugper30violations
Task/processmonitoringfailedtomonitortasks/processesMemorycorruption
(Wait,itwaswritteninC?!?!?!)
"...aModel787airplane thathasbeenpoweredcontinuouslyfor248dayscanloseallalternatingcurrent(AC)electricalpowerduetothegeneratorcontrolunits(GCUs)simultaneouslygoingintofailsafemode...Thisconditioniscausedbyasoftwarecounter internaltotheGCUsthatwilloverflow after248days ofcontinuouspower.WeareissuingthisADtopreventlossofallACelectricalpower,whichcouldresultinlossofcontroloftheairplane."--FAA,April2015
https://xkcd.com/571/
Howcouldweimprovecomputersystems?Security
EfficiencySpeedSpaceProgrammerCost,availability
Whatasimplephonecandoforpeople:https://opendatakit.org/about/deployments/
Energy,materialsA fewoftheimpactsweusuallydon'tsee:http://www.nytimes.com/2015/06/07/magazine/making-and-unmaking-the-digital-world.html?_r=0
Reliability
…
10
(image:CCBY-SA,©WilliamHook) (image:CCBY-NC-SA,©jntolva)
(image:CCBY-SA,©KentaroIEMOTO@Tokyo)
SkillsforThinkingandProgramming
FewofyouwillbuildnewHW,OS,compiler,but…1. Effectiveprogrammersunderstandtheirtoolsandsystems.2. Theskillsandideasyoulearnhereapplyeverywhere.
Reasonaboutcomputationalmodels,translation.
Debugforcorrectnessandperformance(withtoolstohelp).
Assesscostsandlimitsofrepresentations.
"Figureitout"viadocumentation,experiments,criticalthinking.
3
CS240:Computer Systems/Organization
CS3??:OperatingSystems
CS251:ProgrammingLanguages
CS301:CompilersandRuntimeSystems
CS342:ComputerSecurity
CS3??:Computer Architecture
CS249:ScientificandParallelComputing
Research
CS242:Computer Networks
Foundations
CS349:Distributed Computing
CS304:Databases withWebInterfaces
4