Systemprogrammierung at Universität Erlangen-Nürnberg

Flashcards and summaries for Systemprogrammierung at the Universität Erlangen-Nürnberg

Arrow Arrow

It’s completely free

studysmarter schule studium
d

4.5 /5

studysmarter schule studium
d

4.8 /5

studysmarter schule studium
d

4.5 /5

studysmarter schule studium
d

4.8 /5

Study with flashcards and summaries for the course Systemprogrammierung at the Universität Erlangen-Nürnberg

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Gegeben sei folgendes Szenario: zwei Threads werden auf einem Monoprozessorsystem mit der Strategie First Come First Served verwaltet. In jedem Faden wird die Anweisung i++; auf die gemeinsame, globale Variable i ausgeführt.

Welche der folgenden Aussagen ist richtig:

Select the correct answers:

  1. In einem Monoprozessorsystem ohne Verdrängung ist keinerlei Synchronisation
     erforderlich.

  2. Die Inkrementoperation muss mit einer CAS-Anweisung nicht-blockierend synchronisiert werden.

  3. Die Operation i++ ist auf einem Monoprozessorsystem immer atomar.

  4. Während der Inkrementoperation müssen Interrupts vorübergehend unterbunden
     werden.

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Was muss ein(e) Software-Entwickler(in) unbedingt beachten, damit seine/ihre  Programme nicht Opfer eines Hacker-Angriffs werden?

Select the correct answers:

  1. Bei Verwendung der Programmiersprache C muss darauf geachtet werden, dass die
     Stringoperationen strcpy() und strcat() nur eingesetzt werden, wenn die Länge des zu übertragenden Strings noch in das Ziel-Array passt.

  2. Es dürfen keine vorgefertigten Bibliotheksfunktionen verwendet werden, weil deren
     Implementierung als nicht vertrauenswürdig eingestuft werden muss.

  3. Der Quellcode darf nicht herausgegeben werden, damit Schwachstellen nicht entdeckt

    werden können.
  4. Der Einsatz der Bibliotheksfunktion fgets() muss verboten werden, da diese Funktion
    nicht sicher ausgeführt werden kann.

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Beim Zugriff auf Datei-Inhalte wird typischerweise zwischen sequentiellem und  wahlfreiem Zugriff unterschieden. Welche Aussage ist richtig?

Select the correct answers:

  1. bei wahlfreiem Zugriff ist ein wohlgeordnetes Zugriffsmuster nicht erkennbar und
     das Verfahren ist z. B. bei Festplatten geeignet

  2. wahlfreier Zugriff erfolgt nach beliebigem Muster und ist ideal bei allen denkbaren
     Speichermedien geeignet

  3.  bei sequentiellem Zugriff d¨urfen verschiedene Benutzer nur hintereinander auf die
     Datei zugreifen

  4. bei wahlfrei organisiertem Massenspeicher ist sequentieller Zugriff nicht möglich

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Für welchen Zweck wird der Systemaufruf listen() benutzt?

Select the correct answers:

  1. Mit listen() wird ein Socket für die Verbindungsannahme vorbereitet. Ein Parameter
     gibt an, wie viele Verbindungsanfragen vor deren Annahme gepuffert werden können.

  2. Damit das Betriebssystem überhaupt Systemaufrufe annimmt, muss es erst mit
    listen() in einen Modus des Zuhörens gebracht werden.

  3. Der Aufruf von listen() wartet solange an einem Socket, bis eine einkommende
     Verbindungsanfrage vorliegt.

  4. Mit listen() wird ein Socket für die Verbindungsannahme vorbereitet. Ein Parameter
     gibt an, wie viele laufende Verbindungen maximal möglich sind.

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Im regulären Ablauf eines Anwendungsprogramms und einer Signalbehandlungsfunktion (bzw. im Ablauf eines Betriebssystems und einer Unterbrechungsbehandlungsfunktion) wird auf gemeinsame Daten modifizierend zugegriffen.
Welche Aussage ist falsch?

