Operativsystemer - dopsys

Størrelse: px
Starte visningen fra side:

Download "Operativsystemer - dopsys"

Transkript

1 Operativsystemer - dopsys Erik Ernst eernst@cs.au.dk dopsys 1

2 Q/A Mange deltagere er nu på 2. år af datalogistudiet, med dcomnet 1 for år siden Er din baggrund anderledes? dopsys 2

3 Praktiske oplysninger dopsys 3

4 Forelæsninger Onsdag , Store Auditorium, IT-huset Fredag , Store Auditorium, IT-huset 4 timer pr. uge, evt. lidt mindre dopsys 4

5 Undervisningsmateriale Lubomir F. Bic og Alan C. Shaw Operating Systems Principles (OSP) 1. udgave, Pearson-Education, 2003 ISBN supplerende materiale som kan hentes via www-siderne. dopsys 5

6 Øvelser Alle øvelser foregår i Stibitz: Hold 1: mandag 10-14, Stibitz-113 Hold DAT1: fredag 8-12, Stibitz-113 Hold DAT2: onsdag 10-14, Stibitz-113 Hold DAT3: mandag 16-20, Stibitz-123 Holdbytte under hensyntagen til holdstørrelser. Styres af instruktorerne. dopsys 6

7 Ugesedler og opgaver Ugeseddel for uge x offentliggøres på hjemmesiden ca. midt i uge x-1. Tavle- og diskussionsopgaver Ugeopgave Ugeopgaver er obligatoriske og skal laves i grupper. 2-3 personers grupper dannes ved de første øvelser. dopsys 7

8 Eksamen Kræver at samtlige ugeopgaver er godkendt. Eksamen er mundtlig, uden forberedelsestid og varer 20 minutter/studerende (15 minutters til eksamination og 5 minutter til votering). Eksamenspensum inkluderer ugeopgaverne. Medbring en kopi af besvarelser af ugeopgaverne med instruktorens kommentarer og underskrift. Vær opmærksom på tilmelding! dopsys 8

9 spørgsmål om praktiske ting? dopsys 9

10 Q/A Hvilke operativsystemer har du brugt? dopsys 10

11 Operativsystemer Målbeskrivelse Målet med kurset er at give den studerende kendskab til opbygning og virkemåde af operativsystemer. Herunder hvorledes operativsystemer dels kan opfattes som en abstrakt maskine, der stiller en række primitiver og abstraktioner til rådighed via systemkald, dels som en administrator af maskinresurser, såsom CPU, lager og ydre enheder. dopsys 11

12 Organisation af en Computer.. kan opfattes som niveauer af virtuelle maskiner*: software hardware *A.S. Tanenbaum: Structured Computer Organisation. 5th edition, Prentice-Hall, dopsys 12

13 ISA-niveauet.. baseret på von Neumann maskinarkitektur: Program og data Centrale begreber: Registre (eks: PC, SP, PSW, ) Lagermodel (eks: 4 Gb byte-adresserbart lager) Instruktionssæt, instruktionsformat Datatyper og adresseringformer registre ydre enheder (I/O devices).. instruktioner udføres via fetch-decode-execute cycle implementeret i hardware dopsys 13

14 Arkitektur-varianter Shared-memory multiprocessor: Multicomputer: Distributed-memory multiprocessor: dopsys 14

15 Hardware vs. Applikations niveau Hardware/ISA niveau Maskininstruktioner: Læse/skrive registre og lagerceller Aritmetiske/logiske operationer Forgreninger og hop Lageret: Lineær sekvens af celler Eksternt lager (eks harddisk): Spor og blokke Læse og skrivehoveder Ydre enheder: Tilgang via ydreenhedsregistre Applikationsniveau Klasser oa. komplekse typer Kontrolstrukturer Moduler Procedurer/metoder Programmer/processer Filer og kataloger Uniformt højniveauinterface Compiler Assembler Linker OS software dopsys 15

16 Eksempel: udskrivning af fil #include <stdio.h> int main(int argc, char *argv[]) { int c; FILE *fp; fp = fopen(argv[1],"r"); c = getc(fp); while (c!= EOF) { putchar(c); c = getc(fp); } } exit(0); dopsys 16

17 Symbolsk maskinsprog.globl main.type main: pushl %ebp movl %esp, %ebp subl $24, %esp movl (%eax), %eax movl %eax, (%esp) call fopen movl %eax, -8(%ebp) movl -8(%ebp), %eax movl %eax, (%esp) call _IO_getc movl %eax, -4(%ebp).L2:.L4:.L3: cmpl $-1, -4(%ebp) jne.l4 jmp.l3 movl -4(%ebp), %eax movl %eax, (%esp) call putchar movl -8(%ebp), %eax movl %eax, (%esp) call _IO_getc movl %eax, -4(%ebp) jmp.l2 movl $0, (%esp) call exit dopsys 17

