Programmeringsteknisk översiktskurs för yrkeshögskoleprogram Föreläsning 8 Våren 2005
Innehåll Vad är operativsystem, hur fungerar de? Självtest kapitel 1-10 Läsanvisningar: 1-10 + dessa OH-bilder F7 Lena Kallin Westin, kallin@cs.umu.se 2005 2
Operativsystem Ett operativsystem (OS) är det som kontrollerar alla aktiviteter som sker i en dator Microsoft Windows XP, Mac OS, Linux, UNIX Operativsystemet interagerar både med datorn och de olika applikationerna Hanterar processorns resurser Hanterar RAM-minnet Håller koll på lagringsresurserna Ser till att input och output fungerar som det ska Etablerar grunderna för användarytan F7 Lena Kallin Westin, kallin@cs.umu.se 2005 3
Vad är/gör en processor? En microprocessor är en integrerad krets som är utformad för att bearbeta instruktioner, dvs en CPU på ett chip oftast det största chipet på moderbordet CPU:n/mikroprocessorn/processorn har två delar ALU (arithmetic logic unit) Utför aritmetiska och logiska operationer Använder register för att lagra data som bearbetas Kontrollenheten styr och koordinerar själva bearbetningen F7 Lena Kallin Westin, kallin@cs.umu.se 2005 4
Hur jämför man processorer? Finns flera faktorer att bedöma klockhastighet ordstorlek (word size) cachestorlek instruktionsmängd bearbetningstekniker Benchmarks speciella tester som undersöker en processors prestanda som helhet. Finns ofta på webben eller datortidningar F7 Lena Kallin Westin, kallin@cs.umu.se 2005 5
Klockhastighet Ett mått på hur snabbt datorn utför sina instruktioner Den minsta tidsenheten är en cykel Inte samma sak som antalet instruktioner Vissa instruktioner tar flera cykler, flera instruktioner kan göras i en cykel Mäts i MHz (miljoner cykler per sekund) eller GHz (miljarder cykler per sekund) F7 Lena Kallin Westin, kallin@cs.umu.se 2005 6
Ordstorlek (Word size) Antalet bitar som en processor kan bearbeta på samma gång. Beror storleken på registren som finns i ALU och kapaciteten på ledningarna som går dit. En 32-bits processor är en processor med ordstorlek 32 och kan bearbeta/lagra 32 bitar på en gång/i ett register. Ju större ordstorlek ju mer data kan bearbetas per tidscykel. 32- och 64-bits processorer vanliga idag F7 Lena Kallin Westin, kallin@cs.umu.se 2005 7
Cachestorlek Kallas också RAM-cache eller cacheminne Speciellt minne/lagringsplats som gör att en processor kan komma åt data från minnet snabbare än från andra minnesutrymmen. I teorin går det snabbare med större cacheminne I praktiken är cacheminnet så tätt knutet till processorn att du kan inte välja ett större minne utan att samtidigt byta processor. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 8
Instruktionsmängd Antalet instruktioner en processor kan förstå RISC-processor (Reduced instruction set computer) Vanlig i Macintoshdatorer CISC-processor (Complex instruction set computer) fler instruktioner och tar ofta mer än en cykel att genomföra. Vanlig i PC-datorer En RISC-processor utför instruktioner snabbare än en CISC men måste göra ett större antal instruktioner för att lösa samma problem. Vissa processorer har instruktioner för att snabba upp grafikhantering 3DNow!, MMX och SSE-2 (Mjukvara krävs!) F7 Lena Kallin Westin, kallin@cs.umu.se 2005 9
Seriell bearbetning Bearbetningstekniker Hanterar en instruktion åt gången. Den måste vara helt klar innan nästa påbörjas. Pipelining Kan påbörja en ny instruktion innan den gamla är helt slutförd. Parallell bearbetning Flera instruktioner utförs samtidigt. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 10
Arbetsminnet Random Access Memory: Vad är RAM? Ett lagringsutrymme som innehåller data just innan och efter det bearbetas av processorn Innehåller också instruktioner från operativsystemet som styr de mest grundläggande funktionerna i datorn Mängden RAM-minne påverkar ofta priset på en dator RAM minnet mäts i megabytes (MB) eller gigabytes (GB) Dagens datorer har mellan 128 MB och 2GB Man kan köpa till extra RAM-minne och lägga till senare En dator kan också använda en del av hårddiskaen för att simulera RAM. Kallas virtual memory och är inte lika snabbt som RAM F7 Lena Kallin Westin, kallin@cs.umu.se 2005 11
Det finns olika slags RAM Variationer i hastighet, teknologi och konfiguration Hastigheten mäts i nanosekunder (miljarddelar av en sekund). Lägre siffra är bättre (mäter tiden mellan uppdateringar) Den kan också uttryckas som MHz (miljoner cykler per sekund) Högre siffra är bättre (snabbare uppdateringshastighet) Om man ska jämföra så är 83MHz = 12ns, 100 MHz = 10ns och 115 MHz = 8 ns SDRAM (Synchronous Dynamic RAM) snabbt och ganska billigt RDRAM (Rambus Dynamic RAM) snabbare och dyrare än SDRAM vanlig när man har processorer snabbare än 1GHz F7 Lena Kallin Westin, kallin@cs.umu.se 2005 12
Read-Only Memory: Vad skiljer ROM från RAM? ROM (read-only memory) innehåller datorns uppstartsrutiner kallas ROM BIOS (Basic Input Output System) talar om hur datorn kan nå hårdddisken, hitta operativsystemet och ladda in det i RAM ROM kan inte förändras och behåller sina inställningar även då strömmen slås av Enda sättet att ändra instruktionerna i en ROM är att byta ut chipet F7 Lena Kallin Westin, kallin@cs.umu.se 2005 13
CMOS-minnet En dator behöver ett minne mittemellan RAM och ROM. Något som kan förändras men inte töms när strömmen slås av. Håller reda på storleken på hårddisken och RAM-storleken CMOS-minnet är ett chip som kräver väldigt lite ström för att fungera Ofta via ett batteri på moderkortet F7 Lena Kallin Westin, kallin@cs.umu.se 2005 14
OS hanterar processorns resurser Ett OS styr också processorn lite, fast på en högre nivå. Många aktiviteter = många processer som behöver CPUkraft. Kommandon från program, input från mus och tangentbord, information till skärm, skrivare, websidor skickar information OS hjälper processorn att fördela arbetet så att alla processer får utnyttja CPUn. Alla ska få lika mycket kraft och CPUn ska inte vara sysslolös Idealt ser det ut som att datorn gör flera saker samtidigt... F7 Lena Kallin Westin, kallin@cs.umu.se 2005 15
OS hanterar RAM-minnet När processorn jobbar lagras information i RAMminnet När flera applikationer körs samtidigt måste OS:et se till att alla får var sitt område i RAM-minnet inget data läcker mellan olika områden Om detta händer kan data förstöras, och ett program krascha Ofta får man felmeddelanden som General Protection Fault Datorn kan återhämta sig från ett fel om man stänger programmet som läcker. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 16
OS håller koll på lagringsresurserna OS beter sig som en arkivarie Kommer ihåg namnet och platsen för alla dina filer. Håller koll på tomma utrymmen där nytt data kan lagras. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 17
OS ser till att input och output fungerar som det ska Alla enheter som är kopplade till en dator ses som en resurs. OS håller reda på dessa och använder drivrutiner för att kunna prata med dem på ett enkelt sätt Varnar om något gått fel, tex slut på papper Ser till att informationen till och från enheterna lagras i buffrar så att inget tappas bort. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 18
OS etablerar grunderna för användarytan Användaryta (user interface) definieras som den kombination av hårdvara och mjukvara som hjälper människa och dator att kommunicera Ett OS kan antingen ha en grafisk användaryta - Graphical user interface (GUI) Xerox, Apple (Macintosh) 1984, PC-datorer ca 1992 vara kommandoradsbaserad - Commandline user interface F7 Lena Kallin Westin, kallin@cs.umu.se 2005 19
Vart lagras operativsystemet? På handdatorer/speldatorer ryms hela OS i ROM På de flesta datorer ryms endast ett litet program som kallas bootstrap-program i ROM. Ger instruktioner om vilka program som ska lagras in i RAM när datorn startar upp (bootar) Minneshantering och filaccess laddas alltid in, andra delar laddas när de behövs Den del av OS som alltid är inladdat kallas kärnan (kernel). F7 Lena Kallin Westin, kallin@cs.umu.se 2005 20
Interagerar man direkt med OS? Ja, ibland. Oftast via nyttoprogrammen (utilities) när man startar upp program hanterar filer (skapar, flyttar, döper om) använder hjälpen förändrar den grafiska användarytan konfigurerar utrustning (hårdvara och externa enheter) F7 Lena Kallin Westin, kallin@cs.umu.se 2005 21
Finns flera olika typer av OS: Single-user operating system förutsätter att en enda person använder datorn handdatorer och en del persondatorer, DOS Multi-user operating system en dator kan användas av flera personer samtidigt IBMs OS/390 Network operating system/server operating system fleranvändarsystem där man dessutom kan dela på resurser som skrivare, data, program UNIX, LINUX, Solaris Dessa är både server och mulit-user OS! Multitasking operating system kan hantera två eller flera processer samtidigt, de flesta OS är detta! Desktop operating system utvecklad för en enskild datoranvändare men har också nätverkshantering ofta två typer av OS Home och Professional där Home har mindre nätverkshanteringsverktyg Windows och MacOS F7 Lena Kallin Westin, kallin@cs.umu.se 2005 22
De vanligaste OS:en DOS är det första OS som använts av många personer DOS (Disk Operating System) utvecklades 1982 av Microsoft och var kärnan i Windows 3.1, 95, 98 och ME Mac OS är det första OS:et med grafisk användaryta Utvecklades tidigare (ca 1984) än Windows och har samma uppbyggnad med fönster, ikoner, menyer och muspekare Windows utvecklades från DOS och blev populärt ca 1992 80% av persondatorerna kör ett Windows OS (data från 2004) UNIX/LINUX UNIX utvecklades redan 1969 medan Linux utvecklades 1991 LINUX är gratis och distribueras under en speciell licens General Public License (GPL). Alla får vara med och skriva på OS-koden Red Hat Linux, Caldera OpenLinux, Debian GNU/Linux PalmOS och Windows MobileOS är exempel på OS till handdatorer F7 Lena Kallin Westin, kallin@cs.umu.se 2005 23
Hur pluggar man inför tentan? Granska kursplanen! Vilka mål finns det med kursen? Målet med kursen är att den studerande skall förvärva grundläggande förståelse för/om hur datorer är uppbyggda och fungerar. hur man skriver enklare program och insikter i vad som händer när programmet kompileras och exekveras. vad ett operativsystem är och vilka olika slags operativsystem som är vanliga grunderna i datorkommunikation, hur information skickas mellan datorer och förståelse för vissa säkerhetsaspekter som exempelvis virus. Dessutom innehåller kursen en översikt över olika programspråk och familjer av programspråk samt en introduktion till hur databaser fungerar. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 24
Hur pluggar man inför tentan? Man vara rätt säker på att de flesta målen kommer beröras i någon form i tentamen. Kunskap kan mätas/värderas på olika sätt ytkunskap/djupkunskap Blooms taxonomi Min filosofi: Om man läser kursboken, går på alla föreläsningar, gör alla övningar och laborationer ska det ge mycket goda förutsättningar att klara tentamen För att få ett högre betyg/högre totalsumma på tentamen krävs djupkunskap och inte enbart ytkunskap. F7 Lena Kallin Westin, kallin@cs.umu.se 2005 25
FAKTA Blooms taxonomi minnas, memorera, känna igen och återkalla information Typ av frågor: När..? Var..? Hur..? Vem..? Vad..? Beskriv...Ange formel... FÖRSTÅELSE tolka, översätta från ett medium till ett annat, beskriva med egna ord eller organisera och välja fakta och ideér Typ av frågor: Återge... Återberätta... Härled formeln... TILLÄMPNING problemlösning, tillämpa information för att producera ett resultat samt använda fakta, regler och principer Typ av frågor: Hur är... ett exempel på...? Hur förhåller sig... till...? Varför är... betecknande/signifikant? F7 Lena Kallin Westin, kallin@cs.umu.se 2005 26
ANALYS Blooms taxonomi dela upp någonting för att visa hur det är sammansatt, finna underliggande kommunikationsstruktur, identifiera motiv,separera en helhet i sina beståndsdelar Typ av frågor: Klassificera... efter/i enlighet med... Vad är kännetecken/särdrag hos...? Rita ett diagram över... Gör en översikt över... Vad finns det för likhet/skillnad mellan... och...? Vilka bevis kan du hitta för...? SYNTES skapa en ny, unik produkt/nytt, unikt objekt i ord eller rent konkret, kombinera ideér till en ny enhet Typ av frågor: Vilka slutsatser kan du dra av...? Vad kan du förutsäga utifrån...? Vilka ideér kan du tillägga till...? Hur skulle du skapa/formge en ny...? Vad skulle hända om du kombinerade...? Vilka lösningar föreslår du för...? VÄRDERING fatta värderande beslut om frågeställningar, lösa motsättningar, motsatta uppfattningar, utveckla uppfattningar, bedömningar eller beslut Typ av frågor: Håller du med om...? Vad tycker/tänker /tror du om...? Vad är den viktigaste...? Rangordna följande...? Vad skulle du besluta om...? Vilka kriteria skulle du använda för att bedöma/uppskatta...? F7 Lena Kallin Westin, kallin@cs.umu.se 2005 27