Select the correct answers:

  1. Der Aufruf von P-Operationen im Anwendungsprogramm und dazu korrespondierenden V-Operationen in der Signalbehandlung führt nicht zu Verklemmungen

  2. Falscher Einsatz von Schlossvariablen (lock/unlock-Operationen) kann zu Verklemmungen führen

  3. Alle Verfahren der mehrseitigen Synchronisation können eingesetzt werden

  4. Alle Verfahren nicht-blockierender Synchronisation sind einsetzbar

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Man unterscheidet Traps und Interrupts. Welche Aussage ist richtig?

Select the correct answers:

  1. Der Zugriff auf eine logische Adresse kann zu einem Trap führen.

  2. Bei der mehrfachen Ausführung eines unveränderten Programms mit gleicher Eingabe
     treten Interrupts immer an den gleichen Stellen auf.

  3. Der Zeitgeber (Systemuhr) unterbricht die Programmbearbeitung in regelmäßigen
     Abständen. Die genaue Stelle der Unterbrechungen ist damit vorhersagbar. Somit sind solche Unterbrechungen in die Kategorie Trap einzuordnen.

  4. Wenn ein Interrupt einen schwerwiegenden Fehler signalisiert, muss das unterbrochene
     Programm abgebrochen werden.

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Was passiert bei der Verdrängung eines laufenden Prozesses?

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Was ist eine Systemblockade?

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Es gibt verschiedene Ursachen, wie Nebenläufigkeit in einem System entstehen kann (gewollt oder auch ungewollt). Was gehört nicht dazu?

Select the correct answers:

  1. durch die MMU

  2. durch Interrupts

  3. durch preemptives Scheduling

  4. durch Threads auf einem Monoprozessorsystem

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Für lokale Variablen, Aufrufparameter, etc. einer Funktion wird bei vielen  Prozessoren ein sog. Aktivierungsblock (activation record oder stack frame) auf dem Stack 

angelegt. Welche Aussage ist richtig?

Select the correct answers:

  1. Über Zeiger kann man alle Daten des Aktivierungsblocks der aufrufenden Funktion verändern.

  2. Nach dem Rücksprung aus einer Funktion sind Zeiger auf die Speicherzellen ihres
     Aktivierungsblocks nicht mehr gültig. Ein Zugriff über solch einen Zeiger führt dann zu einem Segmentation fault.

  3. Bei rekursiven Funktionsaufrufen kann der Aktivierungsblock in jedem Fall wiederverwendet werden, weil die gleiche Funktion aufgerufen wird.

  4. Der Compiler legt zur Übersetzungszeit fest, an welcher Position im Aktivierungsblock der main-Funktion die globalen Variablen angelegt werden.

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Welche Antwort trifft für die Eigenschaften eines UNIX/Linux-Filedeskriptors  zu?

Select the correct answers:

  1. Ein Filedeskriptor ist eine prozesslokale Integerzahl, die der Prozess zum Zugriff auf
     eine Datei, ein Gerät, einen Socket oder eine Pipe benutzen kann.

  2. Filedeskriptoren sind Zeiger auf Betriebssystemstrukturen, die von den System
     aufrufen ausgewertet werden, um auf Dateien zuzugreifen.

  3. Ein Filedeskriptor ist eine Integerzahl, die über gemeinsamen Speicher an einen
     anderen Prozess übergeben werden kann, und von letzterem zum Zugriff auf eine geöffnete Datei verwendet werden kann.

  4. Beim Öffnen ein und derselben Datei erh¨alt ein Prozess jeweils die gleiche Integerzahl als Filedeskriptor zum Zugriff zur¨uck.

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Was versteht man unter virtuellem Speicher?

