Operativsystem Lektion 1 1 Lärare jem@cs.umu.se, B449 Lektioner etc Set Norman set@cs.umu.se, NAdv105 Labbar, labhandledning 2 Schema Notera att det finns ändringar i schemat!! Under perioden 1-8 mars kommer lektionerna att flyttas. Exakt hur kommer att läggas upp på sajten så fort jag vet det själv. 3 Kurssajten Finns på adressen www.cs.umu.se/kurser/tdbc28/vt04/ 4
Lektioner Följer standardupplägget. Kan inte allt - men fråga gärna!! 5 Labbar Kursen innehåller 3 st labbar De kräver en hel del arbete så det är viktigt att ni börjar jobba med dem tidigt. Labbarna är antagligen den del av kursen där ni kommer att lära er mest!!! Så ta tillvara tillfället 6 Kursens mål Grundintroduktion till vad ett operation är och de centrala begrepp som finns där. Efter kursen ska ni kunna hänga med i en diskution om olika operativsystem och förstå vad som sägs. 7 Operativsystem 8
Vart befinner sig OSet? Spel Databaser Webläsare Kompilatorer Text editorer Kommandotolk Operativ system Maskinspråk Microarchitecture Hårdvaran 9 Vad är ett OS? Det är inte fönstersystemet Det är inte ls, cd, etc Det är de innersta delarna av datorns programvara Syfte Att tillåta flera program att köra samtidigt Att fungera som en abstraktionslager mot hårdvaran Att hantera olika resurser 10 Vart hittar man OS? Persondatorer Handdatorer Stordatorer Inbyggda/inbäddade system (embedded) En radarsystem En stereo En symaskin En tryckpress 11 Hur exekverar kärnan? User mode Supervisor mode 12
Historik 13 En gång gör länge sedan Steg 1 lödkolv och virpenna Steg 2 Ladda in program Steg 3 Ladda in flera program efter varann automatiskt!!! Steg 4 En ide för att utnyttja datorn bättre 14 Lagra flera program i internminnet och snabbt byta mellan dem!!!! 15 Tidsdelningssystem CTSS Multics Introducerade många nya idéer Flera hundra användare på en dator motsvarande en 386:a!! This is not as crazy as it sounds, since people knew how to write small, efficient programs in those days, a skill that has subsequently been lost. 16
PDP serien populär I sverige fanns Nord-100 på många universitet UNIX System V BSD Posix Minix Linux VMS 17 Persondatorer Tre alternativ Köpa (svindyrt) Acer, Apple, MicroBee, Spectrum, PET Köpa en byggsats (dyrt) Nascom Bygga eget från kretsar (dyrt) Operativsystem CP/M Skriva eget 18 PC IBM beslöt sig för att det fanns en marknad för person datorer och byggde sin Personal Computer Fick pga IBM en stor genomslagskraft Flera operativsystem gick att använda men MS-DOS följde med Mac OS Windows 19 Persondatorer Mac System 1.x => 9.x OS X Windows Windows 1.x => ME Windows NT, 2000, XP Linux 20
Olika typer av OS Mainframe Server Multiprocessor Persondatorer RTOS Inbyggda system SmartCard etc 21 Hårdvaran CPU Minne IO Bussar CPU Register Cache Intern minne Disk Band USB Bus DMA Minne 22 Koncept Processer och trådar Address space Process table Context switch Shell Interprocess communication (IPC) Resurshantering Deadlocks Minneshantering IO 23 Filsystem Kataloger Sökvägar Root Specialfiler Pipe Distribuerade filsystem Säkerhet Säkerhet i allmänhet 24
Systemanrop Tillbaka till den kod som anropade Gör en trap ("anrop" till kärnan) Lägg in "anropskoden" för read i rätt register Fixa stackpekaren Anropa read Pusha file descriptor Pusha adressen till bufferten Pusha hur många bytes som ska läsas Vad ska köras? Läs 25 Struktur på OSet Monolitiska - The Big Mess Ingen struktur I praktiken så finns finns det lite struktur 26 Lagrad modell Varje lager har en väldefinerad uppgift Virtuella maskiner Inte som Java Här motsvarar en virtuell maskin verkligen en maskin, dvs all hårdvara precis som den ser ut. Man kan då köra olika operativsystem på samma dator. Exokernels Varje process får ett subset av resurserna Client - server Micro-kernel User mode processes för t.ex. filhantering, minne. 27 Lästips Läs kapitel 1 som ger en bra introduktion till OS 28