Processer og tråde. dopsys 1

Størrelse: px
Starte visningen fra side:

Download "Processer og tråde. dopsys 1"

Transkript

1 Processer og tråde dopsys 1

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

3 Motivation.. parallelle algoritmer kan gøre store beregninger hurtigere: Evaluering af aritmetiske udtryk: Proces-flow: (a + b) * (c + d) - (e / f).. flere aktiviteter afvikles samtidigt (logisk eller fysisk). dopsys 3

4 Motivation.. parallelle algoritmer kan gøre store beregninger hurtigere: Evaluering af aritmetiske udtryk: Proces-flow: (a + b) * (c + d) - (e / f).. flere aktiviteter afvikles samtidigt (logisk eller fysisk). dopsys 3

5 Motivation.. parallelle algoritmer kan gøre store beregninger hurtigere: Evaluering af aritmetiske udtryk: Proces-flow: (a + b) * (c + d) - (e / f).. flere aktiviteter afvikles samtidigt (logisk eller fysisk). dopsys 3

6 Motivation.. parallelle algoritmer kan gøre store beregninger hurtigere: Evaluering af aritmetiske udtryk: Proces-flow: (a + b) * (c + d) - (e / f).. flere aktiviteter afvikles samtidigt (logisk eller fysisk). dopsys 3

7 Motivation.. parallelle algoritmer kan gøre store beregninger hurtigere: Evaluering af aritmetiske udtryk: Proces-flow: (a + b) * (c + d) - (e / f).. flere aktiviteter afvikles samtidigt (logisk eller fysisk). dopsys 3

8 Proces-begrebet.. er centralt i understøttelse af virtualisering: Kørende system: samling af samtidige, sekventielle processer Proces: et program under afvikling SP A data stack SP B data stack proces-struktur (process image) PC A program Proces A program Proces B.. processer kan kommunikere og synkronisere med hinanden. PC B dopsys 4

9 Proces-begrebet afvikling af flere programmer udgør multiprogrammering konceptuelt og logisk udføres programmerne uafhængigt af hinanden typisk er der færre CPU er: reelt køres programmerne på skift, lidt ad gangen dopsys 5

10 Skabelse af processer Eksempler på hændelser hvor der skabes processer: System-initialisering (hønen og ægget!) Systemkald i en proces som skaber en ny proces, fx Kommando fra bruger som kræver en ny proces Igangsættelse af et batch job dopsys 6

11 Afslutning af processer Eksempler på hændelser hvor processer afsluttes: Normal afslutning i en proces ( exit, på eget initiativ) Afslutning pga fejl (kontrolleret af processen selv) Afslutning pga fatal fejl (hvor processen ikke styrer) Afslutning pga kill fra en anden proces (begge muligheder) dopsys 7

12 Proces-tilstande en proces kan være blokeret fordi den venter på noget hvis processen i sig selv er klar til at køre kan den være i venteposition ( ready ) fordi der mangler frie CPU er, eller igang ( running ) dopsys 8

13 Implementation af processer (1) grundstrukturen i et OS med processer er at en spilfordeler (scheduler) afvikler et antal sekventielle aktiviteter, som er organiseret som processer (eller tråde) dopsys 9

14 Implementation af processer (2) information om en proces i OS et opbevares i en process control block / process table entry dopsys 10

15 [Q/A] Hvorfor skal en proces have...? Time of next alarm Process ID Parent process Memory info Root directory User ID CPU time used 11

16 Implementation af processer (3) Kritisk overgang ved skift til/fra kernen: Hardware gemmer instruktionsadresse (program counter) osv. Hardware henter ny instruktionsadresse fra interrupt vector Assembler-rutine gemmer øvrige registre Assembler-rutine sætter ny stak op og kalder videre til.. C funktion ( interrupt service ) som fx læser fra disk Scheduler bestemmer hvilken proces der skal køre nu C funktionen returnerer (til assembler-rutinen) Assembler-rutinen returnerer til den udvalgte proces dopsys 12

17 [Click] Hvorfor gemmes CPU ens registre i process control blocks?? A. Ved samtidig afvikling af flere processer med kun een CPU må man emulere registrene i RAM B. Registrene bliver gemt når en proces ikke kører C. Der er kun tale om privilegerede registre (fx memory manager) som brugeren ikke må tilgå D. Registrene bliver gemt når der er mere end een proces som er ready dopsys 13