Select the correct answers:

  1. Speicher, der einem Prozess durch entsprechende Hardware (MMU) und durch Ein-
    und Auslagern von Speicherbereichen vorgespiegelt wird, aber möglicherweise größer 

    als der verfügbare physikalische Hauptspeicher ist.
  2. Speicher, in dem sich keine Daten speichern lassen, weil er physikalisch nicht vorhanden ist.

  3. Speicher, der nur im Betriebssystem sichtbar ist, jedoch nicht f¨ur einen Anwendungsprozess.

  4. Unter einem Virtuellen Speicher versteht man einen physikalischen Adressraum,
     dessen Adressen durch eine MMU vor dem Zugriff auf logische Adressen umgesetzt
     
    werden.

Your peers in the course Systemprogrammierung at the Universität Erlangen-Nürnberg create and share summaries, flashcards, study plans and other learning materials with the intelligent StudySmarter learning app.

Get started now!

Flashcard Flashcard

Exemplary flashcards for Systemprogrammierung at the Universität Erlangen-Nürnberg on StudySmarter:

Systemprogrammierung

Gegeben sei folgendes Szenario: zwei Threads werden auf einem Monoprozessorsystem mit der Strategie First Come First Served verwaltet. In jedem Faden wird die Anweisung i++; auf die gemeinsame, globale Variable i ausgeführt.

Welche der folgenden Aussagen ist richtig:
  1. In einem Monoprozessorsystem ohne Verdrängung ist keinerlei Synchronisation
     erforderlich.

  2. Die Inkrementoperation muss mit einer CAS-Anweisung nicht-blockierend synchronisiert werden.

  3. Die Operation i++ ist auf einem Monoprozessorsystem immer atomar.

  4. Während der Inkrementoperation müssen Interrupts vorübergehend unterbunden
     werden.

Systemprogrammierung

Was muss ein(e) Software-Entwickler(in) unbedingt beachten, damit seine/ihre  Programme nicht Opfer eines Hacker-Angriffs werden?
  1. Bei Verwendung der Programmiersprache C muss darauf geachtet werden, dass die
     Stringoperationen strcpy() und strcat() nur eingesetzt werden, wenn die Länge des zu übertragenden Strings noch in das Ziel-Array passt.

  2. Es dürfen keine vorgefertigten Bibliotheksfunktionen verwendet werden, weil deren
     Implementierung als nicht vertrauenswürdig eingestuft werden muss.

  3. Der Quellcode darf nicht herausgegeben werden, damit Schwachstellen nicht entdeckt

    werden können.
  4. Der Einsatz der Bibliotheksfunktion fgets() muss verboten werden, da diese Funktion
    nicht sicher ausgeführt werden kann.

Systemprogrammierung

Beim Zugriff auf Datei-Inhalte wird typischerweise zwischen sequentiellem und  wahlfreiem Zugriff unterschieden. Welche Aussage ist richtig?
  1. bei wahlfreiem Zugriff ist ein wohlgeordnetes Zugriffsmuster nicht erkennbar und
     das Verfahren ist z. B. bei Festplatten geeignet

  2. wahlfreier Zugriff erfolgt nach beliebigem Muster und ist ideal bei allen denkbaren
     Speichermedien geeignet

  3.  bei sequentiellem Zugriff d¨urfen verschiedene Benutzer nur hintereinander auf die
     Datei zugreifen

  4. bei wahlfrei organisiertem Massenspeicher ist sequentieller Zugriff nicht möglich

Systemprogrammierung

Für welchen Zweck wird der Systemaufruf listen() benutzt?
  1. Mit listen() wird ein Socket für die Verbindungsannahme vorbereitet. Ein Parameter
     gibt an, wie viele Verbindungsanfragen vor deren Annahme gepuffert werden können.

  2. Damit das Betriebssystem überhaupt Systemaufrufe annimmt, muss es erst mit
    listen() in einen Modus des Zuhörens gebracht werden.

  3. Der Aufruf von listen() wartet solange an einem Socket, bis eine einkommende
     Verbindungsanfrage vorliegt.

  4. Mit listen() wird ein Socket für die Verbindungsannahme vorbereitet. Ein Parameter
     gibt an, wie viele laufende Verbindungen maximal möglich sind.

