• Keine Ergebnisse gefunden

/bin/eho Hallo &gt

N/A
N/A
Protected

Academic year: 2021

Aktie "/bin/eho Hallo &gt"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

MihaelMattes Blatt6(a+b)

A

Systemnahe Software (II)

im Sommersemester 2009

Abgabetermin:10.Juni2009

DiesistdieGesamtversiondesBlatts6,bestehendausTeilaundb.

tinysh

Die folgenden Aufgaben befassensihweiter mitdertinysh.Zum Bearbeiten der Aufgaben

empehltessih,nihtdieeigenebearbeiteteVersiondertinyshzuverwenden,sondernsihin

dieBeispiellösungdesletztenAufgabenblattseinzuarbeiten.

22 Verbesserter Parser (5 Punkte)

Bisherkonnte dietinyshnurdannEingabeumlenkungdurhführen,wennkein Trennzeihen

zwishen den Umlenkungspfeilenstanden. ErweiternSie den Parser der tinysh so,dass die

UmlenkungauhmitTrennzeihenzwishendemDateinamenunddemUmlenkungspfeilfunk-

tioniert.

EinBeispielfürdiealteVarianteist

% /bin/eho Hallo >datei

Nunsollauhdiesfunktionieren:

% /bin/eho Hallo > datei

23 Jobkontrolle (Extrapunkte)

Hinweis:DieseAufgabeistfreiwilligundwirdgesondertbewertet.Shiken SieIhreLösung

direktperE-MailandenÜbungsleiter.DieshönsteLösungwirdindenÜbungenvorgestellt

werden.

DietinyshbesitztbisherkeineJobkontrolleesistalsonihtmöglih,indertinysheinen

demeinige DateneinesgestartetenProzesses verwaltetwerden.Hier müsstenzumindestdie

PIDdesKindprozessesundeineJobnummerverwaltetwerden.

AuÿerdemmüssenSieBuiltinszurJobkontrolleshreibenundauhdieMöglihkeitshaen,

Jobs mit& imHintergrundzu starten. Hinweise liefertauh diebash-Manpage unter dem

StihwortJOBCONTROL.

Signale

Beahten SiebeimUmgangmitSignalbehandlernimmerdieHinweiseimSkriptabSeite 63

(Zur Speiherklassevolatile) undverwendenSienuralsvolatiledeklarierteVariablen,

lokaleVariablensowieAsyn-Signal-Safe-Funktionenwiesignal(),abort()und_Exit().

24 Signale senden und auswerten (7 + 3 Punkte)

ShreibenSieeinProgrammsigsend.,welheseinenKindprozesserzeugt,kurzwartetund

danaherstdasSignalSIGHUPunddanndasSignalSIGINTandenKindprozesssendet.

DerKindprozesssollfürbeide SignaleeinenSignalhandler einrihtenunddanahaufein

Signalwarten(sieheManpagepause(2)).SIGHUPsollignoriertwerdenundderKindprozess

sollsihbeimErhaltvonSIGINTbeenden.

Wenndiesfunktioniert,erweiternSiedasProgrammso,dassderErzeugerprozessermittelt,

welhesSignalzurBeendigungdesKindesgeführthat.FallsderKindprozessnihtdurhein

Signalbeendetwurde,sollstattdessenderExitstatusdesKindsausgegebenwerden.

25 Signalbehandlung (6 + 4 + 5 Punkte)

ErweiternSiedasProgrammausdervorherigenAufgabeso,dassderKindprozessdieSignal-

nummerdesjeweilsempfangenenSignalsausgibt.BeahtenSiedabeidieHinweiseweiteroben.

DerElternprozesssollnunzusätzlihnohdasSignalSIGQUITsendenkönnen(unddasKind

diesesabfangen).

WennSiediesgeshathaben,sollderKindprozessauhnohdasSignalSIGTERMab-

fangenkönnen,dessenSignalnummerausgebenunddanahterminieren.

ZumShlusssolltenSieIhremTutorerklärenkönnen,warumdieEinrihtungeinesSignal-

handlersfürdieSignalSIGKILLundSIGSTOPnihtfunktionierenkann.

Erweiterte Signalbehandlung mit sigation (Blatt 6b)

DadieSignalbehandlungsöglihkeitennahdemC-Standardteilweiseeingeshränktsind,gibt

esimPOSIX-StandardeineumfangreihereShnittstellezurSignalbehandlung.Diesewirdüber

den Systemaufrufsigation(2) angesteuert. Hinweis:Umsigation() nutzenzu können,

mussdasMakro__EXTENSIONS__deniertwerden.IngkannmandiesmitdemKomman-

dozeilenparameter-D__EXTENSIONS__erreihen.

(2)

ShreibenSieeinProgrammholzmihl.,welhesnuraufdasSignalSIGUSR2wartetunddem

Prozess,deresgesendethat,einSIGUSR1zurükshikt.Hinweis:Siemüssenhiersigation()

verwenden,daSiesonstnihtwissenkönnen,welherProzessdasSignalSIGUSR1vershikt

hat.

27 De Randhten (6 Punkte)

ShreibenSieeinProgrammrandfihten.,welhesüberdieUmgebungsvariableMICHLdie

PIDeinesholzmihl.-Prozesseserhältundprüft,obdiesernohlebt.HierzusolldasSignal

SIGUSR2geshiktwerdenundgeprüftwerden,obordnungsgemäÿSIGUSR1zurükgesendet

wird.VerwendenSieauhinrandfihten.denAufrufsigation().

28 VerwendungvonMakeles(3Punkte+3Extrapunkte)

ShreibenSieeinMakele,welhessowohlholzmihl.alsauhrandfihten.kompilieren

kann.DieExtrapunktegibtes,wenndasMakeleunterderAngabevonmake mihltestin

derLageist,erstholzmihl.zustartenunddanahsogarrandfihten.mitderpassenden

Umgebungsvariableausführenkann.

Referenzen

ÄHNLICHE DOKUMENTE

Eine detaillierte Analyse der europäischen Innovationspolitik zeigt jedoch, dass ein wirklicher Paradigmenwechsel nicht vollzogen wird, realpolitisch hat sich bisher

[r]

Nicht nur, dass die Wohnungen seniorengerecht gestaltet sind: Die Bewohner können künf- tig auch auf die Dienste einer im Haus an- sässigen Sozialstation setzen, die ihnen

Während Berlin »Trenntstadt« wird, ar- beiten die Wertstoff-Scouts im Märki- schen Viertel Schritt für Schritt daran, ihre Ziele umzusetzen und möglichst viele Mitschüler,

Doch bei Gerhard Hammer und seinem Team gibt es genau das: Ein Dankeschön für die Sinne schon bei der reinen Empfehlung für einen der besten Makler Deutschlands und ein

Das Buch „Die Spiderwick Geheimnisse - Eine unglaubliche Endeckung“ ist mehr als spannend und neben Menschen kommen eine Reihe anderer phantastischer Wesen darin vor. Die

So setzt Phil alles daran, dass Red Cat nun auch ihn und seine Freunde trainieren soll. Doch wenn die heimtückischen Kater, die frühere Mannschaft von Red Cat davon Wind

Es handelt vom ersten Abenteuer der Hexe Lilli, in dem erzählt wird, wie sie überhaupt erst zu einer Hexe wird. Die alte Hexe Surulunda wird immer schussliger und ist nicht mehr in