Presentation laddar. Vänta.

Presentation laddar. Vänta.

Systemprogrammering för ingenjörer TDBB15 – HT03  Lärare och handledare  Thomas Johansson  Samuel Carlsson

Liknande presentationer


En presentation över ämnet: "Systemprogrammering för ingenjörer TDBB15 – HT03  Lärare och handledare  Thomas Johansson  Samuel Carlsson"— Presentationens avskrift:

1 Systemprogrammering för ingenjörer TDBB15 – HT03  Lärare och handledare  Thomas Johansson thomasj@cs.umu.sethomasj@cs.umu.se  Samuel Carlsson samme@cs.umu.sesamme@cs.umu.se

2 I dag  Information om kursen  Labbar  Registrering  Introduktion till C och Unix

3 Om kursen  Det är viktigt att ni kommer igång med labbarna så fort som möjligt annars kommer ni att få stora problem rent tidsmässigt.  Inga bonuspoäng Vi har inga bonuspoäng eller nåt liknande på kursen.  Inlämningstider För att få labbarna rättade så ska labbarna lämnas in i tid.

4 Om kursen  Handledning Samuel har handledning på sitt rum, se tider på kursens webbsida  Webben Nästan all information ges i elektronisk form – antingen via kursens hemsida på http://www.cs.umu.se/kurser/TDBB15/HT03/ eller via mail till gruppen TDBB15. Ta för vana att alltid kolla webben före varje föreläsning.  E-post Om du vill skicka posten vidare – skapa en fil.forward i din root-katalog med nya adressen i.

5 Regler  Läs igenom länkarna på kursens hemsida  Regler och riktlinjer vid DV@UmU Riktlinjer vid labgenomförande Att skriva labrapport Tentamensregler Hederskodex Datorkontraktet (som du ska ha undertecknat och lovat följa) Internansökan Riktlinjer vid labgenomförande Att skriva labrapport Tentamensregler Hederskodex Datorkontraktet Internansökan  Speciellt nya labregler http://www.cs.umu.se/information/LabreglerV3.htm http://www.cs.umu.se/information/LabreglerV3.htm

6 Obligatoriska inlämningsuppgifter (’Labbar’)  Tre stycken labbar  Uppvärmning  Minishell  Kanske Kryptering  Inlämningstider finns på schemat  Observera info på labbens förstasida  Labbarna introduceras på gruppövningstiderna  Börja i tid !  Om du missar en inlämningstid kan det ta lång tid innan din labb rättas...  Gruppövningar: labbar + frågestund

7 Boken  En slags ’illiustrerad manual’  Inte så mycket teori om uppbyggnaden av operativsystem, men det är inte kursens huvudmål  Många exempel; de finns på webben också

8 Kursplan

9 Systemprogrammering Syftet med kursen är att ni skall lära er att programmera i en Unix omgivning på en nivå som är lägre än vad ni tidigare är vana vid. Under kursen kommer ni att bli "smutsiga" om fingrarna genom att fara runt och utnyttja finesser i operativsystemet på ett sätt som ni inte har gjort i tidigare kurser. Unix är det operativsystem som vi använder, det finns hundratals andra, från gigantiska system till små realtidskärnor.

10 C-programmering  Förhoppningsvis kan ni redan programmera i C  Det finns flera olika c-stilar: K&R, Allman etc  Exemplen liknar Unix:s källkod, men kanske inte är de mest läsbara  Tidiga system anpassade till låga prestanda hos maskinvaran -> mycket ’tricks’ för att spara tid, minne  Kompilatorer numera är ganska intelligenta  ’Okynnesoptimering’ kan t.o.m. leda till att program går långsammare...  Välj bra algoritmer men låt kompilatorn sköta resten !  Programmerartid är dyrare än cpu-tid !

11 Unix  Unix är skrivet i C, ursprungligen av Dennis Ritchie, Ken Thompson och andra, på Bell Labs i början av 70- talet.  Ursprung i Multics, namnet är en liten ordvits.  Många versioner  BSD - Berkeley  System V – AT&T  POSIX – IEEE/ISO standard  Linux – Linus Torvalds ...

12 Operativsystem  Många funktioner:  Resurshantering  Cpu-tid  Primärminne  Lagringsutrymme  Användargränssnitt  Filsystem  Säkerhet  Nätverk  API

13 Snabbgenomgång  Fleranvändarsystem Många tjänster och möjligheter (och vissa faror) Fönstersystem Kommandorad  Några vanliga begrepp Skalprogram Filsystem - är som de allra flesta andra filsystem hierarkiskt i sin uppbyggnad. Sökväg Working directory Hemkatalog

14 Filer  File descriptors Stdin, stdout, stderr Buffrad och obuffrad I/O

15 Program, processer  Program Processer Process control Från skalprogram Från ett C program  User ID Group ID

16 Signaler  Signaler Tidsangivelser

17 API, bibliotek  Systemanrop och biblioteksanrop  Både C och Unix deklarerar ett antal olika begränsningar, tex på hur stora tal som kan representeras, hur långt ett filnamn kan vara eller hur många filer som kan vara öppna samtidigt.  Systemdatatyper

18 Diverse  C Pekare till "nånting" Kom ihåg att man kan deklarera "pekare till nånting" genom att deklarera en pekare till void.


Ladda ner ppt "Systemprogrammering för ingenjörer TDBB15 – HT03  Lärare och handledare  Thomas Johansson  Samuel Carlsson"

Liknande presentationer


Google-annonser