Datorteknik ERIK LARSSON

Relevanta dokument
Datorteknik ERIK LARSSON

Datorteknik ERIK LARSSON

Program. Datorteknik. Semantiskt gap. C - Inledning. Abstraktionsnivå: Högnivåspråk. Assemblyspråk. Maskinspråk

Översikt. Datorarkitekturer med operativsystem. Inledning. Inledning

Fö 7: Operativsystem. Vad är ett operativsystem? Målsättning med operativsystem. Styr operativsystemet datorn?

Datorarkitekturer med operativsystem ERIK LARSSON

TDDIU81. Processer och trådar. Andreas Dahlberg, Jonathan Doherty, Tony Magnusson, Patrik Ottosson, Rasmus Siljedahl

Operativsystem. Informationsteknologi sommarkurs 5p, Agenda. Slideset 7. Exempel på operativsystem. Operativsystem

Minnets komponenter. Digitala System: Datorteknik. Programexekvering. Programexekvering. Enhet för utdata. Enhet för indata CPU.

Minnet från processorns sida Datorteknik

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018

DVG A06. Operativsystem, mm. Karlstads universitet Datavetenskap. DVG A06 Johan Eklund. Datavetenskap, Karlstads universitet 1

Dagens OS. Unix, Linux och Windows. Unix. Unix. En översikt av dagens OS Titt på hur de gör. Många varianter Mycket gemensamt. En del som skiljer

Operativsystem DVG A06. Definition. Varför operativsystem? - Vad är ett operativsystem?

Definition DVG A06. Varför operativsystem? Operativsystem. Översikt. - Vad är ett operativsystem?

Fö 8: Operativsystem II. Minneshantering. Minneshantering (1) Minneshantering (2) Minneshantering och Virtuelltminne.

Tentamen den 12 januari 2017 Datorarkitektur med operativsystem, EDT621

Fö 5+6 TSEA81. Real-time kernel + Real-time OS

Digitala System: Datorteknik ERIK LARSSON

Olika OS. Unix, Linux och Windows. Unix. Unix. En översikt av ett par OS. Titt på hur de gör. Många varianter. Mycket gemensamt. En del som skiljer

En processor kan ha en klockfrekvens på flera GHz. Det går alltså a9 exekvera en instruk=on väldigt for, givet a9 instruk=onen finns i processorn.

Outline. Datorsystemtekni. Kravspecifikation. Kravspecifikation (forts.)

Datorteknik ERIK LARSSON

Processer och trådar. Rasmus Cronstrand Per Jonsson Ante Wall Fabian Åberg

Operative system. LRU-algoritm (2 p) Svar: 7 fel. c) Optimal algoritm (2 p) Svar: 6 fel

Operativsystem. Innehåll. Operativsystemets funktion. Vad är ett OS? Vart hittar men ett OS? OS hanterar processorns resurser

Operativsystem (ID2200/06) XX XX:00-XX:00

Tentamen den 18 mars svar Datorteknik, EIT070

Operativsystem - input/output, skydd, virtualisering

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

Lösningsförslag till tentamen i IS1350 Operativsystem

Tentamen den 14 januari 2016 Datorarkitektur med operativsystem, EDT621

Svar till tentamen den 16 december 2013 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

Digitala System: Datorteknik ERIK LARSSON

Operativsystem ID hp, ID2200 6hp

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

Datorsystem. Laboration 3: Operativsystem Senast uppdaterad: 14 oktober 2012 Version 1.3. Student: Underskrift: Underskrift: Datum:

Operativsystem. IS hp. Jim Dowling Docent, PhD [Bilder av Robert Rönngren]

Närliggande allokering Datorteknik

Institutionen för elektro- och informationsteknologi, LTH

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH.

Operativsystem Lektion 1. Lärare. Schema. Kurssajten Finns på adressen. Jan Erik Moström. Set Norman

Grundläggande datavetenskap, 4p

Mål. Datorteknik. Repetition av avbrott. Innehåll. Mätning och styrning. Datorer för mätning och styrning. timer. Datorsystem A/D. Analog insignal D/A

Datorsystem 5. På denna föreläsning skall vi prata om Operativsystem Exempel på tenta (typ fjolårets)

Operativsystem - Processer I

Datorteknik ERIK LARSSON

0.1. INTRODUKTION Instruktionens opcode decodas till en språknivå som är förstålig för ALUn.

Tentamen i ID2206, ID2200 samt IS1350 Operativsystem

Flera processer. Minneshantering. Trashing kan uppstå ändå. Ersätta globalt

Operativsystem Introduktion

Schemaläggningsmetodik för multi-core inom Windows 7 OS Vad är scheduling och hur schemalägger Windows OS sina processer?

Reservföreläsningen inställd

Introduktion till hårdvara, mjukvara och operativsystem

Operativsystem ID2200/06 omtentamen :00-18:00

Parallellism i CDC 7600, pipelinens ursprung