18 Systemkald til skabelse af proces %> man fork NAME fork - create a child process SYNOPSIS #include <sys/types.h> #include <unistd.h> pid_t fork(void); DESCRIPTION fork creates a child process that differs from the parent process only in its PID and PPID, and in the fact that resource utilizations are set to 0. File locks and pending signals are not inherited. RETURN VALUE On success, the PID of the child process is returned in the parent's thread of execution, and a 0 is returned in the child's thread of execution. On failure, a -1 will be returned in the parent's context, no child process will be created, and errno will be set appropriately. ERRORS dopsys 14

19 void process_a(void) { pid_t pid = fork (); } if (pid == 0) { /* child process */ int i; for (i=0; i<10; i++) { printf("process B\n"); sleep(2); } } else { /* parent process */ int i; for (i=0; i<10; i++) { printf("process A\n"); sleep(1); } } int main(int argc,char *argv[]) { process_a(); exit(0); } >%./processab process A process B process A process B process A process A process B process A process A process B process A process A process B process A process B process B dopsys 15

20 /* processa.c */ void process_a(void) { pid_t pid = fork (); } if (pid == 0) { /* child process */ char filename[9] = "processb"; char *argv[2]; argv[0] = filename; argv[1] = NULL; execvp(filename,argv); } else { /* parent process */ int i; for (i=0; i<10; i++) { printf("process A\n"); sleep(1); } } int main(int argc,char *argv[]) { process_a(); exit(0); } /* processb.c */ #include <stdio.h> #include <unistd.h> int main(int argc,char *argv[]) { int i; } for (i=0; i<10; i++) { printf("process B\n"); sleep(2); } exit(0); %> gcc o processb processb.c %> gcc o processa processa.c %>./processa... dopsys 16

21 At modellere multi-programmering CPU anvendelsesgrad i forhold til antal processer (naiv model) dopsys 17

22 Anvendelse af tråde (1) Allerede een aktivitet (at skrive et dokument) kan drage stor nytte af at have flere tråde: respons / backup / formattering dopsys 18

23 Anvendelse af tråde (2) For servere (fx HTTP) er nytten velkendt, og begreber som trådpuljer hjælper med at tilpasse flertrådethed til antal CPU er dopsys 19

24 Anvendelse af tråde (3) En grov skitse af koden for sådan en server med en kontroltråd (a) og et antal worker threads (b) dopsys 20

25 Anvendelse af tråde (3) En grov skitse af koden for sådan en server med en kontroltråd (a) og et antal worker threads (b) dopsys 20

26 Anvendelse af tråde (4) Anvendelsen af tråde giver en betydelig forenkling af serveren, fordi der ellers er behov for at simulere store dele af den samme funktionalitet dopsys 21

27 [Click] Hvorfor er blokerende systemkald så afgørende?? A. En tråd kan overtage CPU en fra en anden tråd ved at lave et blokerende systemkald B. Et blokerende systemkald standser kernen og nedsætter dermed hele systemets ydelse C. En tråd kan stoppe de øvrige i samme proces ved at lave sådan et kald D. Et blokerende systemkald er kun et problem når vi simulerer tråde i user space dopsys 22

28 Den klassiske trådmodel (1) Man har selvfølgelig altid haft tråde når man har processer, men hvis man går fra præcist een tråd per proces til mange er man nødt til at generalisere administrationen af trådene.. dopsys 23

29 Den klassiske trådmodel (2).. dette gøres ved at opdele data i process control blocks i dele der hører til processen som helhed, og dele som hører til hver tråd de sidste kan der så være mange af dopsys 24

30 Den klassiske trådmodel (3) Det er helt fundamentalt at hver tråd skal have sin egen stak (hvilket er vanskeligere at håndtere ved udvidelser) dopsys 25

31 POSIX-tråde (1) En vidt udbredt standard for tråde (oma) med mange implementationer er POSIX dopsys 26

32 POSIX-tråde (2) dopsys 27

33 POSIX-tråde (2) pthread_t dopsys 27

34 POSIX-tråde (2) pthread_exit pthread_t dopsys 27

35 POSIX-tråde (2) pthread_exit pthread_t pthread_create dopsys 27

36 Tråde kan implementeres to steder processer skal understøttes af OS; med tråde kan man vælge at implementere dem i user space (tv) eller at lade kernen styre dem (th) dopsys 28

