Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 2 » ueb3-2016-03-02-2
Uebung/JIT
Was haben wir in der Uebung gemacht?
- Interpreter (inkl. durchfaedeln)
- JIT, hier wurde gefragt:
- Trampolin & wie mans los wird
- Registervergabe per Linear Scan (inkl. grober Erklaerung wie man die Lebensspannen berechnet)
- inlining, was muessen wir beachten (Adressen & returns patchen, symb. Register umbennen)
Prolog
M.A.U.S? Match/Attach/Unify/Succeed
Simples Beispiel:
g(a, b). g(c ,d).
Anfrage: g(c, X), was macht M.A.U.S. damit?
Haskell
Haskell - Was muss man bei der Uebersetzung beachten
Closures fuer zB fluechtende/unterversorgte Fkts, grobes Beispiel per unterversorgtem +
Linker&Loader
Was passiert bei dynamischen shared libs?
Exceptions
Exceptions, wie geht das?
Stack Cutting & Stack Unwinding erklaeren
GC
Referenzzaehler erklaeren (& Nachteile? → Zykl. Muell wird nicht erkannt)
Mark&Sweep erklaeren (& Wurzeln nennen: Register, Stack und globale Var.)
Basisimplementierung ist rekursiv, warum ist das schlecht?
Rekursion bei Speicherknappheit
Kopierende Speicherbereiniger erklaeren (& Nachteile? → Nur halber speicher wird genutzt)
Generationelle Speicherbereiniger erklaeren
Zu gen. Speicherber.: Warum kann es in Haskell keine Referenzen in die junge Generation geben? Immutable Objekte
Programmiersprache D (C++ mit GC), wie bekommst du den GC kaputt? Adressen in Ints casten, in Dateien speichern oder per Netzwerk verschicken ;)
Prozedurale Abstraktion
Viel Code, aber System mit sehr wenig Speicher, was mach ich?
ARM Thumb (Subset des Instruktionssets mit kuerzerer Darstellung 16 anstelle von 32bit)
Instr. komprimieren (& beim Laden entpacken + Umrechnen von unkompr. auf kompr. Addr.)
XText
Was ist Metamodell/Modell?