Not logged in. · Lost password · Register

Derrick
Member since Nov 2013
11 posts
Subject: Klausur Juli 2009 Aufgabe 3
Schönen guten Abend euch allen,
kann mir jmd erklären wie diese aufgabe zu lösen ist ?

c) Die Programmiersprache C unterscheidet vier Kategorien in Bezug auf die Gültigkeit
(d. h. die Sichtbarkeit) von Variablen. Nennen Sie die verschiedenen Gültigkeitsbereiche
und beschreiben Sie, wie bzw. wo man eine Variable defur jeweils
anlegen muss. (4 Punkte)


Ich hätten geschriebn:

.bss: Enthält alle mit 0 initialisierten Variablen
.data: Enthält alle mit anderen Werten initialisierten Variablen
.rodata: Enthält alle unveränderlichen Variablen
.text: Enthält den Programmcode

d) Welche Bedeutung haben die Gültigkeitsbereiche in Bezug auf Nebenläufigkeit bei
Interrupts (d. h. wie sind Variablen der verschiedenen Kategorien von Nebenläufigkeitsproblemen
betroffen und warum ist dies so)? (4 Punkte)


Danke im voraus
LEP
Member since Dec 2014
9 posts
Für die vier Kategorien wieder die Folie 12-5 konsultieren. https://www4.cs.fau.de/Lehre/SS16/V_GSPIC/Vorlesung/Folien…

bei der c) einfach die Tabelle abschreiben.

bei d)
Bei lokalen Variablen kann die ISR nicht auf die Variablen zugreifen. Daher gibt es auch keine Nebenläufigkeitsprobleme.

Allgemein gibt es ein Nebenläufigkeitsproblem, wenn eine ISR eine Variable schreibt, evtl auch beim auslesen.

Bei globalen nicht static Variablen können alle Module auf die Variable zugreifen und damit alle ISRs die in irgendeinem von denen definiert sind.

Bei globalen static Variablen kann nur die ISR der eigenen Moduls darauf zugreifen.
This post was edited on 2016-07-20, 11:16 by LEP.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O :troll:
Special characters:
Go to forum
Powered by the Unclassified NewsBoard software, 20110527-dev, © 2003-8 by Yves Goergen