18 %>cat eks.txt dopsys %>strace -o syscalls.log example eks.txt execve("./example", ["example", "eks.txt"]= 0 uname({sys="linux", node="zebra03",...}) = 0 brk(0) = 0x804a000 fstat64(3,...) = 0 munmap(0xb7fdf000, ) = 0 brk(0) = 0x804a000 brk(0x806b000) = 0x806b000 open("eks.txt", O_RDONLY) = 3 fstat64(3,... = 0 mmap2(null, 8192,...) = 0xb7ffe000 read(3, "dopsys\n", 8192) = 7 fstat64(1,...) = 0 mmap2(null,...) = 0xb7ffd000 write(1, "dopsys\n", 7) = 7 read(3, "", 8192) = 0 munmap(0xb7ffd000, 4096) = 0 exit_group(0) =? dopsys 18

19 Q/A C-programmering er vigtigt i dette kursus, men forudsættes kendt eller læres ved selvstudium Hvilke forudsætninger har du i C? dopsys 19

20 OS som udvidet maskine..implementerer en samling primitiver kaldet systemkald:.. maskinnære detaljer er abstraheret væk. dopsys 20

21 OS som virtuel maskine.. hardware-resurser deles mellem programmer under afvikling: Virtuel maskine til rådighed for hvert program under afvikling. Understøtter deling af de fysiske maskin-resurser. dopsys 21

22 OS som resurse-administrator.. hardware-resurser skal udnyttes bedst muligt : Aspekter: Adgang til resurser. Parallelisme og udnyttelse. Fairness og fremdrift. Responstid og deadlines. dopsys 22

23 Hardware Interface Systemkald Virtualisering Resurse-administration Traps Interrupts CPU tilstande dopsys 23

24 .. intern hændelse i CPU en: Traps Eksplicit: supervisor call (SVC) Implicit: division med 0, lagertilgang, dopsys 24

25 Interrupts.. hardware signal fra ydre enheder: Process management: timeout interrupt og schedulering. Håndtering af ydre enheder: ved afslutning af I/O operationer. dopsys 25

26 CPU tilstande Behov for at kontrollere udførelsen af visse instruktioner: Tilgang til ydre enheder Tilgang til system-registre og -flag Systemtabeller CPU tilstande: Privileged / kernel / supervisory mode: Kan bruge det fulde instruktionssæt Non-privileged / user mode: Kan kun bruge et begrænset instruktionssæt Tilstandsskift sker i forbindelse med: Interrupts og traps Systemkald dopsys 26

27 Q/A Forklar hvad der kan gå galt hvis CPUtilstande afskaffes dopsys 27

28 Systemkald.. udføres i privilegeret CPU-tilstand: Typiske kategorier af systemkald: Styring af processer Brug af memory Tilgang til filer Input/output dopsys 28

29 Udvalgte POSIX systemkald dopsys 29

30 Vigtige emner i kurset Processer og koordinering: Begreber omkring processer og tråde. Kommunikation og synkronisering. Schedulering og deadlocks. Lageradministration (memory management): Virtuel hukommelse. Paging og segmentering. Filsystemer og input/ouput Filer og kataloger. Device-drivere og buffering. dopsys 30

31 Kursets organisering Forelæsningerne: Grundlæggende principper og begreber bag operativsystemer. Unix/Linux OS vil oftest blive brugt som eksempel. Øvelserne: Opgaver/diskussion i forlængelse af forelæsninger. C Programmering under Linux OS. Eksperimenter med Linux OS kernen via VMware. dopsys 31

32 Opsummering Perspektiv på operativsystemet: Udvidet maskine (systemkald). Virtual maskine for programmer. Resurse-administrator. Hardware interface: Traps og interrupts CPU tilstande: privilegeret/uprivilegeret tilstand User-mode vs. kernel-mode dopsys 32

Operativsystemer - dopsys. Erik Ernst

Operativsystemer - dopsys. Erik Ernst Operativsystemer - dopsys Erik Ernst eernst@cs.au.dk [Q/A] Mange deltagere er nu på 2. år af datalogistudiet eller cand.it., med dcomnet Er din baggrund anderledes? dopsys 2 Praktiske oplysninger http://cs.au.dk/dopsys

Læs mere

Operativsystemer - dopsys. Erik Ernst

Operativsystemer - dopsys. Erik Ernst Operativsystemer - dopsys Erik Ernst eernst@cs.au.dk [Q/A] Mange deltagere er nu på 2. år af datalogistudiet eller cand.it., med dcomnet En del har IT-erhvervserfaring Hvad med dig? dopsys 2 Praktiske

Læs mere

Maskinarkitektur. Lars Kristensen kris@daimi.au.dk. Christian Storm cstorm@daimi.au.dk. dmasark 1

Maskinarkitektur. Lars Kristensen kris@daimi.au.dk. Christian Storm cstorm@daimi.au.dk. dmasark 1 Maskinarkitektur Lars Kristensen kris@daimi.au.dk Christian Storm cstorm@daimi.au.dk dmasark 1 Praktiske oplysninger http://www.daimi.au.dk/dmasark dmasark 2 Forelæsninger Tirsdag 12.15-14.00, Store Aud,

Læs mere

Computere og Netværk (dcomnet)

Computere og Netværk (dcomnet) Computere og Netværk (dcomnet) http://www.cs.au.dk/dcomnet Jens Kargaard Madsen (jkm@iha.dk) Jens Bennedsen (jbb@iha.dk) dcomnet 1 Computere og netværk Beskrivelse At give den studerende kendskab til computere

Læs mere

Principper for Samtidighed og Styresystemer

Principper for Samtidighed og Styresystemer Principper for Samtidighed og Styresystemer kursusintroduktion og Introduktion til Styresystemer René Rydhof Hansen Februar 2008 PSS 08 (Forelsning 00) Kursus intro./intro. styresystemer Februar 2008 1

Læs mere

Processer og tråde. dopsys 1

Processer og tråde. dopsys 1 Processer og tråde dopsys 1 Motivation.. parallelle processer udnytter hardwaren bedre: Batch operativsystemer (50 erne) hhv. små systemer: Multiprogrammering og time-sharing (fra 60 erne og frem): dopsys

Læs mere

Implementation af Koordinering. dopsys 1

Implementation af Koordinering. dopsys 1 Implementation af Koordinering dopsys 1 Oversigt: Impl. af koordinering Begreber: Kritiske regioner Gensidig udelukkelse Synkroniseringsprimitiver: Binære semaforer / mutexes Tællesemaforer Betingelsesvariabler

Læs mere

Processer og koordinering

Processer og koordinering Processer og koordinering.. fortsat dopsys 1 Betingelsesvariabler (Condition variables).. hukommelsesløs variant af semaphorer: Atomare operationer: Signal bruges til at sende et signal. Wait bruges til

Læs mere

Systemkald i Unix/Linux

Systemkald i Unix/Linux Systemkald i Unix/Linux 1 Operativsystemet Fra proces: OS som værktøjskasse: tilgængelig via systemkald... OS som resurseadministrator, abstrakt/virtuel maskine: CPU: processer, tråde, schedulering I/O:

Læs mere

Styresystemer og tjenester

Styresystemer og tjenester Styresystemer og tjenester Indhold: 1. Introduktion til styresystemer 2. Processer og tråde 3. Synkroniseringsmetoder og IPC 4. Memory management 5. IO og devicedrivere 6. Analyse og design af embedded

Læs mere

Algorithms & Architectures II

Algorithms & Architectures II Algorithms & Architectures II Algorithms & Architectures II Jens Myrup Pedersen Hans Peter Schwefel Kursusholdere Dagens lektion Overordnet mål: At etablere en forståelse for hvordan hardware og hardwarearkitekturer

Læs mere

Styresystemer og tjenester

Styresystemer og tjenester Styresystemer og tjenester Indhold: 1. Introduktion til styresystemer. 2. Processer og tråde. 3. Synkroniseringsmetoder og InterProcesCommunikation. 4. Memory management. 5. I/O og devicedrivere. 6. Filsystemer.

Læs mere

Lærebog. Datalogi 1F Forår 2003. Hvad sker hvornår? Kursusbøger. Planen for idag. Hvad er et operativsystem

Lærebog. Datalogi 1F Forår 2003. Hvad sker hvornår? Kursusbøger. Planen for idag. Hvad er et operativsystem Lærebog Datalogi 1F Forår 2003 Operativsystemer og multiprogrammering Jørgen Sværke Hansen Silberschatz, Galvin, Gagne: Operating System Concepts, 6. udgave (med Windows XP opdatering) Har I 6. udgave

Læs mere

Pentium IA-32 Maskinarkitekturen

Pentium IA-32 Maskinarkitekturen Pentium IA-32 Maskinarkitekturen 1 Historie (1) Starter i 1970 med udviklingen af Intel 4004: 2 Historie (2) Baglæns kompatibilitet tilbage til 8086. 3 Intel 4004 and Pentium 4 http://www.intel.com/museum/archives/index.htm

Læs mere

Introduktion til Computerarkitektur. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Introduktion til Computerarkitektur. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Introduktion til Computerarkitektur Niels Olof Bouvin Institut for Datalogi Aarhus Universitet 1 Formål med dagens forelæsning Kurset læringsmål og emner folk og form eksamen Området maskinarkitektur 2

Læs mere

1 Operativsystemer oversigt

1 Operativsystemer oversigt 1 Operativsystemer oversigt Hvorfor OS virtualisering Abstraktion (processer, virtual hukommelse, filer) Kernel mode og user mode Systemkald (slide 31) Interrupts At levere en simplere model af computeren

Læs mere

Systemkald DM14. 1. Obligatoriske opgave. Antal sider: 7 inkl. 2 bilag Afleveret: d. 18/3-2004 Afleveret af: Jacob Christiansen, 130282-2111

Systemkald DM14. 1. Obligatoriske opgave. Antal sider: 7 inkl. 2 bilag Afleveret: d. 18/3-2004 Afleveret af: Jacob Christiansen, 130282-2111 DM14 1. Obligatoriske opgave Systemkald Antal sider: 7 inkl. 2 bilag Afleveret: d. 18/3-2004 Afleveret af: Jacob Christiansen, 130282-2111 Side 1 af 5 Intro: Formålet med opgaven at et lave en system kald

Læs mere

Eksamen dcomnet Q2/2010. Navn

Eksamen dcomnet Q2/2010. Navn 2582 Eksamen dcomnet Q2/2010 ID Navn Example I A32-prg1 Betragt følgende program skrevet i IA-32 symbolsk maskinsprog:.section.data x:.long 2 r:.long 27.section.text.globl _start _start: pushl x movl $0,%ebx

Læs mere

Lageradministration. dopsys

Lageradministration. dopsys Lageradministration 1 Lageret i maskinarkitekturen Beregningsenhed, lagre (registre, RAM, disk), ydre enheder 2 Abstraktion over typerne: et hierarki En maskine har flere forskellige lagre Operativsystemet

Læs mere

Sider og segmenter. dopsys 1

Sider og segmenter. dopsys 1 Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den

Læs mere

Input/Output: Disk & Clock. dopsys

Input/Output: Disk & Clock. dopsys Input/Output: Disk & Clock dopsys Magnetiske diske Spiller en vigtig rolle for mange typer computere Persistens, lagringstæthed, pris, hastighed, holdbarhed, fejltyper,...: OK! Afgørende for opstart (tungt

Læs mere

Principper for Samtidighed og Styresystemer

Principper for Samtidighed og Styresystemer Principper for Samtidighed og Styresystemer Kursusgang 12: Device drivere mt@cs.aau.dk Ph.D.-studerende Distribuerede og Indlejrede Systemer Institut for Datalogi Aalborg Universitet 17. maj 2010 Intro

Læs mere

Design Systemkald. User-mode Linux, The Linux kernel/325-2004

Design Systemkald. User-mode Linux, The Linux kernel/325-2004 Tracing tråden afbryder systemkaldet via ptrace Systemkaldet til værten ændres til getpid Processens stak manipuleres til at kalde kernen Kernen returnerer til processen Design Systemkald Design Startup/shutdown

Læs mere

Input/Output: Brugergrænseflader. dopsys

Input/Output: Brugergrænseflader. dopsys Input/Output: Brugergrænseflader dopsys Interaktion med bruger Visse devices lægger et fundamentalt sæt af spilleregler for vores brug af computere Generisk tilbagemelding, hvad laver den : Billedskærm

Læs mere

Schedulering. dopsys 1

Schedulering. dopsys 1 Schedulering dopsys 1 Re: Schedulering af processer.. administration af CPU-resursen. Ready List (RL) list af processer i ready_a tilstand. dopsys 2 Re: Schedulering af processer.. administration af CPU-resursen.

Læs mere

Schedulering. dopsys 1

Schedulering. dopsys 1 Schedulering dopsys 1 Re: Schedulering af processer.. administration af CPU-resursen. Ready List (RL) processer i ready_a, ready_s, eller running tilstand. dopsys 2 Re: Schedulering af processer.. administration

Læs mere

Koordinering. dopsys

Koordinering. dopsys Koordinering At indføre flertrådethed (1) når tråde tages i brug opstår typisk konflikter (et velkendt eksempel er errno ) 2 At indføre flertrådethed (2) en del konflikter kan afhjælpes med thread-local

Læs mere

Sider og segmenter. dopsys 1

Sider og segmenter. dopsys 1 Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den

Læs mere

Processer og koordinering. dopsys 1

Processer og koordinering. dopsys 1 Processer og koordinering dopsys 1 Motivation.. parallelle processer udnytter hardwaren bedre: Batch operativsystemer (50 erne): Multiprogrammering og time-sharing (60 erne): dopsys 2 Motivation.. parallelle

Læs mere

Interconnect. Front end interface

Interconnect. Front end interface Direct Remote Access to Devices (DREAD) Introduktion These Metode Baggrund Prototypen Resultater Konklusioner Kritik og fremtidigt arbejde 5. december 2000 Direct Remote Access to Devices slide 1 Klynger

Læs mere

VMware og dopsys-linux

VMware og dopsys-linux VMware og dopsys-linux 1 Virtuel maskine: OS Hardware Virtualisering: Resurser deles mellem processer: En virtuel maskine er til rådighed for hver proces. Virtualisering nu dybere: hver proces hvert OS.

Læs mere

Introduktion til Operativsystemer

Introduktion til Operativsystemer Introduktion til Operativsystemer 1 Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Oversigt Formål Hvad er en computer? Operativsystemets rolle Multitasking 2 Formål Introduktion af de basale

Læs mere

Eksamen dcomnet Q2/2012. Studiekortsnummer Navn

Eksamen dcomnet Q2/2012. Studiekortsnummer Navn Eksamen dcomnet Q2/2012 Studiekortsnummer Navn Vejledning Eksamen varer en time fra kl. 9 til kl. 10. Husk at skrive studienummer og navn tydeligt på forsiden, inden eksamen afsluttes. Der er ét rigtigt

Læs mere

Eksamen dcomnet 2012Q4. Årskortsnummer Navn

Eksamen dcomnet 2012Q4. Årskortsnummer Navn Eksamen dcomnet 2012Q4 Årskortsnummer Navn Vejledning Eksamen varer en time fra kl. 9 til kl. 10. Husk at skrive årskort og navn tydeligt på forsiden, inden eksamen afsluttes. Der er ét rigtigt svar per

Læs mere

Introduktion til C programmering

Introduktion til C programmering Introduktion til C programmering Rasmus Erik Voel Jensen Uge 17 voel@math.ku.dk Dagens forelæsning Formalia Indledende programmering, main, include, printf, variable, scanf, if-else, statements, eksempler

Læs mere

onsdag den 1. december 2010 Input/Output

onsdag den 1. december 2010 Input/Output Input/Output Ydre enheder & De Tre Synsvinkler OS skal administrere adgangen til ydre enheder således at:... der fås en abstraktion, der giver en fleksibel og uniform adgang til ydre enheder, men samtidig

Læs mere

Lageret i maskinarkitekturen. Beregningsenhed, lagre (registre, RAM, disk), ydre enheder

Lageret i maskinarkitekturen. Beregningsenhed, lagre (registre, RAM, disk), ydre enheder Lageradministration Lageret i maskinarkitekturen Beregningsenhed, lagre (registre, RAM, disk), ydre enheder Abstraktion over typerne: et hierarki En maskine har fl ere forskellige lagre Operativsystemet

Læs mere

Bits DM534. Rolf Fagerberg, 2012

Bits DM534. Rolf Fagerberg, 2012 Bits DM534 Rolf Fagerberg, 2012 Resume af sidst Overblik over kursus Introduktion. Tre pointer: Datalogi er menneskeskabt og dynamisk. Tidslinie over fremskridt mht. ideer og hardware. Algoritme er et

Læs mere

Computerarkitektur. - en introduktion til computerarkitektur med LINDA

Computerarkitektur. - en introduktion til computerarkitektur med LINDA Computerarkitektur - en introduktion til computerarkitektur med LINDA faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig

Læs mere

Vidar Jon Bauge. Notater til Teknik. Datamatikeruddannelsen efterår 2005 Side 1 af 54

Vidar Jon Bauge. Notater til Teknik. Datamatikeruddannelsen efterår 2005 Side 1 af 54 Notater til Teknik 2005 Datamatikeruddannelsen efterår 2005 Side 1 af 54 Indholdsfortegnelse Operativsystemer......4 Batch systemer......4 Time-sharing systemer......4 Computer Systemer......6 I/O struktur......6

Læs mere

Lageradministration Intel Pentium og Unix/Linux

Lageradministration Intel Pentium og Unix/Linux Lageradministration Intel Pentium og Unix/Linux 1 Lageradministration Multiprogrammering Håndtering af flere procesbilleder i lageret Virtuelt lager og swapping Gennemsigtig udnyttelse af disk som udvidelse

Læs mere

Mikroprogrammering. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Mikroprogrammering. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Mikroprogrammering Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Oversigt Mikroprogrammering: IJVM implementeret på Mic-1 Forbedringer af Mic-1 Metode til udvikling af symbolske maskinsprogsprogrammer

Læs mere

Lærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen

Lærevejledning. - en introduktion til maskinarkitektur. faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Lærevejledning - en introduktion til maskinarkitektur faraz@butt.dk Faraz Butt mads@danquah.dk Mads Danquah doktor@dyregod.dk Ulf Holm Nielsen Roskilde Universitetscenter Naturvidenskabelig Basisuddannelse

Læs mere

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal

Algoritmer og Datastrukturer 1. Gerth Stølting Brodal Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Design af Algoritmer Korrekt algoritme 1) algoritmen standser på alle input 2) Output er det rigtige på alle input Effektivitet 1) Optimer algoritmerne