Systemprogrammierung

Im regulären Ablauf eines Anwendungsprogramms und einer Signalbehandlungsfunktion (bzw. im Ablauf eines Betriebssystems und einer Unterbrechungsbehandlungsfunktion) wird auf gemeinsame Daten modifizierend zugegriffen.
Welche Aussage ist falsch?
  1. Der Aufruf von P-Operationen im Anwendungsprogramm und dazu korrespondierenden V-Operationen in der Signalbehandlung führt nicht zu Verklemmungen

  2. Falscher Einsatz von Schlossvariablen (lock/unlock-Operationen) kann zu Verklemmungen führen

  3. Alle Verfahren der mehrseitigen Synchronisation können eingesetzt werden

  4. Alle Verfahren nicht-blockierender Synchronisation sind einsetzbar

Systemprogrammierung

Man unterscheidet Traps und Interrupts. Welche Aussage ist richtig?
  1. Der Zugriff auf eine logische Adresse kann zu einem Trap führen.

  2. Bei der mehrfachen Ausführung eines unveränderten Programms mit gleicher Eingabe
     treten Interrupts immer an den gleichen Stellen auf.

  3. Der Zeitgeber (Systemuhr) unterbricht die Programmbearbeitung in regelmäßigen
     Abständen. Die genaue Stelle der Unterbrechungen ist damit vorhersagbar. Somit sind solche Unterbrechungen in die Kategorie Trap einzuordnen.

  4. Wenn ein Interrupt einen schwerwiegenden Fehler signalisiert, muss das unterbrochene
     Programm abgebrochen werden.

Systemprogrammierung

Was passiert bei der Verdrängung eines laufenden Prozesses?
– Ein Ereignis tritt ein, dessen Behandlungsverlauf zum Planer führt
– der vom Ereignis unterbrochene laufende Prozess wird eingeplant
– der einzulastende Prozess wird ausgewählt und wieder aufgenommen

Systemprogrammierung

Was ist eine Systemblockade?
Gekoppelte Prozesse warten auf die Aufhebung einer Wartebedingung, welche nur durch einen der gekoppelten, wartenden Prozesse aufgehoben werden kann.

Systemprogrammierung

Es gibt verschiedene Ursachen, wie Nebenläufigkeit in einem System entstehen kann (gewollt oder auch ungewollt). Was gehört nicht dazu?
  1. durch die MMU

  2. durch Interrupts

  3. durch preemptives Scheduling

  4. durch Threads auf einem Monoprozessorsystem

Systemprogrammierung

Für lokale Variablen, Aufrufparameter, etc. einer Funktion wird bei vielen  Prozessoren ein sog. Aktivierungsblock (activation record oder stack frame) auf dem Stack 
angelegt. Welche Aussage ist richtig?
  1. Über Zeiger kann man alle Daten des Aktivierungsblocks der aufrufenden Funktion verändern.

  2. Nach dem Rücksprung aus einer Funktion sind Zeiger auf die Speicherzellen ihres
     Aktivierungsblocks nicht mehr gültig. Ein Zugriff über solch einen Zeiger führt dann zu einem Segmentation fault.

  3. Bei rekursiven Funktionsaufrufen kann der Aktivierungsblock in jedem Fall wiederverwendet werden, weil die gleiche Funktion aufgerufen wird.

  4. Der Compiler legt zur Übersetzungszeit fest, an welcher Position im Aktivierungsblock der main-Funktion die globalen Variablen angelegt werden.

Systemprogrammierung