37 Hybride implementationer.. eller begge steder dopsys 29

38 Pop-up tråde en worker thread kan tage sig af en indkommende besked; vi kan også skabe en ny (pop-up) tråd hver gang: billig da der ikke er nogen gemt tilstand dopsys 30

39 Opsummering Processer: Proces-begreb: program under afvikling Logisk og fysisk parallellitet Unix OS primitiv: fork Tråde, begrundelser for at bruge dem Tråde styret fra user space hhv. fra kernen Pop-up tråde dopsys 31

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

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

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

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

Operativsystemer - dopsys

Operativsystemer - dopsys Operativsystemer - dopsys Erik Ernst eernst@cs.au.dk dopsys 1 Q/A Mange deltagere er nu på 2. år af datalogistudiet, med dcomnet 1 for år siden Er din baggrund anderledes? dopsys 2 Praktiske oplysninger

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

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

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

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

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

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

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

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

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

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

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

INGENIØRHØJSKOLEN I ÅRHUS Elektro- og IKT-afdelingen. I3PRG3 + I3DTM3 + I3ISY1-3. semester

INGENIØRHØJSKOLEN I ÅRHUS Elektro- og IKT-afdelingen. I3PRG3 + I3DTM3 + I3ISY1-3. semester INGENIØRHØJSKOLEN I ÅRHUS Elektro- og IKT-afdelingen Side 1 af 7 Eksamenstermin: DECEMBER 2003 / JANUAR 2004 Varighed: 4 timer - fra kl. 9.00 til kl. 13.00 Ingeniørhøjskolen udleverer: 3 omslag samt papir

Læs mere

Principper for Samtidighed og Styresystemer

Principper for Samtidighed og Styresystemer Principper for Samtidighed og Styresystemer Synkronisering og Deadlocks René Rydhof Hansen Februar 2008 PSS 08 (Forelæsning 03) Synkronisering og Deadlocks Februar 2008 1 / 33 Skemaændringer Forelæsning

Læs mere

Sortering fra A-Z. Henrik Dorf Chefkonsulent SAS Institute

Sortering fra A-Z. Henrik Dorf Chefkonsulent SAS Institute Sortering fra A-Z Henrik Dorf Chefkonsulent SAS Institute Hvorfor ikke sortering fra A-Å? Det er for svært Hvorfor ikke sortering fra A-Å? Hvorfor ikke sortering fra A-Å? Hvorfor ikke sortering fra A-Å?

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

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

Schedulering af SAS job i MS Task Scheduler, som sender e-mail med log og statuskode ved fejl

Schedulering af SAS job i MS Task Scheduler, som sender e-mail med log og statuskode ved fejl Schedulering af SAS job i MS Task Scheduler, som sender e-mail med log og statuskode ved fejl Eksemplet består af 2 dele, et SAS program der fejler, samt et Powershell script til at eksekvere SASprogrammet

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

Opsætning af Backup. Hvis programmet registreres korrekt vises nedenstående skærmbillede. Genstart herefter programmet.