Læs mere

Grundlæggende Algoritmer og Datastrukturer. Analyseværktøjer [CLRS, 1-3.1]

Grundlæggende Algoritmer og Datastrukturer. Analyseværktøjer [CLRS, 1-3.1] Grundlæggende Algoritmer og Datastrukturer Analyseværktøjer [CLRS, 1-3.1] Eksempler på en beregningsprocess Puslespil ved ombytninger Maximum delsum Hvad er udførselstiden for en algoritme? Maskinkode

Læs mere

Algoritmer og Datastrukturer 1

Algoritmer og Datastrukturer 1 Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Analyseværktøjer [CLRS, 1-3.1] Eksempler på en beregningsprocess Puslespil ved ombytninger Maximum delsum Hvad er udførselstiden for en algoritme? Maskinkode

Læs mere

Ydre enheder & De Tre Synsvinkler

Ydre enheder & De Tre Synsvinkler Input/Output Ydre enheder & De Tre Synsvinkler OS skal administrere adgangen til ydre enheder således at:... der fås en abstraktion, der giver en fl eksibel og uniform adgang til ydre enheder, men samtidig

Læs mere

DM14-1. Obligatorisk opgave F.06. System Call. Jacob Aae Mikkelsen Ingen andre gruppe medlemmer. 6. marts 2005