Welche Antwort trifft für die Eigenschaften eines UNIX/Linux-Filedeskriptors  zu?
  1. Ein Filedeskriptor ist eine prozesslokale Integerzahl, die der Prozess zum Zugriff auf
     eine Datei, ein Gerät, einen Socket oder eine Pipe benutzen kann.

  2. Filedeskriptoren sind Zeiger auf Betriebssystemstrukturen, die von den System
     aufrufen ausgewertet werden, um auf Dateien zuzugreifen.

  3. Ein Filedeskriptor ist eine Integerzahl, die über gemeinsamen Speicher an einen
     anderen Prozess übergeben werden kann, und von letzterem zum Zugriff auf eine geöffnete Datei verwendet werden kann.

  4. Beim Öffnen ein und derselben Datei erh¨alt ein Prozess jeweils die gleiche Integerzahl als Filedeskriptor zum Zugriff zur¨uck.

Systemprogrammierung

Was versteht man unter virtuellem Speicher?
  1. Speicher, der einem Prozess durch entsprechende Hardware (MMU) und durch Ein-
    und Auslagern von Speicherbereichen vorgespiegelt wird, aber möglicherweise größer 

    als der verfügbare physikalische Hauptspeicher ist.
  2. Speicher, in dem sich keine Daten speichern lassen, weil er physikalisch nicht vorhanden ist.

  3. Speicher, der nur im Betriebssystem sichtbar ist, jedoch nicht f¨ur einen Anwendungsprozess.

  4. Unter einem Virtuellen Speicher versteht man einen physikalischen Adressraum,
     dessen Adressen durch eine MMU vor dem Zugriff auf logische Adressen umgesetzt
     
    werden.

Sign up for free to see all flashcards and summaries for Systemprogrammierung at the Universität Erlangen-Nürnberg

Singup Image Singup Image
Wave

Other courses from your degree program

For your degree program Computer Science at the Universität Erlangen-Nürnberg there are already many courses on StudySmarter, waiting for you to join them. Get access to flashcards, summaries, and much more.

Back to Universität Erlangen-Nürnberg overview page

Angewandte IT-Sicherheit

Parallele und Funktionale Programmierung

Rechnerkommunikation

Algorithmen und Datenstrukturen

Mathematik C1

What is StudySmarter?

What is StudySmarter?

StudySmarter is an intelligent learning tool for students. With StudySmarter you can easily and efficiently create flashcards, summaries, mind maps, study plans and more. Create your own flashcards e.g. for Systemprogrammierung at the Universität Erlangen-Nürnberg or access thousands of learning materials created by your fellow students. Whether at your own university or at other universities. Hundreds of thousands of students use StudySmarter to efficiently prepare for their exams. Available on the Web, Android & iOS. It’s completely free.

Awards

Best EdTech Startup in Europe

Awards
Awards

EUROPEAN YOUTH AWARD IN SMART LEARNING

Awards
Awards

BEST EDTECH STARTUP IN GERMANY

Awards
Awards

Best EdTech Startup in Europe

Awards
Awards

EUROPEAN YOUTH AWARD IN SMART LEARNING

Awards
Awards

BEST EDTECH STARTUP IN GERMANY

Awards

How it works

Top-Image

Get a learning plan

Prepare for all of your exams in time. StudySmarter creates your individual learning plan, tailored to your study type and preferences.

Top-Image

Create flashcards

Create flashcards within seconds with the help of efficient screenshot and marking features. Maximize your comprehension with our intelligent StudySmarter Trainer.

Top-Image

Create summaries

Highlight the most important passages in your learning materials and StudySmarter will create a summary for you. No additional effort required.

Top-Image

Study alone or in a group

StudySmarter automatically finds you a study group. Share flashcards and summaries with your fellow students and get answers to your questions.

Top-Image

Statistics and feedback

Always keep track of your study progress. StudySmarter shows you exactly what you have achieved and what you need to review to achieve your dream grades.

1

Learning Plan

2

Flashcards

3

Summaries

4

Teamwork

5

Feedback