Opsætning af Backup. Hvis programmet registreres korrekt vises nedenstående skærmbillede. Genstart herefter programmet. Opsætning af Backup Dette er en guide til opsætning af backup med Octopus File Synchronizer. Det første der skal ske er, at programmet skal registreres (programmet kan dog bruges i 30 dage, hvis det ikke

Læs mere

Analyse og design af Indlejrede Systemer. v/ Jens Dalsgaard Nielsen Henrik Schiøler Mads Dore alle Afdeling for Proceskontrol

Analyse og design af Indlejrede Systemer. v/ Jens Dalsgaard Nielsen Henrik Schiøler Mads Dore alle Afdeling for Proceskontrol Analyse og design af Indlejrede Systemer v/ Jens Dalsgaard Nielsen Henrik Schiøler Mads Dore alle Afdeling for Proceskontrol 1 kursusindhold... Del 1: 5 mm Parallelitet, multiprogrammering, OS services

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

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

Netværk & elektronik

Netværk & elektronik Netværk & elektronik Oversigt Ethernet og IP teori Montering af Siteplayer modul Siteplayer teori Siteplayer forbindelse HTML Router (port forwarding!) Projekter Lkaa Mercantec 2009 1 Ethernet På Mars

Læs mere

Mænd, Mus og Metadata

Mænd, Mus og Metadata Mænd, Mus og Metadata Henrik Dorf SAS Institute A/S Intet er jo hvad det gir sig ud for Mus er en computermus Mænd er personer af begge køn der tager backup og ikke vil have en musearm Metadata er data

Læs mere

Analyse og design af Indlejrede Systemer. v/ Jens Dalsgaard Nielsen Henrik Schiøler alle Afdeling for Proceskontrol

Analyse og design af Indlejrede Systemer. v/ Jens Dalsgaard Nielsen Henrik Schiøler alle Afdeling for Proceskontrol Analyse og design af Indlejrede Systemer v/ Jens Dalsgaard Nielsen Henrik Schiøler alle Afdeling for Proceskontrol 1 kursusindhold... Introduktion til parallellitet og multiprogrammering Analyse, modellering,

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

Citrix CSP og Certificate Store Provider

Citrix CSP og Certificate Store Provider Project Name Document Title TDC Citrix Citrix og Certificate Store Provider Version Number 1.0 Status Release Author jkj Date 5-10-2006 Trademarks All brand names and product names are trademarks or registered

Læs mere

Værktøjer fra værktøjskassen. Søren Breddam, Stevns Kommune

Værktøjer fra værktøjskassen. Søren Breddam, Stevns Kommune Værktøjer fra værktøjskassen Søren Breddam, Stevns Kommune sb@stevns.dk 1stevns kommune Mapbasic i Stevns Kommune Data Kørsel af planlagte opgaver, så data altid er opdaterede. Logfil til overvågning Dagligt

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

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

Database "opbygning"

Database opbygning Database "opbygning" Dette områder falder mest under en DBA's ansvarsområde. Det kan sagtens tænkes at en database udvikler i nogle situationer vil blive nød til at oprette produktions og test) databaser,

Læs mere

Indhold. Download driver... 2. Find version af Windows 8... 3. Hent drivers til Windows 8... 5. Udpak driver... 6

Indhold. Download driver... 2. Find version af Windows 8... 3. Hent drivers til Windows 8... 5. Udpak driver... 6 KB print Windows 8 installations guide DET KONGELIGE NATIONAL OG Indhold Download driver... 2 Find version af Windows 8.... 3 Hent drivers til Windows 8... 5 Udpak driver... 6 Windows 8 installation af

Læs mere

Løsning af skyline-problemet

Løsning af skyline-problemet Løsning af skyline-problemet Keld Helsgaun RUC, oktober 1999 Efter at have overvejet problemet en stund er min første indskydelse, at jeg kan opnå en løsning ved at tilføje en bygning til den aktuelle

Læs mere

Real-time programming safety in Java and Ada

Real-time programming safety in Java and Ada Real-time programming safety in Java and Ada Bo Sandén Presenter: Thomas Bøgholm 25. oktober 2007 Forfatteren Artiklen Synkroniserings Begreber Bo Sandén Professor på Colorado Technical University Beskæftiger

Læs mere

Interrupt - Arduino. Programmering for begyndere Brug af Arduino. Kursusaften 6 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK

Interrupt - Arduino. Programmering for begyndere Brug af Arduino. Kursusaften 6 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK Programmering for begyndere Brug af Arduino Programmeringskursus Interrupt - Arduino EDR Hillerød Knud Krogsgaard Jensen / OZ1QK Interrupts Programmeringskursus Genbrug Interrupts Betyder blot at man afbryder

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

Planen for idag. Synkroniseringsmekanismer. Krav til løsning. Kritiske regioner. Bagerens algoritme. Kritisk region via delt lager.

Planen for idag. Synkroniseringsmekanismer. Krav til løsning. Kritiske regioner. Bagerens algoritme. Kritisk region via delt lager. Planen for idag Synkroniseringsmekanismer Kritiske regioner Semaforer: Binære semaforer Tællesemaforer Beskedsemaforer Prioritetsinvertering Låse (spinlocks) sikrer udelelig adgang Barrierer synkroniseringspunkt

Læs mere

Help / Hjælp

Help / Hjælp Home page Lisa & Petur www.lisapetur.dk Help / Hjælp Help / Hjælp General The purpose of our Homepage is to allow external access to pictures and videos taken/made by the Gunnarsson family. The Association

Læs mere

Aktivering af Survey funktionalitet

Aktivering af Survey funktionalitet Surveys i REDCap REDCap gør det muligt at eksponere ét eller flere instrumenter som et survey (spørgeskema) som derefter kan udfyldes direkte af patienten eller forsøgspersonen over internettet. Dette

Læs mere

NT PDC Udarbejdet af Kenneth Dalbjerg

NT PDC Udarbejdet af Kenneth Dalbjerg NT PDC Udarbejdet af Kenneth Dalbjerg Titelblad Denne rapport er udarbejdet af Kenneth Dalbjerg, med det formål at lære noget omkring, NT PDC Server. Side 2 af 13 Indholdsfortegnelse Forside Titelblad

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

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

DET KONGELIGE BIBLIOTEK NATIONALBIBLIOTEK OG KØBENHAVNS UNIVERSITETS- BIBLIOTEK. Index

DET KONGELIGE BIBLIOTEK NATIONALBIBLIOTEK OG KØBENHAVNS UNIVERSITETS- BIBLIOTEK. Index DET KONGELIGE Index Download driver... 2 Find the Windows 7 version.... 2 Download the Windows Vista driver.... 4 Extract driver... 5 Windows Vista installation of a printer.... 7 Side 1 af 12 DET KONGELIGE

Læs mere

Spar tid med struktureret programmering! Om PLC programmering

Spar tid med struktureret programmering! Om PLC programmering Spar tid med struktureret programmering! Om PLC programmering 1 MITSUBISHI PLC programmerings software Ved systemtekniker Helge Gulstad Tlf. Direkte: 46 74 01 61 Mob: 21 19 25 64 Mail: hgd@beijer.dk 2

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

Blockprog Rev1.0. Block programmering CS1/CJ1. Qiuck guide OMRON

Blockprog Rev1.0. Block programmering CS1/CJ1. Qiuck guide OMRON Blockprog Rev1.0 Block programmering CS1/CJ1 Qiuck guide OMRON Indholdsfortegnelse 1. SPECIFIKATION... 3 2. PROGRAMMERINGS INSTRUKTIONER.... 4 3. BLOK PROGRAMMERING... 5 3.1. BPRG OG BEND... 5 4. BETINGELSES

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

Programmering i C Videre med C (2 af 4) 19. marts 2007

Programmering i C Videre med C (2 af 4) 19. marts 2007 Programmering i C Videre med C (2 af 4) 19. marts 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan i dag Brush-up fra sidst Videre med C Kontrolløkker (while, for, ) Conditional Execution (if, if/else) Funktioner

Læs mere

DET KONGELIGE BIBLIOTEK NATIONALBIBLIOTEK OG KØBENHAVNS UNIVERSITETS- BIBLIOTEK. Indhold

DET KONGELIGE BIBLIOTEK NATIONALBIBLIOTEK OG KØBENHAVNS UNIVERSITETS- BIBLIOTEK. Indhold DET KONGELIGE Indhold Download driver... 2 Find version af vista.... 2 Hent drivers til Windows Vista... 4 Udpak driver... 5 Windows Vista installation af printer.... 7 Side 1 af 12 DET KONGELIGE KB har

Læs mere

Threads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java

Threads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Denne guide er oprindeligt udgivet på Eksperten.dk Threads i Java Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Den forudsætter

Læs mere

Skriftlig eksamen i Datalogi

Skriftlig eksamen i Datalogi Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2

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

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

uprocessorens hardware

uprocessorens hardware uprocessorens hardware 8080 Architecture Kernen i en processor er ALUen. Det er den som kan udfører simple regne operationer. De tal den arbejdermed gemmes i en række registre. Når et tal skal hentes eller

Læs mere

Agenda. Muligheder for anvendelse. Komponenter. Features. Restore muligheder. DR og TSM integration. Repository. Demo. Spørgsmål

Agenda. Muligheder for anvendelse. Komponenter. Features. Restore muligheder. DR og TSM integration. Repository. Demo. Spørgsmål Agenda Muligheder for anvendelse Komponenter Features Restore muligheder DR og TSM integration Repository Demo Spørgsmål Muligheder for anvendelse Data Center dmsave/lokal TSM Remote Office Application

Læs mere

Introduktion QEMU system emulator QEMU user space emulator Afslutning QEMU. Christian Laursen. Århus Januar 2008

Introduktion QEMU system emulator QEMU user space emulator Afslutning QEMU. Christian Laursen. Århus Januar 2008 Århus Januar 2008 Agenda 1 Introduktion 2 3 4 Hvad er? Emulerede platforme Hvad er? Open source Emulator Virtuel maskine Hvad er? Emulerede platforme Hvad kan? Benytter dynamic translation til emulering

Læs mere

Terese B. Thomsen 1.semester Formidling, projektarbejde og webdesign ITU DMD d. 02/11-2012

Terese B. Thomsen 1.semester Formidling, projektarbejde og webdesign ITU DMD d. 02/11-2012 Server side Programming Wedesign Forelæsning #8 Recap PHP 1. Development Concept Design Coding Testing 2. Social Media Sharing, Images, Videos, Location etc Integrates with your websites 3. Widgets extend

Læs mere

Dag 10 Flertrådet programmering

Dag 10 Flertrådet programmering Videregående programmering i Java Dag 10 Flertrådet programmering Fremlæggelse af programmering/status for projekter Dokumentation med javadoc Flertrådede designmønstre: Arbejdstråd, Producent Konsument,

Læs mere

ODIN-webservice ændringer release 2010 v2.0

ODIN-webservice ændringer release 2010 v2.0 DOKUMENTATION OG VEJLEDNING ODIN-webservice ændringer release 2010 v2.0 Indholdsfortegnelse 1. Nye webservice metoder... 2 1.1 Anvendelse af køretøjer og personel fra fremmede beredskaber ifm. indberetning

Læs mere

Programmering i C. Lektion oktober 2008

Programmering i C. Lektion oktober 2008 Programmering i C Lektion 2 20 oktober 2008 Historie Processen At kompilere 2 / 23 Fra sidst 1 Historie 2 Processen 3 At kompilere Historie Processen At kompilere 3 / 23 ALGOL 60 1963 CPL 1966 BCPL 1969

Læs mere

Håndbog Til CPR services. Bilag 8 GCTP-standard m.m. CPR-kontoret

Håndbog Til CPR services. Bilag 8 GCTP-standard m.m. CPR-kontoret Håndbog Til CPR services Bilag 8 GCTP-standard m.m. CPR-kontoret Datavej 20, Postboks 269, 3460 Birkerød E-post: cpr@cpr.dk. Telefax 45 82 51 10. Hjemmeside: www.cpr.dk Side 2 af 14 Indholdsfortegnelse

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

Divide-and-Conquer algoritmer

Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. Divide-and-Conquer algoritmer Det samme som rekursive algoritmer. 1. Opdel problem i mindre delproblemer

Læs mere

Programmering i C. Lektion november 2008

Programmering i C. Lektion november 2008 Programmering i C Lektion 3 18. november 2008 Kontrolstrukturer Udvælgelse Gentagelse Eksempler Fra sidst 1 Kontrolstrukturer 2 Udvælgelse 3 Gentagelse 4 Eksempler Kontrolstrukturer Udvælgelse Gentagelse

Læs mere

ODBC made easy på dansk (når bare man ved hvordan) Jesper Michelsen, Data warehouse & Analyse

ODBC made easy på dansk (når bare man ved hvordan) Jesper Michelsen, Data warehouse & Analyse ODBC made easy på dansk (når bare man ved hvordan) Jesper Michelsen, Data warehouse & Analyse Agenda Præsentation Hvad er ODBC? ODBC Datakildeadministrator System-DSN Distribution Fil-DSN Scriptede connections

Læs mere

Virkefeltsregler i Java

Virkefeltsregler i Java Virkefeltsregler i Java int i; int k; Sequence s; int j; What s in a name? Brian spillede blændende i søndags! Skolen ligger i Viby Ring til Kirsten og sig at... Et navn fortolkes i en kontekst og konteksten

Læs mere

ComArchive PST Importer For version 3

ComArchive PST Importer For version 3 ComArchive PST Importer For version 3 Table of Contents Disclaimer...3 Om denne manual...4 Hvad er PST filer og hvorfor bekymre sig om det?...4 Hvorfor bruge en PST Importer?...4 Overblik over processen...4

Læs mere

OPC ACCESS HEARTBEAT 1

OPC ACCESS HEARTBEAT 1 OPC Access Heartbeat Dette dokument gennemgår i et kort eksempel, hvordan OPC Access konfigureres til at anvende Heartbeat funktionen til at dokumentere kontinuerlig forbindelse mellem SQL Server og OPC

Læs mere

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere.

MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Denne guide er oprindeligt udgivet på Eksperten.dk MySQL C API Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Den forudsætter lidt kendskab

Læs mere

SAP R/3. Henrik Kroos

SAP R/3. Henrik Kroos SAP R/3 Henrik Kroos Velkommen.. Spørg undervejs Præsentation af mig Præsentation af jer Hvad er SAP?? SAP er et tysk firma startet af 5 tidligere IBM-folk i 1972 Hjemsted i Waldorf Tyskland, (nær Frankfurt)

Læs mere

Schedulering. dopsys

Schedulering. dopsys Schedulering Schedulering Ide: tag beslutning om fordeling af resurser på parter Resurse kan tildeles, fratages Bestemte situationer muliggør beslutninger 2 Designvalg i schedulering Beslutningsform: hvornår

Læs mere

WT-1011RC Programmer User Guide

WT-1011RC Programmer User Guide WT-1011RC Programmer User Guide Firmware Version 1.9 Note: 1. Information in this manual is subject to change without notice and does not represent a commitment of manufacturer. 2. Manufacturer shall not

Læs mere

Databaseadgang fra Java

Databaseadgang fra Java Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,

Læs mere

BACK-END OG DATA: ADMINISTRATION HVAD ER DE NYE MULIGHEDER MED VERSION 7.1? STEFFEN BILLE RANNES, 4. FEBRUAR 2015

BACK-END OG DATA: ADMINISTRATION HVAD ER DE NYE MULIGHEDER MED VERSION 7.1? STEFFEN BILLE RANNES, 4. FEBRUAR 2015 BACK-END OG DATA: ADMINISTRATION HVAD ER DE NYE MULIGHEDER MED VERSION 7.1? STEFFEN BILLE RANNES, 4. FEBRUAR 2015 SAS VISUAL ANALYTICS 7.1 ADMINISTRATOR Mulighed for at udføre handlinger på flere servere

Læs mere

QUICK MANUAL BRUGERNAVN: ADMIN PASSWORD: 00000 APP: SMARTEYES PRO PORT: 50100. SecVision - Quick Manual v1.0

QUICK MANUAL BRUGERNAVN: ADMIN PASSWORD: 00000 APP: SMARTEYES PRO PORT: 50100. SecVision - Quick Manual v1.0 QUICK MANUAL BRUGERNAVN: ADMIN PASSWORD: 00000 APP: SMARTEYES PRO PORT: 50100 SecVision - Quick Manual v1.0 1. System Login 1.1. Bruger Login ID: admin Password: 00000 1.2. Indstilling af dato/tid og harddisk

Læs mere

MT90 Vejledning. Forord. Website: www.smartgps.dk Kontakt: salg@smartgps.dk. Tillykke med din nye GPS tracker MT90.

MT90 Vejledning. Forord. Website: www.smartgps.dk Kontakt: salg@smartgps.dk. Tillykke med din nye GPS tracker MT90. MT90 Vejledning Forord Tillykke med din nye GPS tracker MT90. Denne manual viser hvordan du anvender enheden korrekt. Sørg for at læse denne manual grundigt, før du bruger dette produkt. Brugermanualen

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

A Profile for Safety Critical Java

A Profile for Safety Critical Java A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren

Læs mere

Speciale. Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP)