DM14-1. Obligatorisk opgave F.06. System Call. Jacob Aae Mikkelsen Ingen andre gruppe medlemmer. 6. marts 2005 - 1. Obligatorisk opgave F.06 System Call Jacob Aae Mikkelsen - 191076 Ingen andre gruppe medlemmer 6. marts 2005 1 Indhold 1 Opgave beskrivelse 2 2 Analyse 2 2.1 Hukommelses allokering.....................

Læs mere

Lageret er hierarkisk fokus nu: disk

Lageret er hierarkisk fokus nu: disk Filsystemer Lageret er hierarkisk fokus nu: disk Sekundært lager er nødvendigt: Data i RAM forsvinder når processer terminerer o.lign. Og der er også brug for pladsen Top-down: Hvad er en fi l? Er en fi

Læs mere

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output...

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... Indhold Maskinstruktur... 3 Kapitel 1. Assemblersprog...3 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... 9 Kapitel 2. Maskinkode... 13 2.1 Den fysiske maskine... 13 2.2 Assemblerens

Læs mere

Grundlæggende Algoritmer og Datastrukturer

Grundlæggende Algoritmer og Datastrukturer Grundlæggende Algoritmer og Datastrukturer Om kurset Grundlæggende Algoritmer og Datastrukturer Undervisningsformer Forelæsninger: 4 timer/uge (2+2). Øvelser: 3 timer/uge. Café. Obligatorisk program 13