Vad är viktigast? Sammanfattning. Processer och trådar. Processer och trådar. Flerprocessorsystem. Schemaläggning. Interprocesskommunikation.

Filsystem - Inode. Datorteknik. Minnets komponenter. Programexekvering. Enhet för indata. Enhet för utdata CPU. Primärminne.

Lärare. Operativsystem. Handledning. Kurssajt. Schema. Lektioner. Jan Erik Moström

Operativsystem. Hierarkin för hårdvara läses nerifrån

7,5 högskolepoäng. Operativsystem och Systemarkitektur. IT-Tekniker och Systemarkitekt-programmet

7,5 högskolepoäng. Operativsystem och Systemarkitektur. IT-Tekniker och Systemarkitekt-programmet

Schemaläggning Unix. Minneshantering etc. Linux. Schemaläggning av trådar (kernel threads) Detaljer. Operativsystem - Lektion 7

Datorteknik ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON

Operativsystem - Processkedulering

Datorteknik ERIK LARSSON

Hjälpmedel: Inga hjälpmedel förutom penna, suddgummi och glatt humör.

DIG IN TO Dator och nätverksteknik

F6: I/O hantering. Typer av I/O i ett datorsystem. Protokoll för synkronisering. Drivrutiner. Memory mapped Port mapped. Polling Timed Interrupt DMA

Program som ska exekveras ligger i primärminnet. Processorn hämtar instruk7on för instruk7on. Varje instruk7on, som är e= antal 1:or och 0:or, tolkas

Exempeltentamen Datorteknik, EIT070,

7,5 högskolepoäng. Operativsystem och Systemarkitektur. IT-Tekniker och Systemarkitekt-programmet

Pipelining i Intel Pentium II

Tentamen den 17 mars 2016 Datorteknik, EIT070

Datorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade)

Datorarkitekturer med operativsystem ERIK LARSSON

Datorsystem. Tentamen

Minneshantering segmentering och virtuellminne. Föreläsning 3

Datorarkitekturer med operativsystem ERIK LARSSON

Föreläsningsanteckningar 3. Mikroprogrammering II

Systembeskrivning. Systemskiss. Moduler.

Digitala System: Datorteknik ERIK LARSSON

Datorarkitekturer med operativsystem ERIK LARSSON

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Program Datorteknik. Kontrollenhet. Exekvering av en instruktion. Abstraktionsnivå: Högnivåspråk. Assemblyspråk. Maskinspråk.

Datorteknik ERIK LARSSON

Pipelining i Intel 80486

F8: Undantagshantering

Realtidsstöd i Minix. En laborationrapport. Oktober 2012

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Tentamen den 14 januari 2015 Datorarkitekturer med operativsystem, EDT621, 7,5 poäng

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

Operativsystem och Systemarkitektur. 7,5 högskolepoäng. IT-Tekniker och Systemarkitekt-programmet. Namn: Personnummer: (Ifylles av student)

Datorsystemteknik DAVA14 Föreläsning 10

IT för personligt arbete F5

Maskinorienterad programmering

Operativsystem ID1200/06 (ID2200/06 6hp) Tentamen :00-18:00

Transkript:

Datorteknik ERIK LARSSON

Inledning Ken Thompson och Dennis M. Ritchie utvecklade C Turingpriset( Nobelpris i datavetenskap ), 1983 Alan Turing (1912-1954) För deras utveckling av generell OS teori och speciellt för deras implementation av operativsystemet UNIX

Dator Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction

Inledning Ett operativsystem (Operating System - OS) är ett program som exekveras på datorn Mål för OS är: Hantera hårdvaruresurser i datorsystemet Erhålla tjänster för exekvering av applikationsprogram (t ex Facebook) I stort sett alla system har någon from av OS från mobiltelefoner, datorspel, till superdatorer.

Unix

Linux Linux Linus Benedict Torvalds, född 1969, Finland Ville lära sig om OS, skrev ett OS Windows MS-DOS (Microsoft Disk Operating System) (~1980) Windows 1.0, Windows 95, 98, 2000, XP, Vista, 7, 8 Bill Gates Paul Allen

Vad gör ett OS? Processhantering (Process management) Avbrott (Interrupts) Minneshantering (Memory management) Filsystem (File system) Drivrutiner (Device drivers) Nätverk (Networking) Säkerhet (Security) In och utmatning (I/O)

Program Fetch Execute Fetch Execute Fetch Execute Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction

Program Byt program Fetch Execute Fetch Execute Fetch Execute Fetch Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction

Program Byt program Byt program Fetch Execute Fetch Execute Fetch Execute Fetch 0.1 s 0.1 s 0.1 s Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction

Vad hinner man på 0.1 sekund? Antag processor med 1 GHz klockfrekvens 1 GHz = 1 000 000 000 Hz (svängningar per sekund) På 1 sekund hinner man 1 000 000 000 klockcykler På 0.1 sekund hinner man 100 000 000 klockcykler Om varje instruktion tar 10 klockcykler, hinner man: 10 000 000 instruktioner