Speciale. Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP) Speciale Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP) Speciale efterår 2005 Teknisk Informationsteknologi Jan Lauritzen & Mads

Læs mere

Design by Contract Bertrand Meyer Design and Programming by Contract. Oversigt. Prædikater

Design by Contract Bertrand Meyer Design and Programming by Contract. Oversigt. Prædikater Design by Contract Bertrand Meyer 1986 Design and Programming by Contract Michael R. Hansen & Anne Haxthausen mrh@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark Design

Læs mere

Hvordan vælger jeg dokumentprofilen?

Hvordan vælger jeg dokumentprofilen? Hvordan vælger jeg dokumentprofilen? Valget af OIOUBL profil i en konkret dokumentudveksling vil bl.a. afhænge af, hvilke OIOUBL profiler den anden part i udvekslingen understøtter. Et konkret eksempel

Læs mere

Andreas Nordbek & Kristoffer Skude Jensen. DMX Styring 31-05-2010. Side 1 af 15

Andreas Nordbek & Kristoffer Skude Jensen. DMX Styring 31-05-2010. Side 1 af 15 Andreas Nordbek & Kristoffer Skude Jensen DMX Styring 31-05-2010 Side 1 af 15 Indholdsfortegnelse 1 Indledning... 3 2 DMX... 4 3 Arkitektur... 5 4 Hardware design... 6 4.1 SPI... 9 5 Software... 10 5.1