Læs mere

Processer. DS kursusgang nr. 2: Procestræer. ps: Vis processer

Processer. DS kursusgang nr. 2: Procestræer. ps: Vis processer DS kursusgang nr. 2: Processer 1. Definition af processer/tråde? eksemplificeret med fork() og exec() (procesdannelse i C under unix) 2. C vs. Java (overordnet + funktioner) 3. Processer vs. tråde: Server:

Læs mere

Planen for idag. Datalogi 1F Forår 2003. Hvad er en proces? Livscyklus for en proces. Hvad består en proces af?

Planen for idag. Datalogi 1F Forår 2003. Hvad er en proces? Livscyklus for en proces. Hvad består en proces af? Datalogi 1F Forår 2003 OS[2]: Processor, tråde og skedulering Jørgen Sværke Hansen Planen for idag Processer: Procesbegrebet Processkift Processers familieliv Kommunikerende processer Tråde En lettere

Læs mere

Operativsystemer of C Efterår 2013 Virtuel hukommelse (kap. 9)

Operativsystemer of C Efterår 2013 Virtuel hukommelse (kap. 9) Operativsystemer of C Efterår Virtuel hukommelse (kap. 9) 8// Planen for idag q Virtuel hukommelse. q Demand paging / page faults. q Sideudskiftningsalgoritmer. q Rammeallokering til processer. Ø Øvelser:

Læs mere

Lageradministration Paging og segmentering

Lageradministration Paging og segmentering Lageradministration Paging og segmentering 1 Re: Logiske/fysiske adresser... Proces-struktur = kode og data for en proces 4G En proces tilgår sin proces-struktur via et logisk/virtuelt adresserum, fx 0,

Læs mere

kursus 5: Projektledelse Om kurset Uddannelse Hjemmeside Fagmodul i Erhvervsøkonomi HA, ét fags fagmodul Http://www.ruc.dk/om-universitetet/organisation/regelsamling/uddannelse/studieordninger-knyttet-til-faellesreglernefra-2012/

Læs mere

Studieordning del 3 - valgfag

Studieordning del 3 - valgfag Studieordning del 3 - valgfag Automationsteknolog (AK), Valgfri Uddannelseselementer Academy Profession Degree in Automation Engineering Ikrafttrædelsesdato: 1. august 2018 Revideret 31. juli 2018 Indhold

Læs mere

Filsystemer. dopsys. fredag den 26. november 2010

