tamberg / fhnw-syspr-work-11

FHNW Modul System-Programmierung (syspr) Hands-on Lektion 11

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

System-Programmierung

Hands-on zu Lektion 11

Für Slides und Code Beispiele, siehe Lektion 11

Achtung: Arbeiten Sie nicht direkt auf diesem Repository.
Prüfen Sie die vorhandenen Forks, um das Repository für Ihre Klasse zu finden.

a) Kalender-Zeit, 5'

  • Lesen Sie das folgenden TLPI Beispiel Programm:
    calendar_time.c
  • Vergleichen Sie den Output der Kommandos:
    $ ./date
    $ ./calendar_time

b) Zeit parsen / formatieren, 5'

  • Lesen Sie das folgenden TLPI Beispiel Programm:
    strtime.c
  • Vergleichen Sie den Output der Kommandos:
    $ ./strtime "9:39:46pm 1 Feb 2011" "%I:%M:%S%p %d %b %Y"
    $ ./strtime "9:39:46pm 1 Feb 2011" "%I:%M:%S%p %d %b %Y" "%F %T"
  • Geben Sie das Datum im ISO 8601 Format aus.

c) Zeitmessung, 15'

  • Schreiben Sie ein eigenes time Programm, my_time.c
  • Das zu messende Programm soll aus argv gelesen und mit fork() und execve() gestartet werden.
  • Der Parent Prozess wartet mit wait(), und bestimmt die Laufzeit, real und CPU Zeit, des Child Prozesses.
  • Die Ausgabe soll derjenigen von time entsprechen.

d) Timer, 5'

  • Lesen Sie das folgenden TLPI Beispiel Programm:
    real_timer.c
  • Testen Sie den Timer, z.B. mit den Kommandos:
    $ ./real_timer 1 800000 1 0 # 1.8s, 1s Periode
    $ ./real_timer 3 0 # einmaliger Timer, nach 3s

About

FHNW Modul System-Programmierung (syspr) Hands-on Lektion 11