Læs mere

Sikker kode? Gennemgang af mest almindelige hacker angreb

Sikker kode? Gennemgang af mest almindelige hacker angreb Sikker kode? Gennemgang af mest almindelige hacker angreb Developer & Platform Strategy Microsoft http://blogs.msdn.com/henrikwh henrikwh@microsoft.com Agenda Sikkerhed i medierne Trusselssenarier Mest

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

WT-1011RC Programmer User Guide

WT-1011RC Programmer User Guide WT-1011RC Programmer User Guide Firmware Version 1.9 Note: 1. Information in this manual is subject to change without notice and does not represent a commitment of manufacturer. 2. Manufacturer shall not

Læs mere

PID2000 Archive Service

PID2000 Archive Service PROLON CONTROL SYSTEMS Herstedvesterstræde 56 DK-2620 Albertslund Danmark Tlf.: (+45) 43620625 Fax: (+45) 43623125 PID2000 Archive Service Bruger vejledning Juni 2002 Denne manual beskriver brugen af softwaren

Læs mere

Godkendelsesdato Version Rettet af Rettelse(r)

Godkendelsesdato Version Rettet af Rettelse(r) REST/SOAP Services Referenceimplementation Godkendelsesdato Version Rettet af Rettelse(r) 17/6-2010 1.0 Stefan L. Jensen 1 Indhold 1. Indledning... 3 2. Visual Studio solution... 3 3. Konfiguration...