Filsystemer. dopsys. fredag den 26. november 2010 Filsystemer 1 Lageret er hierarkisk - Fokus: disk Sekundært lager er nødvendigt: Data i RAM forsvinder når processer terminerer o.lign. Og der er også brug for pladsen 2 Lageret er hierarkisk - Fokus:

Læs mere

Filsystemer: Implementation. dopsys

Filsystemer: Implementation. dopsys Filsystemer: Implementation 1 Hvor lagres filer?... filer lagres typisk på en harddisk...... head, track, sector, cylinder... Rotationshastighed fx 10000 RPM, Læse/skrivehast. 50 MB/s 2 Adgang til harddisken

Læs mere

Niveauer af abstrakte maskiner

Niveauer af abstrakte maskiner Mikroarkitektur Niveauer af abstrakte maskiner Spørgsmål... Hvordan realiseres IJVM maskinen (lev. 2), eller hvordan ser en IJVM-CPU ud? Opbygning (mikroarkitekturen Mic-1) Anvendelse (mikroprogrammet

Læs mere

Datatekniker med programmering som speciale H5

Datatekniker med programmering som speciale H5 Datatekniker med programmering som speciale H5 H5 består af et selvstændigt projekt som du definerer. Styringen af projektet er i centrum her, og ikke selve softwaren. H5 varer ti uger bestående af ni

Læs mere

Filsystemer: Anvendelse. dopsys

Filsystemer: Anvendelse. dopsys Filsystemer: Anvendelse 1 Lageret er hierarkisk - Fokus: disk Sekundært lager er nødvendigt: Data i RAM forsvinder når processer terminerer o.lign. Og der er også brug for pladsen 2 Lageret er hierarkisk

Læs mere

Mål Introducerer de studerende for forskellige anvendelser af IT i den offentlige sektor, samt til programmering af sådanne IT systemer.

Mål Introducerer de studerende for forskellige anvendelser af IT i den offentlige sektor, samt til programmering af sådanne IT systemer. Semesterbeskrivelse OID 1. semester. Semesterbeskrivelse Oplysninger om semesteret Skole: Statskundskab Studienævn: Studienævn for Digitalisering Studieordning: Studieordning for Bacheloruddannelsen i

Læs mere

Rolf Fagerberg. Forår 2012

Rolf Fagerberg. Forår 2012 Forår 2012 Mål for i dag Dagens program: 1 2 3 4 5 6 Forudsætninger: DM502 og DM503 Timer: 50% forelæsninger, 50% øvelser Forudsætninger: DM502 og DM503 Eksamenform: Skriftlig eksamen: Timer: 50% forelæsninger,

Læs mere

Styresystemer og tjenester

Styresystemer og tjenester Styresystemer og tjenester Indhold: 1. Introduktion til styresystemer. 2. Processer og tråde. 3. Synkroniseringsmetoder og InterProcesCommunikation. 4. Memory management. 5. I/O og devicedrivere. 6. Filsystemer.

Læs mere

Introduktion til DM507

Introduktion til DM507 Introduktion til DM507 Rolf Fagerberg Forår 2017 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA Forskningsområde: algoritmer og datastrukturer 2 / 20 Hvem er vi? Underviser: Rolf Fagerberg, IMADA

Læs mere

Typisk PC arkitektur. Synkronisering ved aktiv venten

Typisk PC arkitektur. Synkronisering ved aktiv venten Oversigt I/O arkitektur Kommunikation mellem processor og ydre enhed Brugerprocessers adgang til I/O Strukturen af kernens I/O del Ydelse Typisk C arkitektur Kontrol af ydre enheder De ydre enheder styres

Læs mere

Routing tables Processer Tråde Hukommelse. Operativsystemer og netværk Lektion 5. I/O Linux Debian Webserver

Routing tables Processer Tråde Hukommelse. Operativsystemer og netværk Lektion 5. I/O Linux Debian Webserver Routing tables Processer Tråde Hukommelse Operativsystemer og netværk Lektion 5 I/O Linux Debian Webserver Routing tables Den vej noget tager gennem netværket Routing tables Som en netværksadministrator,

Læs mere

DM507 Algoritmer og datastrukturer

DM507 Algoritmer og datastrukturer DM507 Algoritmer og datastrukturer Introduktion til kurset Rolf Fagerberg Forår 2019 1 / 20 Hvem er vi? Underviser: Rolf Fagerberg, Institut for Matematik og Datalogi (IMADA) Forskningsområde: algoritmer

Læs mere

IT SUMMER CAMP 2015. Dato for arr. og. dato for seneste tilmelding. bliver offentliggjort i maj. Ubuntu-Linux, Web-Server, Anvendte Web-Teknologier

IT SUMMER CAMP 2015. Dato for arr. og. dato for seneste tilmelding. bliver offentliggjort i maj. Ubuntu-Linux, Web-Server, Anvendte Web-Teknologier IT SUMMER CAMP 2015 Dato for arr. og dato for seneste tilmelding bliver offentliggjort i maj. uge z, x. / y. 2015 Ubuntu-Linux, Web-Server, og Basal Web-programmering En extensiv indføring i web-programmering

Læs mere

Programmering i C. Lektion september 2009

Programmering i C. Lektion september 2009 Programmering i C Lektion 1 8. september 2009 Målgruppe Motivation Indhold Form Materiale 2 / 47 Kursusintroduktion 1 Målgruppe 2 Motivation 3 Indhold 4 Form 5 Materiale Målgruppe Motivation Indhold Form

Læs mere

Deadlocks dopsys 1 onsdag den 8. december 2010

Deadlocks dopsys 1 onsdag den 8. december 2010 Deadlocks dopsys 1 En deadlock! When two trains approach each other at a crossing, both shall come to a full stop and neither shall start up again until the other has gone. Lov - the Kansas Legislature

Læs mere

Om at gå til mundtlig eksamen en manual for studerende

Om at gå til mundtlig eksamen en manual for studerende Om at gå til mundtlig eksamen en manual for studerende Hans Hüttel 14. juni 2005 Folk ytrer tit en meget forståelig utryghed ved det at gå til mundtlig eksamen. Eksamen er en unormal situation og som eksaminand

Læs mere

Valgfag for PBA11 - efterår 2015

Valgfag for PBA11 - efterår 2015 Valgfag for PBA11 - efterår 2015 Professionsbachelor i Erhvervssprog og It-baseret markedskommunikation 68200101, 5 ECTS Language and Globalization Sprog og globalisering Hold: IVK31/IVK32, onsdag, kl.

Læs mere

Planen for idag. Kontrol af ydre enheder. Systemarkitektur. Synkronisering ved aktiv venten. Multiprogrammering[1]: Ydre enheder og multiprogrammer

Planen for idag. Kontrol af ydre enheder. Systemarkitektur. Synkronisering ved aktiv venten. Multiprogrammering[1]: Ydre enheder og multiprogrammer : Ydre enheder og multiprogrammer Forår 2003 Jørgen Sværke Hansen Planen for idag Samspil mellem CPU og ydre enheder: Generelt Kontrolregistre Afbrydelser Specifikt for Alpha AXP (kernemaskinerne) Multiprogrammering:

Læs mere

Scheduling. Niels Olof Bouvin. Institut for Datalogi Aarhus Universitet

Scheduling. Niels Olof Bouvin. Institut for Datalogi Aarhus Universitet Scheduling 1 Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Tråde og deres indbyrdes forhold Sidste gang så vi på, hvorledes tråde kan skabes, og hvordan man kan skifte imellem dem I dag ser

Læs mere

Installation af en virtuel maskine

Installation af en virtuel maskine Installation af en virtuel maskine Hvad er en virtuel maskine? Du skal se en virtuel maskine som en ekstra computer, som kører inde i maven på din computer. Det vil sige du kan have en windows computer

Læs mere

Semesterbeskrivelse Innovation og Digitalisering, 1. semester.

Semesterbeskrivelse Innovation og Digitalisering, 1. semester. Semesterbeskrivelse Innovation og Digitalisering,. Semesterbeskrivelse Oplysninger om semesteret Skole: Statskundskab Studienævn: Studienævn for Digitalisering Studieordning: Studieordning for Bacheloruddannelsen

Læs mere

To mikroarkitekturer til MIPS Karakteropgave på Maskinarkitektur 1B

To mikroarkitekturer til MIPS Karakteropgave på Maskinarkitektur 1B To mikroarkitekturer til MIPS Karakteropgave på Maskinarkitektur 1B Martin Zachariasen 10. september 2004 1 Introduktion Dette er den karaktergivende rapportopgave på kurset Maskinarkitektur 1B, efterår

Læs mere

Datatekniker med programmering som speciale

Datatekniker med programmering som speciale Datatekniker med programmering som speciale H3 H1 varer ti uger bestående af syv uddannelsesspecifikke fag, samt 2 Valgfri Udannelsesspecifikke Fag og 1 Valgfrit Speciale Fag Indhold På H2 er der fokus

Læs mere

Programmering 2. dprog2 E2013. http://www.cs.au.dk/dprog2/

Programmering 2. dprog2 E2013. http://www.cs.au.dk/dprog2/ Programmering 2 dprog2 E2013 http://www.cs.au.dk/dprog2/ Læringsmål Deltagerne skal ved afslutningen af kurset kunne: forklare og anvende både basale og videregående elementer af et moderne programmeringssprog,

Læs mere

3. Computerens opbygning.

3. Computerens opbygning. 3. Computerens opbygning. Computere er konstrueret med henblik på at skulle kunne behandle og opbevare data og det er de som nævnt i noterne om Bits og Bytes vældig gode til. Som overordnet model for computere

Læs mere

ESP30076 임베디드시스템프로그래밍 (Embedded System Programming)

ESP30076 임베디드시스템프로그래밍 (Embedded System Programming) Module 14: Kernel Timer ESP30076 임베디드시스템프로그래밍 (Embedded System Programming) 조윤석 전산전자공학부 주차별목표 리눅스에서커널타이머사용법알아보기 HZ, jiffies_64, struct timer_list 커널타이머를활용한하드웨어제어용디바이스드라이버작성 2 Timer 관련변수 HZ 리눅스커널에서주기적으로발생하는시스템타이머

Læs mere

Programmering i C. Lektion 4. 5. december 2008

Programmering i C. Lektion 4. 5. december 2008 Programmering i C Lektion 4 5. december 2008 Funktioner Eksempel Fra sidst 1 Funktioner 2 Eksempel Funktioner Eksempel Eksempel: 1 / f u n k t i o n s p r o t o t y p e r / i n t i n d l a e s ( void )

Læs mere

Programmering i C. Kursusintroduktion. Lektion september Målgruppe 2 Indhold 3 Form 4 Materiale. Målgruppe Indhold Form Materiale

Programmering i C. Kursusintroduktion. Lektion september Målgruppe 2 Indhold 3 Form 4 Materiale. Målgruppe Indhold Form Materiale Programmering i C Lektion 1 16. september 2008 Målgruppe Indhold Form Materiale Kursusintroduktion 1 Målgruppe 2 Indhold 3 Form 4 Materiale 2 / 21 Målgruppe Indhold Form Materiale Folk der har styr på

Læs mere

STUDIEORDNING for det halvårlige Adgangskursus til maskinmesteruddannelsen på Aalborg Universitet i Aalborg og Frederikshavn

STUDIEORDNING for det halvårlige Adgangskursus til maskinmesteruddannelsen på Aalborg Universitet i Aalborg og Frederikshavn 2011 maskinmester Studieordning STUDIEORDNING for det halvårlige Adgangskursus til maskinmesteruddannelsen på Aalborg Universitet i Aalborg og Frederikshavn Gældende fra februar 2011 1. Fællesbestemmelser.

Læs mere

Mikroarkitektur. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet

Mikroarkitektur. Niels Olof Bouvin Institut for Datalogi Aarhus Universitet Mikroarkitektur Niels Olof Bouvin Institut for Datalogi Aarhus Universitet 1 Level 1: Mikrokode niveauet Level 5 Problem-oriented language level Translation (compiler) Level 4 Assembly language level Translation

Læs mere

basiskursus 7: Samfundsvidenskabelig videnskabsteori Om kurset Fag Hjemmeside Kursustype Tilmelding Den samfundsvidenskabelige bacheloruddannelse Http://www.ruc.dk/om-universitetet/organisation/regelsamling/uddannelse/studieordningerknyttet-til-faellesreglerne-fra-2012/

Læs mere

Studieordning del 3 - valgfag

Studieordning del 3 - valgfag Studieordning del 3 - valgfag Automationsteknolog (AK), Valgfri Uddannelseselementer Academy Profession Degree in Automation Engineering Ikrafttrædelsesdato: 1. januar 2017 Revideret 6. april 2017 Indhold

Læs mere

Programmering 2. dprog2 E2012. http://www.cs.au.dk/dprog2/

Programmering 2. dprog2 E2012. http://www.cs.au.dk/dprog2/ Programmering 2 dprog2 E2012 http://www.cs.au.dk/dprog2/ Læringsmål Deltagerne skal ved afslutningen af kurset kunne: forklare og anvende både basale og videregående elementer af et moderne programmeringssprog,

Læs mere

2011 1½ år Studieordning. STUDIEORDNING for det halvandetårige Adgangskursus på Aalborg Universitet i Aalborg og Esbjerg

2011 1½ år Studieordning. STUDIEORDNING for det halvandetårige Adgangskursus på Aalborg Universitet i Aalborg og Esbjerg 2011 1½ år Studieordning STUDIEORDNING for det halvandetårige Adgangskursus på Aalborg Universitet i Aalborg og Esbjerg Gældende fra februar 2011 1. Fællesbestemmelser. I henhold til bekendtgørelse nr.

Læs mere

Favrskov læring for alle

Favrskov læring for alle Favrskov læring for alle 2013- Kontekst og baggrund: Byrådet vedtog i forbindelse med B-2013, at der afsættes 1 mio. i 20 og 2 mio. i 20, 20 og 2016 til at sikre øget inklusion i folkeskolen, ved at have

Læs mere

Semesterbeskrivelse Innovation og Digitalisering, 1. semester.

Semesterbeskrivelse Innovation og Digitalisering, 1. semester. Semesterbeskrivelse Innovation og Digitalisering,. Semesterbeskrivelse Oplysninger om semesteret Skole: Statskundskab Studienævn: Studienævn for Digitalisering Studieordning: Studieordning for Bacheloruddannelsen

Læs mere

Arduino Programmering

Arduino Programmering Microcontroller, Arduino I teknologi skal vi lære at lave programmer til uc for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal vi have set mulighederne, og forstået

Læs mere

2011 Enkeltfag Studieordning. STUDIEORDNING for enkeltfagsstuderende ved Adgangskursus på Aalborg Universitet i Aalborg og Esbjerg

2011 Enkeltfag Studieordning. STUDIEORDNING for enkeltfagsstuderende ved Adgangskursus på Aalborg Universitet i Aalborg og Esbjerg 2011 Enkeltfag Studieordning STUDIEORDNING for enkeltfagsstuderende ved Adgangskursus på Aalborg Universitet i Aalborg og Esbjerg Gældende fra februar 2011 1 1. Fællesbestemmelser. Enkeltfagskurserne ved

Læs mere

Rolf Fagerberg. Forår 2015

Rolf Fagerberg. Forår 2015 Forår 2015 Dagens program 1 2 3 4 5 Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Underviser:, IMADA Forskningsområde: algoritmer og datastrukturer Deltagere: BA i Datalogi BA i Software

Læs mere

Virksomhedens IT værktøjer

Virksomhedens IT værktøjer DET SAMFUNDSVIDENSKABELIGE FAKULTET 25-01-2019 19:37 FAGBESKRIVELSE Virksomhedens IT værktøjer 12.10.2018 Indholdsfortegnelse Fagnummer Fagtitel Undervisningssprog ECTS-point Ansvarligt studienævn Godkendelsesdato

Læs mere

1) Mennesker, computere og interaktion. Her er omdrejningspunktet basale forudsætninger for interaktion mellem mennesker og computere.

1) Mennesker, computere og interaktion. Her er omdrejningspunktet basale forudsætninger for interaktion mellem mennesker og computere. Semesterbeskrivelse OID 2. semester. Semesterbeskrivelse Oplysninger om semesteret Skole: Statskundskab Studienævn: Studienævn for Digitalisering Studieordning: Studieordning for Bacheloruddannelsen i

Læs mere

Lidt orientering om, hvad en computer består af

Lidt orientering om, hvad en computer består af Lidt orientering om, hvad en computer består af Lidt orientering om, hvad en computer består af...1 Introduktion...2 Skærm...2 Printer...2 Tastatur...2 Mus...3 CPU...3 Bundkort...4 Strømforsyning...4 RAM/

Læs mere

Hvad kommer efter DAVID? Af Arne Tolstrup Madsen.

Hvad kommer efter DAVID? Af Arne Tolstrup Madsen. Hvad kommer efter DAVID? Af Arne Tolstrup Madsen. Som mange har opdaget, arbejder jeg på en afløser for DAVID. Gennem årene har flere spurgt, om en evt. ny version skulle hedder Goliath. Bortset fra det

Læs mere