Hur går det till att byta program? Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Interrupt enable? Yes! No! Interrupt handling

Hur går det till att byta program? 1 0.1 s 3 4 Primärminne Main Data/instruktioner Kontroll Central processing unit (CPU) OS 5 Fetch instruction Execute instruction 2 Kontrollera och hantera avbrott (ändra PC)

T I D Kontextbyte (context switch) Process A Process B Save state of A into PCBA Load state of B from PCBB A running Context switch B running Save state of B into PCBB Load state of A from PCBA Context switch A running

Processkontrollblock Process Control Block (PCB, eller Task Controlling Block eller Task Struct) är en datastruktur som innehåller den information som behövs för att kunna hantera en given process. Ett aktivt program har ett processkontrollblock Typiskt innehåll: Identifikation av process (a process identifier, or PID) Register värden, programräknare, stackpekare Adressrymd, prioritet, process information, t ex när användes processen senast, I/O som används, öppna filer

Processhantering

Process modell New preemption admitted Ready Running I/O, event completion dispatch I/O, wait exit Waiting Terminated

Process modell New preemption admitted Ready Running I/O, event completion dispatch I/O, wait exit Waiting Terminated

Process modell New preemption admitted Ready Running I/O, event completion dispatch I/O, wait exit Waiting Terminated

Process modell New preemption admitted Ready Running I/O, event completion dispatch I/O, wait exit Waiting Terminated

Process modell New preemption admitted Ready Running I/O, event completion dispatch I/O, wait exit Waiting Terminated

Process modell New preemption admitted Ready Running I/O, event completion dispatch I/O, wait exit Waiting Terminated

Schemaläggare Långtidsschemaläggaren (Long-term scheduler) Bestämmer vilka jobb som ska läggas i readykön (queue) Mellantidsschemaläggaren (Mid-term scheduler) Bestämmer vilka jobb som ska vara i primärminnet (main) och vilka som ska vara i sekundärminnet Korttidsschemaläggaren (Short-term scheduler) Bestämmer vilket jobb som ska exekvera Algoritmer: First In First Out, Shortest Job First, Priority based scheduling, Round-robin scheduling, Multilevel Queue scheduling

Schemaläggare MS-DOS non multi-task system; hence, no scheduler Windows 3.1 - non-preemptive scheduler (did not interrupt programs) Windows NT, Linux, MacOS - multilevel feedback queue

Hantera hårdvaruresurser? Ringar (Rings) är hårdvarustöd för att ge skydd Typiskt med två moder user-mode and supervisor-mode Applikationsprogram gör systemanrop för att läsa på hårddisk (ger OS kontroll) MS-DOS endast supervisor-mode Windows, Linux supervisor och user mode

Systemanrop Exempel: Byte av program (process) Avbrott genererat av klocka (time slice) Avbrottsrutin (OS) Huvudprogram (main) Huvudprogram (main) Exempel C instruktionen: printf Tid Mjukvaruavbrott genererat av printf (systemanrop) Avbrottsrutin (OS) Huvudprogram (main) Huvudprogram (main) Tid

Polling/avbrott Polling kontinuerlig avläsning av ingång, t ex tangent Processorn slösar bort kraft på att kolla ingång Avbrott ingång genererar avbrott Processorn gör annat fram tills avbrott inträffar Avbrott Avbrottsrutin Huvudprogram (main) Huvudprogram (main) Tid

Minneshantering Vid multiprogrammering kommer flera olika program finnas i primärminnet. Kostar för mycket tid att flytta program till hårddisk vid kontext byte. T ex, två program ska exekveras samtidigt : Primärminne 0101 0101 0011 0101 0101 0011

Minneshantering Relocation Flytta program och placera dem på andra ställen i minnet. Kunna hantera minnesreferenser och adresser vid omflyttningar. Minneskydd (Memory protection) Processer ska inte kunna komma åt minnesarea som tilldelats andra processer utan lov Delning (Sharing) Ibland ska processer kunna dela information och därför komma åt samma delar av minnet

Filsystem Hur hålla ordning på alla bitar? Vanligtvis kan man inte adressera individuella bitar (för stor overhead). Filer och bibliotek (Files and directories) Exampel: File Allocation Table (FAT), New Technology File System (NTFS) Mål: Kunna lagra stora filer, nå data snabbt (utnyttja hårddisk maximalt)

Filsystem - Inode Varje fil i Unix har en Inode Example: 12 pekare som pekar direkt på block med filens data (direct pointers) 1 indirekt pekare (en pekare till ett block av pekare) 1 dubbel indirekt pekare (en pekare som pekar på ett block av pekare som i sin tur pekar på ett block av pekare som perkar på filens data) 1 trippel indirekt pekare (som dubble indirekt pekare men med ytterligare en nivå)

Filsystem - Inode

Vad gör ett OS? Processhantering (Process management) Minneshantering (Memory management) Filsystem (File system) Drivrutiner (Device drivers) Nätverk (Networking) Säkerhet (Security) In och utmatning (I/O)