Læs mere

1 IKON BETEGNELSE INDLAGT SKAL TILFØJES

1 IKON BETEGNELSE INDLAGT SKAL TILFØJES Projekter Et Projekt, består af alle de ingredienser, der er samlet sammen til et bestemt design. Til en samplerquilt, kan man f.eks gemme alle de forskellige blokke man har tænkt sig at bruge. Emnerne

Læs mere

Netværks opsætning af IP modulet:

Netværks opsætning af IP modulet: Netværks opsætning af IP modulet: Installer vcomsetup til ip modul.exe fra den modtagne Mini CD. Efter installation start VCOM programmet Sørg for at enheden er tilsluttet netværket og vælg Search Registrer

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

Projekt - RoboNet Del Journal.

Projekt - RoboNet Del Journal. Projekt - RoboNet Del Journal. Udarbejdet af: Klaus Jørgensen. Gruppe: Jacob Clausen, Klaus Jørgensen og Ole Rud It og Elektronikteknolog, 2a Erhvervsakademiet Fyn Udarbejdet i perioden: 20/01-03 03/02-03

Læs mere

Asus computer og hvad man kan gøre ved den. For flere år siden købte jeg en lille maskine der hed Asus Eee Pc 900.

Asus computer og hvad man kan gøre ved den. For flere år siden købte jeg en lille maskine der hed Asus Eee Pc 900. Asus computer og hvad man kan gøre ved den. For flere år siden købte jeg en lille maskine der hed Asus Eee Pc 900. Den kørte med et Linuxsystem, som jeg ikke kunne få til at virke godt, så jeg brændte

Læs mere

Abstrakte datatyper C#-version

Abstrakte datatyper C#-version Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype

Læs mere

Kursusarbejde 2 Grundlæggende Programmering

Kursusarbejde 2 Grundlæggende Programmering Kursusarbejde 2 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 31. oktober 2003 Indhold 1. Kode 2 1.1. hotel.h.................................................... 2 1.2. hotel.cc...................................................

Læs mere

Spring Schema Extension eller Spring Domain Specific Languages

Spring Schema Extension eller Spring Domain Specific Languages Spring Schema Extension eller Spring Domain Specific Languages Forfatter: Jeppe Cramon Cramon Consulting (http://www.cramon.dk) Dato: 23/7-2005 Efter at have arbejdet med Spring i lang tid, har jeg lagt

Læs mere