Download Software Interface - Computer Systems - Lecture Slides and more Slides Computer Science in PDF only on Docsity! CSE 410 Computer Systems Docsity.com Main Topics • The hardware / software interface – the elements of a computer system – what parts are visible to the software – instruction set architecture (ISA) – what happens inside the CPU O• perating systems – services an OS performs for an application design of various OS components– – OS mechanisms and policies 6 Docsity.com Academic Integrity • Policy on the course web. Read it! • Do your own work – always explain any unconventional action on your part • I trust you completely • I have no sympathy for trust violations – nor should you • Honest work is the most important feature of a university. It shows respect for your colleagues and yourself. 9 Docsity.com What’s a Computer? • For our purposes (for now)… ima n memory processor processor/memory bus I/O b us network interface hard disk video / camera optical drive serial ports 10 Docsity.com Architecture and Organization • Architecture (the boxes) – defines elements and interfaces between layers – ISA (Instruction Set Architecture): instructions, registers addressing programmer’s view of the, – hardware • Organization / Implementation (inside the boxes) – components and connections – how instructions are implemented in hardware many different organizations can implement a single– architecture – One organization can support multiple architectures(!) 11 Docsity.com Architecture Families • IBM 360, 370, … (the first computer family) • PowerPC 601, 603, … • DEC VAX, PDP-11 • Intel x86: 286, 386, 486, Pentium, P4, Core… • Intel IA64 Itanium S• MIP R2000, R3000, R4000, R5000, ... • SUN Sparc • ARM family 14 Docsity.com MIPS • In this class, we’ll use the MIPS instruction set architecture (ISA) to illustrate t i bl l d hi i ticoncep s n assem y anguage an mac ne organ za on — Of course, the concepts are not MIPS-specific — MIPS is just convenient because it is real, yet simple (unlike x86) • The MIPS ISA is still used in many places today Primarily in embedded . systems, like: — Various routers from Cisco — Game machines like the Nintendo 64 and Sony Playstation 2 15 Docsity.com Roadmap • To start: learn to program at the architecture / instruction set / memory level – Information representation (bits, bytes, …) – MIPS assembly language programming • Then look at some of the core implementation issues Pipelining– – Memory hierarchy (caches, virtual memory) • Hardware from the programmer’s perspective: – How does my code run? – Why is it fast or slow? 16 Docsity.com