! ! !

Größe: px
Ab Seite anzeigen:

Download "! ! !"

Transkript

1 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff: port Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 20 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 02:00:01 amd64 /usr/sbin/cron[30103]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 20 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 12:46:44 amd64 sshd[6516]: Accepted rsa for esser from ::ffff: port Sep 20 12:46:44 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 12:48:41 amd64 sshd[6609]: Accepted rsa for esser from ::ffff: port Sep 20 12:54:44 amd64 sshd[6694]: Accepted rsa for esser from ::ffff: port Sep 20 15:27:35 amd64 sshd[9077]: Accepted rsa for esser from ::ffff: port Sep 20 15:27:35 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 16:37:11 amd64 sshd[10102]: Accepted rsa for esser from ::ffff: port Sep 20 16:37:11 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 16:38:10 amd64 sshd[10140]: Accepted rsa for esser from ::ffff: port Sep 21 01:00:01 amd64 /usr/sbin/cron[17055]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 21 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 02:00:01 amd64 /usr/sbin/cron[17878]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 21 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 17:43:26 amd64 sshd[31088]: Accepted rsa for esser from ::ffff: port Sep 21 17:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 17:53:39 amd64 sshd[31269]: Accepted rsa for esser from ::ffff: port Sep 21 18:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 19:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 01:00:01 amd64 /usr/sbin/cron[4674]: "#$%&'()*&+,-.+*& (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 22 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 02:00:01 amd64 /usr/sbin/cron[5499]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 22 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 20:23:21 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 01:00:01 amd64 /usr/sbin/cron[24739]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 23 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 02:00:01 amd64 /usr/sbin/cron[25555]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 23 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 18:04:05 amd64 sshd[6554]: Accepted publickey for esser from ::ffff: port ssh2 Sep 23 18:04:05 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 18:04:34 amd64 sshd[6606]: Accepted rsa for esser from ::ffff: port Sep 24 01:00:01 amd64 /usr/sbin/cron[12436]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 24 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 02:00:01 amd64 /usr/sbin/cron[13253]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 24 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 11:15:48 amd64 sshd[20998]: Accepted rsa for esser from ::ffff: port Sep 24 11:15:48 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 13:49:08 amd64 sshd[23197]: Accepted rsa for esser from ::ffff: port Sep 24 13:49:08 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 15:42:07 amd64 kernel: snd_seq_midi_event: unsupported module, tainting kernel. Sep 24 15:42:07 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 15:42:07 amd64 kernel: snd_seq_oss: unsupported module, tainting kernel. Sep 24 20:25:31 amd64 sshd[29399]: Accepted rsa for esser from ::ffff: port Sep 24 20:25:31 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 01:00:02 amd64 /usr/sbin/cron[662]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 25 01:00:02 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 02:00:01 amd64 /usr/sbin/cron[1484]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 25 02:00:02 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 10:59:25 amd64 sshd[8889]: Accepted rsa for esser from ::ffff: port Sep 25 10:59:25 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 10:59:47 amd64 sshd[8921]: Accepted rsa for esser from ::ffff: port Sep 25 11:30:02 amd64 sshd[9372]: Accepted rsa for esser from ::ffff: port Sep 25 11:59:25 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 14:05:37 amd64 sshd[11554]: Accepted rsa for esser from ::ffff: port Sep 25 14:05:37 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 14:06:10 amd64 sshd[11586]: Accepted rsa for esser from ::ffff: port Sep 25 14:07:17 amd64 sshd[11608]: Accepted rsa for esser from ::ffff: port Sep 25 14:08:33 amd64 sshd[11630]: Accepted rsa for esser from ::ffff: port Sep 25 15:25:33 amd64 sshd[12930]: Accepted rsa for esser from ::ffff: port "#$%&'()*&+,-.+*& "#$%&'()*+,'- "#./+&0&12*34512*'&003 "#678'2*+#9:30*;<3' "#=>3?<@;2A1 /+&01()2&3#476 78'2*+;'&1?0&;'LB+;5@3H3H&0U-@3&2*C3&0&-3HV I,-+&((?,(>?03'10+,A0,+3' K3&1M&3@LIW3&B+;C31133+*O*3'3&'3'IX*@3+ 3+*;3*3YC?3*@3+DG Z W[+3?<D4<+3113G\ W[W]$\ W+&03D4<+3113JWG\ ^ 4,1-?'-11&0,?0&;'LW[$_ 859# W[+3?<D4<+3113G\ NN$_ W[W]$\ NN$$ W+&03D4<+3113JWG\ NN$$`` 879 %+-35'&1'?2*B$JB.LW[$$a'&2*0$.` W[+3?<D4<+3113G\ NN$_ W[W]$\ NN$$ W+&03D4<+3113JWG\ /+&01()2&3#456 %1-&50B+;C3113D;<3+E*+3?<1;<3+/3+'3@9 F,'A0&;'3'GH&0-3H3&'1?H3HI,-+&((?,( 5310&HH03>?03'JC#K# " E*+3?<1<31-@3&2*3'B+;C31131L-3H3&'1?H3+ 7M3&2*3+ " B+;C3113NE*+3?<1O(('3'<&3-@3&2*3>?03&C,H P313'N72*+3&53' " 7:B978103HL72*3<,@3+DQ33&'3+M+;RBSG-+3&(3'?,(-@3&2*3B+;C311@&103'NT?+0312*@?'-3'C, /+&01()2&3#4:6 b3w)'12*0wx+33&'3<3+(;@-3'<3' c3&*3'(;@-3'l 4,1-?'-11&0,?0&;'LW[$_ 859# 879 W[+3?<D4<+G\ NN$_ W[W]$\ NN$$ W+&03D4<+JWG\ NN$$ W[+3?<D4<+G\ NN$$ W[W]$\ NN$. W+&03D4<+JWG\ NN$. %+-35'&1'?2*B$JB.LW[$. 4,1-?'-11&0,?0&;'LW[$_ 859# W[+3?<D4<+G\ NN$$ W[W]$\ NN$. W+&03D4<+JWG\ NN$. %+-35'&1'?2*B$JB.LW[$. 879 W[+3?<D4<+G\ NN$_ W[W]$\ NN$$

2 /+&01()2&3#4;6 S+1?2*3Lerhoehe_zaehler()?+53&030'&2*0 -.*<-)L " &HH3+',+3&'B+;C311?,(<&313>?03'C,-+3&(0 C-'A#D*&?+.+*&9 /+&01()2&3#4B6 3&'3-3H3&'1?H3c311;,+23 /+&01()2&3#46 /+&01()2&3#4E6 exec sql CONNECT... exec sql SELECT kontostand INTO $var FROM KONTO WHERE kontonummer = $knr $var = $var - abhebung exec sql UPDATE Konto SET kontostand = $var WHERE kontonummer = $knr exec sql DISCONNECT K3&M?+?@@3@3HI,-+&((?,(-@3&2*3'>?03'1?0C A?''31C,F3*@3+'A;HH3' >3(&'&0&;'<3+D>?03'5?'A9G=)-&,->.+*&J <&3,#?#-.*<-)#2&?#+,*@+A).3+(;@-3'H,11 F-)2<#C-'A#D*&?+.+*&,#GA)<A+?A&H %+-35'&113e;'M?+?@@3@3'K3+32*','-3'1&'< '&2*03&'<3,0&-D<#*#M;03'C&3@@(?@12*G K3&B+;-+?HH03101AO''03D<,+2*I,(?@@G&HH3+ 3&'3UA;++3A03V4,1()*++3&*3'(;@-3?,(0+303'\ 1MX03+53&HB+?d&13&'1?0C<?''?53+

3 /+&01()2&3#4I6 T&+<e;'4'-+3&(3+'-3',0C0 read(command) f=open("/tmp/script","w") write(f,command) f.close() chmod("/tmp/script","a+x") system("/tmp/script") /+&01()2&3#45K6 " " B+;C3113J<&3U<&1Q,'A0V1&'<D<#*#L<&3A3&'3-3H3&'1?H3'>?03'*?53'GJAO''3';*'372*,0C C,-+3&(3' /+&01()2&3#4J6 g<33li,-+&((e&?p;2a?,(3&'3'b+;c311 DE*+3?<J###G5312*+X'A3'L erhoehe_zaehler( ) { flag=read(lock); if (flag == LOCK_UNSET) { set(lock); /* Anfang des kritischen Bereichs */ w=read(adresse); w=w+1; write(adresse,w); /* Ende des kritischen Bereichs */ release(lock); ; B+;5@3HLP;2A9h?+&?5@3'&2*0-312*)0C0 O&(-@.,1LA),+'(.9#$%&'()*&+,-.+*& "#$%&'()*+,'-Jc?23R;'<&0&;'1 "#./+&0&12*34512*'&003,'< -3-3'13&0&-3+4,112*@,11 "#678'2*+;'&1?0&;'1H30*;<3' " B+;-+?HH032*'&12*378'2*+;'&1?0&;' " 70?'<?+<9B+&H&0&e3L:,03d3J73H?M*;+3J:;'&0;+3 " P;2A&'- " i?2*+&2*03' "#=>3?<@;2A1 " >3(&'&0&;','<K3&1M&3@3

4 P)+.+,'(A#QA)A+'(A#456 C,-+3&(0 " H)113''&2*0e3+12*&3<3'3B+;-+?HH313&'L?,2* A+&0&12*3'K3+3&2*3&'J*3&j0<?1 %1&104,(-?53<3+B+;-+?HH&3+3+J<&313 K3<&'-,'-C,-?+?'0&3+3' P)+.+,'(A#QA)A+'(A#476 " A+&0&12*3'K3+3&2*13&' " " A+&0&12*3'K3+3&2*1W?+03' " B+;C31131&'<&'e3+12*&3<3'3'A+&0&12*3' 8)*3)-<<.A'(&+,'(A#$%&'()"#456 " K3+3&2* ','< while ( lock ) { /* warten */ ; lock = true; kritischer_bereich(); lock =

5 8)*3)-<<.A'(&+,'(A#$%&'()"#476 7"#UA),2'(9#XY'(,.A&#8)*NA,,#,MA+'(A)& 'X2*103+<3'A+&0&12*3'K3+3&2* '<?+(L while (true) { while (true) { while (turn = 1) { while (turn = 2) { /* warten */ /* warten */ ; ; kritischer_bereich(); kritischer_bereich(); turn=2; turn=1; e3+*&'<3+0c?23r;'<&0&;'1 453+LA+&0&12*3+K3+3&2*A?''',+?5W32*13@'< 'W3+<3' 8)*3)-<<.A'(&+,'(A#$%&'()"#4;6 ;"#UA),2'(#4_A>>A)69#P*<L+&-.+*&#-2,#V*'>W U-)+-L@A&#2&?#`A'(,A@&?A)#CA+(A&0*@3A while (true) { while (true) { C1=true; C2=true; while (C2) { while (C1) { if (turn = 1) { if (turn = 2) { C1=false; C2=false; while (turn = 1) { while (turn = 2) { /* warten */ /* warten */ ; ; C1=true; C2=true; ; ; ; ; kritischer_bereich(); kritischer_bereich(); turn=2; turn=1; 8)*3)-<<.A'(&+,'(A#$%&'()"#4:6 :"#UA),2'(9#Z1)#[A?A&#=()A-?#,AM-)-.A#U-)+W -L@A\#?+A#]=()A-?#+,.#+&#>)+."#QA)A+'(^#-&NA+3. while (true) { while (true) { C1=true; C2=true; while (C2) { while (C1) { /* warten */ /* warten */ ; ; kritischer_bereich(); kritischer_bereich(); C1=false; C2=false; 8)*3)-<<.A'(&+,'(A#$%&'()"#46 S@.A)&-.+GA9#8A.A),*&,#S@3*)+.(<2, C1=true; C2=true; turn=2; turn=1; while (C2 && turn==2) while (C1 && turn==1) /* warten */; /* warten */; kritischer_abschnitt(); kritischer_abschnitt(); C1=false; C2=false; e3+*&'<3+0c?23r;'<&0&;'1

6 8)*3)-<<.A'(&+,'(A#$%&'()"#4B6 T3''B $ R $?,(&'(%*130C0JA?''B. 13&'3'A+&0&12*3' K3+3&2*'&2*0H3* ' T?+B. 12*;'&HA+&0&12*3'K3+3&2*J<?''W?+R. 12*;' &'(%J<#*#JB $ <,+(03'&2*0&'13&'3'A+&0&12*3'K3+3&2* =A,.W-&?W$A.WV*'>#4=$V6##456 :?12*&'3'&'10+,A0&;'DC#K#H&0<3Hi?H3' E7P[E310?'<730P;2AGJ<&3?0;H?+3&'3P;2A9 h?+&?5@3@&310,'<130c0j?@1;;*'3<?cw&12*3','03+5+;2*3'w3+<3'c,ao''3'# enter: tsl register, flag ; Variablenwert in Register kopieren und ; dann Variable auf 1 setzen cmp register, 0 ; War die Variable 0? jnz enter ; Nicht 0: Lock war gesetzt, also Schleife ret leave: mov flag, 0 ; 0 in flag speichern: Lock 8)*3)-<<.A'(&+,'(A#$%&'()"#4E6 B303+1;'14@-;+&0*H,1a >A+&A#3A3A&,A+.+3A#Q@*'>-?A9 4'-3';HH3'JB$&10&'<3+T*&@3972*@3&(35@;2A&3+0J<#*#L R.[0+,3,'<0,+'[.DB$A?''<3'A+&0#K3+3&2* 'JW3'' 3&'3<3+K3<&'-,'-3''&2*0H3*+-&@0J?@1;3'0W3<3+R.[(?@13 ;<3+0,+'[$W&+<G >?''',+.:O-@&2*A3&03'L B.W?+030?,(%&'@?11&'<3'A+&0#K3+3&2* <?1A?'''&2*013&'J <3''H&00,+'[.<?+(B.&'13&'3'A+&0&12*3'K3+3&2* B.',0C0W&3<3+*;@0<3'A+&0#K3+3&2*JH;';M;@&1&3+0I,-?'-C,&*H <?1A?''?,2*'&2*013&'JW3&@B.e;+<3HK30+303'<&30,+'9 =A,.W-&?W$A.WV*'>#4=$V6##476 E7PH,11&HF?@@3H3*+3+3+RBS1<3' 7M3&2*3+5,11M3++3'J<?H&0A3&'B+;C311?,( 3&'3+?'<3+3'RBS?,(<&3-@3&2*3h?+&?5@3

7 S>.+GA,#2&?#M-,,+GA,#F-).A&#456 4A0&e31T?+03'D5,18W?&0&'-GL " 5310&HH03'T3+0?''&HH0# " " -3130C0W3+<3'# -&5031CW3&A;;M3+&3+3'<3E*+3?<1L " >3+%+C3,-3+1M3&2*3+0g'(;+H?0&;'3'&'3&'3H 5312*+X'A03'B,((3+# " B,((3+# %+C3,-3+ "#$%&'()'%'*+,%-&-, "#$%&'(.#$/'-0*+,%-&-, S>.+GA,#2&?#M-,,+GA,#F-).A&#476 " <?1&*'W&3<3+&'<3'I,10?'<U53+3&0Ve3+130C0# " " %&'?'<3+3+E*+3?<H,11<?1%&'0+303'<31 %+3&-'&113153W&+A3'# " E*+3?<-3W32A0W3+<3'JC#K# <,+2*:32*?'&1H3'<31K30+& H1# $%&'()*&+,-.+*& " 5&1<3+h3+5+?,2*3+3&'3g'(;+H?0&;'?,1<3H "

8 " " " " " " " #define N 100 int count = 0; producer () { while (TRUE) { produce_item (item); if (count == N) sleep(); enter_item (item); count = count + 1; if (count == 1) wake(consumer); // Anzahl der Plätze im Puffer // Anzahl der belegten Plätze im Puffer // Endlosschleife // Erzeuge etwas für den Puffer // Wenn Puffer voll: schlafen legen // In den Puffer einstellen // Zahl der belegten Plätze inkrementieren // war der Puffer vorher leer? consumer () { while (TRUE) { // Endlosschleife if (count == 0) sleep(); // Wenn Puffer leer: schlafen legen remove_item (item); // Etwas aus dem Puffer entnehmen count = count - 1; // Zahl der belegten Plätze dekrementieren if (count == N-1) wake(producer); // war der Puffer vorher voll? consume_item (item); // _A-?@*'>W8)*L@A<#LA+,@AAM#a#`->A#476 8)*L@A<2),-'(A9 T?A3,M97&-'?@()+3&'3'a';2*'&2*0a 12*@?(3'<3'B+;C311W&+<&-';+&3+0 F?@12*3 c3&*3'(;@-3 T32A+,( U&+-3'<W&3V()+ 1MX03+3 h3+w3'<,'-?,(53w?*+3'### VERBRAUCHER n=read(count); /* n=0 */ sleep(); ERZEUGER.. produce_item(); n=read(count); /* n=0 */ n=n+1; write(n,count);

9 " <3113'W?A3,MM3'<&'-5&0130C3'# " K3&$#%%+./<?1W?A3,MM3'<&'-5&0<31E*+3?<1 )53+M+)(3'aW3'' C0&10J<3'E*+3?<'&2*0 $A<-M(*)A#476 K3&F+3&-?533&'3173H?M*;+1 " " 73H?M*;+9T3+0,H$3+*O*3'DW3''31A3&'3'?,( <3'73H?M*;+W?+03'<3'E*+3?<-&50G R;<31&3*0<?''&HH3+1;?,1L wait (&sem); /* Code, der die Ressource nutzt */ signal $A<-M(*)A#456 K3&H4'(;+<3+'3&'3173H?M*;+1 DB9;<3+F-+.9fM3+?0&;'GL " " 3&'+3&*3'JW3''<3+73H?M*;+9T3+0_&10# $A<-M(*)A#4:6 h?+&?'03li3-?0&e373h?m*;+9t3+03 " " 4'(;+<3+'DT4gEGL W3''<3+73H?M*;+9T3+0#_&10# " F+3&-?53D7gbi4PGL

10 $A<-M(*)A#4;6 b2.ata#476 70?'<?+<9h?+&?'03L 73H?M*;+A?''',+ T3+03$_?''3*H3' h?+&?'03l73h?m*;+?,2*'3-?0&ej 1M3&2*3+0b+Oj3<3+ wait (sem) { if (sem>0) sem--; else BLOCK_CALLER; wait (sem) { if (sem<1) BLOCK_CALLER; sem--; signal (sem) { if (P in QUEUE(sem)) { wakeup (P); remove (P, QUEUE); else sem++; signal (sem) { if (P in QUEUE(sem)) { wakeup (P); remove (P, QUEUE); sem++; b2.atd<2.,?@at2@,1&;'gc#l+&y)a)#$a<-m(*)j?@1;3&'73h?m*;+j<3+',+<&3t3+03_n$?''3*h3'a?'' wait (mutex) { if (mutex==1) mutex=0; else BLOCK_CALLER; signal (mutex) { if (P in QUEUE(mutex)) { wakeup (P); remove (P, QUEUE); else mutex=1; i3,3g'03+m+30?0&;'l b2.ata#456 Q@*'>+A)A&H b2.at95;;@312*3h?+&?5@3d0+,3n(?@13gj<&3<3'i,9 -+&((?,(-3H3&'1?H-3',0C03>?03'18'2*+;'&1&3+0 " 0+,3LI,-?'-3+@?,50 " (?@13LI,-?'-e3+5;03' L@*'>+A)A&?9%&'E*+3?<J<3+1&2*I,-?'- e3+12*?((3'w&@@jwx*+3'<3&'?'<3+3+e*+3?< I,-?'-*?0J5@;2A&3+0 T?+0312*@?'-3 K3&F+3&-?53L " T?+0312*@?'-33'0*X@0E*+3?<1 3&'3'W32A3' " K30+& H3AO''3':,03d3,'<73H?M*;+3 L@*'>+A)A&?#;<3+ &+'(.WL@*'>+A)A&?&HM@3H3'0&3+3' 5@;2A&3+3'<L W3''<3+h3+1,2*J<3'IX*@3+C,3+'&3<+&-3'J 12*3&03+0 W?+03' '&2*05@;2A&3+3'<L W3''<3+h3+1,2*12*3&03+0

11 S.*<-)A#dMA)-.+*&A& K3&:,03d3'N73H?M*;+3'H)113'<&353&<3' <?+(A3&'?'<3+3+B+;C311?'<&3c3&*3 A;HH3' <+.#$A<-M(*)A&#2&?#b2.ATA& typedef int semaphore; semaphore mutex = 1; semaphore empty = N; semaphore full = 0; producer() { while (TRUE) { produce_item(item); wait (empty); wait (mutex); enter_item (item); signal (mutex); signal (full); consumer() { while (TRUE) { wait (full); wait (mutex); remove_item(item); signal (mutex); signal (empty); consume_entry (item); // Kontrolliert Zugriff auf Puffer // Zählt freie Plätze im Puffer // Zählt belegte Plätze im Puffer // Endlosschleife // Erzeuge etwas für den Puffer // Leere Plätze dekrementieren bzw. blockieren // Eintritt in den kritischen Bereich // In den Puffer einstellen // Kritischen Bereich verlassen // Belegte Plätze erhöhen, evtl. consumer wecken // Endlosschleife // Belegte Plätze dekrementieren bzw. blockieren // Eintritt in den kritischen Bereich // Aus dem Puffer entnehmen // Kritischen Bereich verlassen // Freie Plätze erhöhen, evtl. producer wecken F-).A,'(@-&3A& b*&+.*)a#456 :,03d3N73H?M*;+3e3+W?@03'T?+0312*@?'-3' D<3+B+;C3113J<&312*@?(3'-3@3-0W,+<3'G K3&H4,(+,(e;'1&-'?@DGH,113e0@#3&'B+;C311-3W32A0W3+<3' 4,1W?*@<31C,W32A3'<3'B+;C31131&103&' X*'@&2*31B+;5@3HW&3<&3B+;C31194,1W?*@&H 72*3<,@3+ " FgFfL,.-)>A)73H?M*;+N:,03d " C,(X@@&-L,'(`-'(A)73H?M*;+N:,03d b*.+g-.+*& 4+53&0H&073H?M*;+3','<:,03d3'CW&'-0<3' B+;-+?HH&3+3+Je;+,'<'?2*Q3<3HA+&0&12*3' K3+3&2*W?&0DG,'<1&-'?@DG?,(C,+,(3' T&+<<&313&'3&'C&-31:?@e 'J(,'A0&;'&3+0 <&378'2*+;'&1?0&;''&2*0H3*+ b*&+.*)a?m13@0<&3a+&0&12*3'k3+3&2*3

12 b*&+.*)a#476 " :;'&0;+1?,(<3113'>?03'10+,A0,+3'C,-+3&(3'# " I,Q3<3HI3&0M,'A0A?''',+3&'3&'C&-3+B+;C311?A0&e&H:;'&0;+13&'D<#*#L3&'3:;'&0;+9B+;C3<,+?,1()*+3'G# ' b*&+.*)a#4;6 mutex disk_access = 1; b@3&2*31k3&1m&3@jh&0:;'&0;+ monitor disk { entry read (diskaddr, memaddr) { // Daten von der Platte lesen ; entry write (diskaddr, memaddr) { // Daten auf die Platte schreiben ; init () { // Gerät initialisieren ; ; wait (disk_access); // Daten von der Platte lesen signal (disk_access); wait (disk_access); // Daten auf die Platte schreiben signal (disk_access); disk.read (da, ma); disk.write b*&+.*)a#4:6 b*&+.*)#46 b2.at b*&+.*) B+;C311$ 111 2/-& B+;C311$ >)+.+,'(A) QA)A+'( B+;C /-& H3&'9 1?H3 h?+&?5@3' b2.at B+;C311. >)+.+,'(A) QA)A+'( A+&0Y$DG >)+.+,'(A) QA)A+'( A+&0Y.DG >)+.+,'(A) QA)A+'( b*&+.*) -3H3&'9 1?H3 h?+&?5@3' :;'&0;+&103&'/;'10+,A0J<?1E3&@3&'3+ B+;-+?HH&3+1M+?2*3&10 R;HM&@3+a,'<'&2*0<3+B+;-+?HH&3+3+a&10()+ -3-3'13&0&-3'4,112*@,11C,10X'<&- SH130C,'-D<,+2*<3'R;HM&@3+GC#K#H&0 73H?M*;+N:,03dL " monitor disk semaphore m_disk = 1; " entry funktion () { void funktion () { /* Code */ wait (m_disk); /* Code */ signal (m_disk); "

13 b*&+.*)#4b6 :;'&0;+9/;'C3M03+&''3+0?' " " A+&0&12*3K3+3&2*3C,12*)0C3'J?53+L >?03' R;'<&0&;'9 B+;C3<,+ B+;C3<,+ b*&+.*) 2e (DGZ HYW?&0D2eG\ ### ^ -DGZ ### HY1&-'?@D2eG\ ^ b*&+.*)a#4i6 f() m_wait(cv) B+;C311$B+;C311. g() m_signal(cv) b*&+.*)#4e6 e2,.-&?,g-)+-l@a&#4'*&?+.+*&#g-)+-l@a,6 g<33lb+;c311&':;'&0;+h,11<?+?,(w?+03'j<?11 3&'35310&HH03K3<&'-,'-D2;'<&0&;'G3+()@@0&10#F)+ Q3<3UI,10?'<1e?+&?5@3VT?&09,'<7&-'?@9F,'A0&;'3'L <f`-+.de?+gl?,(+,(3'<3'b+;c3111m3++3'd3+-&50<3' :;'&0;+(+3&G <f,+3&-@de?+gl-31m3++03'b+;c3113'01m3++3' DW32A03&'3'B+;C311J<3+<3':;'&0;+H&0HYW?&0DG e3+@?113'*?0g\ 3+(;@-0,'H&003@5?+e;+h3+@?113'<31:;'&0;+1 b31m3++03b+;c3113@?'<3'&'3&'3+t?+0312*@?'-3j <&3<3+I,10?'<1e?+&?5@3C,-3;+<'30&10 g'03+'3t?+0312*@?'-3'*?53'h;++?'-e;+ B+;C3113'J<&3e;'?,j3'A;HH3' ghm@3h3'0?0&;'h&0:,03dn73h?m*;+l conditionvariable { int queuesize = 0; mutex m; semaphore waiting; wait() { m.lock(); queuesize++; m.release(); waiting.down(); b*&+.*)a#4j6 signal() { m.lock(); while (queuesize > 0){ // alle wecken queuesize--;

14 R/S':?'/* L'/0/C:#$'/* +/,0;'O( O-&(T,-&,/ $&&E<FF$%%:G1#%1:-*%01>'F;'$/%&:$;F H.IJIKFL,/;'%:?3M'&/-'0%%N%&'O'F *(C?'EC%%&(C(P*C/&-?'(.N&CQ b*&+.*)a#45k6 monitor iostream { item buffer; int count; const int bufsize = 64; condition nonempty, nonfull; entry append(item x) { while (count == bufsize) m_wait(nonfull); put(buffer, x); // put ist lokale Prozedur count = 1; m_signal(nonempty); entry remove(item x) { while (count == 0) m_wait(nonempty); get(buffer, x); // get ist lokale Prozedur count = 0; m_signal(nonfull); init() { count = 0; // Initialisierung g-g-#2&?# b*&+.*)a#476 9:';;'<($&&E<FFUUU1O#%1>/'Q';1'>:FV%$C/&;'NF P,#+/,?WCBCFT,-&,/%F00%'1XCBC class BoundedBuffer extends MyObject { private int size = 0; private double[] buf = null; private int front = 0, rear = 0, count = 0; public BoundedBuffer(int size) { this.size = size; buf = new double[size]; public synchronized void deposit(double data) { while (count == size) wait(); buf[rear] = data; rear = (rear+1) % size; count++; if (count == 1) notify(); public synchronized double fetch() { double result; while (count == 0) wait(); result = buf[front]; front = (front+1) % size; count--; if (count == size-1) notify(); g-g-#2&?#b*&+.*)a#456 V*'>+&3#456 m?e?e3+w3'<30:;'&0;+3c,+78'2*+;'&1?0&;' 72*@)113@W;+0U18'2*+;'&C3<V /@?113J&'<3+?@@3:30*;<3'18'2*+;'&C3<1&'<J &103&':;'&0;+ /3&'353'?''03'I,10?'<1e?+&?5@3' T?+0312*@?'-3'L " HYW?&0L W?&0 " HY1&-'?@L ';0&(8 DW32A03&'3'B+;C311G ';0&(84@@ V*'>+&33+W3&03+0<&3F,'A0&;'?@&0X0e;':,03d3'J&'<3H 31e3+12*&3<3'3P;2A9:;<&DI,-+&((1?+03'G,'03+12*3&<30J,'<<3+3'Uh3+0+X-@&2*A3&0VH&03&'?'<3+(310@3-0L R;'2,++3'0c3?<L P313C,-+&((J?'<3+372*+3&53+3+@?,50# R;'2,++3'0T+&03L 72*+3&5C,-+&((J?'<3+372*+3&53+3+@?,50# B+;03203<c3?<L P313C,-+&((J?'<3+3P313+3+@?,50J?53+ A3&'372*+3&53+D1*?+3@;2AG B+;03203<T+&03L 72*+3&5C,-+&((J?'<3+3P313+3+@?,50J?53+ A3&'W3& *+3&53+D,M<?03@;2AG %d2@,1&e3l 72*+3&5C,-+&((JA3&'3?'<3+3'I,-+&((3

15 #,#://'&( /'C> #,#://'&( /'C> #,#://'&( U/-&' E/,&'#&'>( /'C> E/,&'#&'>( U/-&' V*'>+&3#476 #,#://'&( U/-&' E/,&'#&'>( /'C> E/,&'#&'>( U/-&' 'Q#;:%-B' Y Y Y Y * Y Y * * * Y * Y * * Y * * * * 'Q#;:%-B' * * * * * X-'()+'(.A&#456 i?2*+&2*03'?,10?,12*)53+cw3&78103h?,(+,(3 " send (destination, &message); " receive (source, &message); 78'2*+;'3/;HH,'&A?0&;'L E*+3?<15@;2A&3+3'JW3''$%)05CW#'%1%23% '&2*01;(;+0?,1-3()*+0W3+<3'AO''3'JC#K#W3&@ " <&3b3-3'13&03A3&'3'3'01M+32*3'<3'K3(3*@?5-3130C0*?0J @)27(BI V*'>+&3#4:6 X-'()+'(.A&#476 E*+3?<(;+<3+0P;2A&'5310&HH03H:;<,1?'# " g10<3+p;2a9:;<,1h&0<3'e;+*?'<3'3'p;2a1?'<3+3+e*+3?<1e3+0+x-@&2*jw&+<<?1p;2a-3wx*+0# " g10<3+p;2a9:;<,1c,3&'3hp;2a3&'31?'<3+3' E*+3?<1,'e3+0+X-@&2*J5@;2A&3+0<3+E*+3?<J5&1<?1 P;2A-3WX*+0W3+<3'A?''# P;2A&'-9:32*?'&1H3'W3+<3'&HM@3H3'0&3+0 " e;hk30+& h " e;'4'w3'<,'-1m+;-+?hh3'd1m3c&3@@>?03'5?'a3'g h;+03&@l(,'a0&;'&3+0?,2*53&78103h3';*'3-3h3&'1?h3'k?,m01m3&2*3+d<&10+&5,03< 18103H1J2@&3'0913+e3+92;HM,0&'-G i?2*03&@3l "?,(WX'<&-3+<,+2*>,M@&C&3+3'<3+>?03' " h3+w?@0,'-<3+i?h3'()+o,3@@3,'<i&3@'o0&- " h;+a3*+,'-3'-3-3'h3+@,10<3+:3@<,'-'o0&- ghm@3h3'0&3+,'-c#k#<,+2*b&m31;<3+

16 X-'()+'(.A&#4:6,%&'()*&e1#-,%&'()*& " " e3+5&'<,'-1;+&3'0&3+0lu103*3'<3h3+5&'<,'-vderbg Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff: port Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 20 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 02:00:01 amd64 /usr/sbin/cron[30103]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 20 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 12:46:44 amd64 sshd[6516]: Accepted rsa for esser from ::ffff: port Sep 20 12:46:44 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 12:48:41 amd64 sshd[6609]: Accepted rsa for esser from ::ffff: port Sep 20 12:54:44 amd64 sshd[6694]: Accepted rsa for esser from ::ffff: port Sep 20 15:27:35 amd64 sshd[9077]: Accepted rsa for esser from ::ffff: port Sep 20 15:27:35 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 16:37:11 amd64 sshd[10102]: Accepted rsa for esser from ::ffff: port Sep 20 16:37:11 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 16:38:10 amd64 sshd[10140]: Accepted rsa for esser from ::ffff: port Sep 21 01:00:01 amd64 /usr/sbin/cron[17055]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 21 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 02:00:01 amd64 /usr/sbin/cron[17878]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 21 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 17:43:26 amd64 sshd[31088]: Accepted rsa for esser from ::ffff: port Sep 21 17:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 17:53:39 amd64 sshd[31269]: Accepted rsa for esser from ::ffff: port Sep 21 18:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 19:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 01:00:01 amd64 /usr/sbin/cron[4674]: V+&2T9#$%&'()*&+,-.+*& (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 22 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 02:00:01 amd64 /usr/sbin/cron[5499]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 22 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 20:23:21 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 01:00:01 amd64 /usr/sbin/cron[24739]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 23 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 02:00:01 amd64 /usr/sbin/cron[25555]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 23 02:00:01 amd64 syslog-ng[7653]: +<#PA)&A@ STATS: dropped 0 Sep 23 18:04:05 amd64 sshd[6554]: Accepted publickey for esser from ::ffff: port ssh2 Sep 23 18:04:05 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 18:04:34 amd64 sshd[6606]: Accepted rsa for esser from ::ffff: port Sep 24 01:00:01 amd64 /usr/sbin/cron[12436]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 24 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 02:00:01 amd64 /usr/sbin/cron[13253]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 24 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 11:15:48 amd64 sshd[20998]: Accepted rsa for esser from ::ffff: port Sep 24 11:15:48 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 13:49:08 amd64 sshd[23197]: Accepted rsa for esser from ::ffff: port Sep 24 13:49:08 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 15:42:07 amd64 kernel: snd_seq_midi_event: unsupported module, tainting kernel. Sep 24 15:42:07 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 15:42:07 amd64 kernel: snd_seq_oss: unsupported module, tainting kernel. Sep 24 20:25:31 amd64 sshd[29399]: Accepted rsa for esser from ::ffff: port Sep 24 20:25:31 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 01:00:02 amd64 /usr/sbin/cron[662]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 25 01:00:02 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 02:00:01 amd64 /usr/sbin/cron[1484]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 25 02:00:02 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 10:59:25 amd64 sshd[8889]: Accepted rsa for esser from ::ffff: port Sep 25 10:59:25 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 10:59:47 amd64 sshd[8921]: Accepted rsa for esser from ::ffff: port Sep 25 11:30:02 amd64 sshd[9372]: Accepted rsa for esser from ::ffff: port Sep 25 11:59:25 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 14:05:37 amd64 sshd[11554]: Accepted rsa for esser from ::ffff: port Sep 25 14:05:37 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 14:06:10 amd64 sshd[11586]: Accepted rsa for esser from ::ffff: port Sep 25 14:07:17 amd64 sshd[11608]: Accepted rsa for esser from ::ffff: port Sep 25 14:08:33 amd64 sshd[11630]: Accepted rsa for esser from ::ffff: port Sep 25 15:25:33 amd64 sshd[12930]: Accepted rsa for esser from ::ffff: port QA+,M+A@#01)#X-'()+'(.A& IW3&B+;C3113W32*13@'1&2*&HI,-+&((?5 $%&'()*&+,-.+*&#+<#V+&2TWPA)&A@ 40;H?+3fM3+?0&;'3' void funktion (int id) { int otherid = 1 id; char message[10] = ""; // ein Prozess darf zuerst; ID 0 if (id==0) { message = "go"; // unkritische Befehle while message = "go" { receive (otherid, &message); // kritischer Bereich send (otherid, "go"); message = ""; // mehr unkritische Befehle M_+,(0()-&24).5/?,(J M$+,(0()-&24).6/?,(# M_<?+(C,3+10&' <3'A+&0&12*3'K3+3&2* "?,(g'03-3+9h?+&?5@3' D?0;H&2Y130J?0;H&2Y?<<J?0;H&2Y&'2J###G " K&09fM3+?0&;'3'?,(K&0e3A0;+3' D130Y5&0J2@3?+Y5&0J0310Y?'<Y130J###G

17 S.*<-)A#O&.A3A)WdMA)-.+*&A&#456 S.*<-)A#O&.A3A)WdMA)-.+*&A&#4:6 i3,3+e8m"&47218&d.=k&0g'03-3+g "&47218&*3"'*9*"#$%&'%(%".5/: T3+0130C3'L )*+,-.'/0**.;3"'<*,%'&/: 4<<&3+3'L )*+,-.')11*.,%'&<*;3"'/: ]]L )*+,-.'-2.*.;3"'/: 7,50+?*&3+3'L )*+,-.'/34*.,%'&<*;3"'/: 99L )*+,-.'10.*.;3"'/: '%$*9*)*+,-.')11'207)*-80*.2<*;3"'/:?<<&3+0?0;H?+2C,3"'# " S.*<-)A#O&.A3A)WdMA)-.+*&A&#476 S.*<-)A#Q+.WdMA)-.+*&A&#456 '%$*9*)*+,-.'/34')21'*0/**.2<*;3"'/: C&3*0?0;H?+&e;'e?+?5# " " '%$*9*)*+,-.'10.')21'*0/**.;3"'/: '%$*9*)*+,-.'-2.')21'*0/**.;3"'/: ()*+0?0;H?+3"'==:5CW#3"'>>:?,1# " " ',+)53+B;&'03+?'1M+32*3' " <31e3+W3'<303'>?03'08M1?5

18 S.*<-)A#Q+.WdMA)-.+*&A&#476 $M+&#V*'>,#476 %&'C3@'3K&01?,1@313' 7,2*(,'A0&;'3' % +4$*9*;-21';-5/*'4-**.;@2&3%-&4'<*#"%)?%/: % >?7M&'P;2A1'&2*012*@?(3'JA?''H?'1&3&' g'03++,m09k?'<@3+'e3+w3'<3' g'<3hf?@@lc,1x0c@&2*g'03++,m011m3++3'l spinlock_t xy_lock = SPIN_LOCK_UNLOCKED unsigned long flags; spin_lock_irqsave (&xy_lock, flags); /* kritischer Abschnitt */ spin_unlock_irqrestore (&xy_lock, flags); D?A0,3@@3g'03++,M01&'#"?$1&2*3+'J<?''1M3++3' $M+&#V*'>,#456 $M+&#V*'>,#4:6 P;2AH&0:,03d9F,'A0&;'L b3-3'13&0&-3+4,112*@,11 R;<3J<3+3&'7M&'P;2A?'(;+<3+0,'<'&2*0 3+*X@0J@X,(0&'72*@3&(3W3&03+J5&1<?1P;2A e3+()-5?+w&+<du1m&''&'-vg E8ML$+2)#41-8& spinlock_t xy_lock = SPIN_LOCK_UNLOCKED spin_lock (&xy_lock); /* kritischer Abschnitt */ spin_unlock T3''C,K3-&''?@@3g'03++,M01?A0&e&3+01&'<J-3*0 31?,2*3&'(?2*3+L spinlock_t xy_lock = SPIN_LOCK_UNLOCKED spin_lock_irq (&xy_lock); /* kritischer Abschnitt */ spin_unlock_irq (&xy_lock); 12*?@030?@@3g'03++,M01?,15CW#W&3<3+?' 7M&'P;2A11&'<'&2*0U+3A,+1&eVJ<#*#L31&10'&2*0 HO-@&2*J<?1-@3&2*37M&'P;2ACW3&H?@ '?2*3&'?'<3+?'C,(;+<3+'J30W?53&H+3A,+1&e3'

19 $M+&#V*'>,#4;6 P;2A&'-9h3+1,2*H&0$+2)8&'B8#41-L CA-?A)#F)+.A)#V*'>,#476 %1-&5012*;' 3&'3'P313+ %1-&5012*;' 3&'3'72*+3&53+ i;2*a3&'3 7M3++3 read_lock(&lck) write_lock(&lck) if ( spin_try_lock (&xy_lock) ) { /* kritischer Abschnitt */ spin_unlock (&xy_lock); else { /* durfte nicht in den kritischen Abschnitt */ K3&<3F,'A0&;'3'1;@@03H?''&2*0e3+W3'<3'L %'0W3<3+5+?,2*0H?'<?1P;2AD,'<H,11<?'' 4,2**&3+h?+&?'03'()+g'03++,M09K3*?'<@,'-L " +3?<Y@;2AY&+p +3?<Y,'@;2AY&+p " +3?<Y@;2AY&+p1?e3 +3?<Y,'@;2AY&+p+310;+3 " W+&03Y@;2AY&+p W+&03Y,'@;2AY&+p " W+&03Y@;2AY&+p1?e3 CA-?A)#F)+.A)#V*'>,#456 $A<-M(*)A#456 4@03+'?0&e3C,';+H?@3'P;2A1J<&3H3*+3+3 P313C,-+&((3C,@X110a53&12*+3&53'<3HI,-+&((?53+3dA@,1&eDW&33&'';+H?@31P;2AG&10 rwlock_t xy_rwlock = RW_LOCK_UNLOCKED; P313'<3+R;<3 read_lock (&xy_rwlock) ) { /* kritischer Abschnitt, read-only */ read_unlock (&xy_rwlock); i,+53&a@?+3+e+3'','-cw&12*3'@313'<3'n 12*+3&53'<3'B+;-+?HH03&@3'` 72*+3&53'<3+R;<3 write_lock (&xy_rwlock) ) { /* kritischer Abschnitt, read & write */ write_unlock /3+'3@973H?M*;+31&'<U12*@?(3'<3VP;2A1 g103&'73h?m*;+12*;'-3@;2a0jw3+<3'w3&03+3 g' '03'&'3&'3t?+0312*@?'-33&'-3+3&*0# K3&F+3&-?533&'3173H?M*;+1W&+<< W?+03'<3E*+3?<&'<3+T?+0312*@?'-3-3W32A0 73H?M*;+33&-'3'1&2*()+7M3++3'J<&3)53+ 3&'3'@X'-3+3'I3&0+?,H-3*?@03'W3+<3' "

20 $A<-M(*)A#476 $A<-M(*)A#4;6 73H?M*;+31&'<',+&HB+;C3119/;'03d0 D73H?M*;+9I,-+&((A?''<?C,()*+3'J<?11<3+ @)27(GG h?+&?'03'e;'04,)./ " 04,)*.;$%7/: e3+()-5?+ " " 04,)8&'B#41-*.;$%7/: =%M9#/0,)=:+50 $A<-M(*)A#4:6 static DECLARE_SEMAPHORE_GENERIC (name, count); static DECLARE_MUTEX (name); /* count=1 */ >8'?H&12*373H?M*;+9%+C3,-,'- sema_init (&sem,count); init_mutex (&sem); /* count=1 */ h3+w3'<,'-h&0(+./,'<04,)./ down (&sem); /* kritischer Abschnitt */ up (&sem); $A<-M(*)A#46 /* Auszug aus /usr/src/linux/kernel/printk.c */ if (down_trylock(&console_sem)) { console_locked = 1; /* * We own the drivers. We can drop the spinlock and let * release_console_sem() print the text */ spin_unlock_irqrestore(&logbuf_lock, flags); console_may_schedule = 0; release_console_sem(); /* Funktion release_console_sem() führt up(&console_sem); aus */ else { /* * Someone else owns the drivers. We drop the spinlock, which * allows the semaphore holder to proceed and to call the * console drivers with the output which we just produced. */

21 CA-?A)WF)+.A)W$A<-M(*)A#456 >;W'9fM3+?0&;'3'()+P3139,'<72*+3&5C,-+&(( static DECLARE_RWSEM (name); >8'?H&12*373H?M*;+9%+C3,-,'- init_rwsem Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff: port Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 20 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 02:00:01 amd64 /usr/sbin/cron[30103]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 20 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 12:46:44 amd64 sshd[6516]: Accepted rsa for esser from ::ffff: port Sep 20 12:46:44 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 12:48:41 amd64 sshd[6609]: Accepted rsa for esser from ::ffff: port Sep 20 12:54:44 amd64 sshd[6694]: Accepted rsa for esser from ::ffff: port Sep 20 15:27:35 amd64 sshd[9077]: Accepted rsa for esser from ::ffff: port Sep 20 15:27:35 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 16:37:11 amd64 sshd[10102]: Accepted rsa for esser from ::ffff: port Sep 20 16:37:11 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 16:38:10 amd64 sshd[10140]: Accepted rsa for esser from ::ffff: port Sep 21 01:00:01 amd64 /usr/sbin/cron[17055]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 21 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 02:00:01 amd64 /usr/sbin/cron[17878]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 21 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 17:43:26 amd64 sshd[31088]: Accepted rsa for esser from ::ffff: port Sep 21 17:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 17:53:39 amd64 sshd[31269]: Accepted rsa for esser from ::ffff: port Sep 21 18:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 21 19:43:26 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 01:00:01 amd64 /usr/sbin/cron[4674]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 22 01:00:01 amd64 syslog-ng[7653]: STATS: _A-?@*'>, dropped 0 Sep 22 02:00:01 amd64 /usr/sbin/cron[5499]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 22 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 22 20:23:21 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 01:00:01 amd64 /usr/sbin/cron[24739]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 23 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 02:00:01 amd64 /usr/sbin/cron[25555]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 23 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 18:04:05 amd64 sshd[6554]: Accepted publickey for esser from ::ffff: port ssh2 Sep 23 18:04:05 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 23 18:04:34 amd64 sshd[6606]: Accepted rsa for esser from ::ffff: port Sep 24 01:00:01 amd64 /usr/sbin/cron[12436]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 24 01:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 02:00:01 amd64 /usr/sbin/cron[13253]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 24 02:00:01 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 11:15:48 amd64 sshd[20998]: Accepted rsa for esser from ::ffff: port Sep 24 11:15:48 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 13:49:08 amd64 sshd[23197]: Accepted rsa for esser from ::ffff: port Sep 24 13:49:08 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 15:42:07 amd64 kernel: snd_seq_midi_event: unsupported module, tainting kernel. Sep 24 15:42:07 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 24 15:42:07 amd64 kernel: snd_seq_oss: unsupported module, tainting kernel. Sep 24 20:25:31 amd64 sshd[29399]: Accepted rsa for esser from ::ffff: port Sep 24 20:25:31 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 01:00:02 amd64 /usr/sbin/cron[662]: (root) CMD (/sbin/evlogmgr -c "severity=debug") Sep 25 01:00:02 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 02:00:01 amd64 /usr/sbin/cron[1484]: (root) CMD (/sbin/evlogmgr -c 'age > "30d"') Sep 25 02:00:02 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 10:59:25 amd64 sshd[8889]: Accepted rsa for esser from ::ffff: port Sep 25 10:59:25 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 10:59:47 amd64 sshd[8921]: Accepted rsa for esser from ::ffff: port Sep 25 11:30:02 amd64 sshd[9372]: Accepted rsa for esser from ::ffff: port Sep 25 11:59:25 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 14:05:37 amd64 sshd[11554]: Accepted rsa for esser from ::ffff: port Sep 25 14:05:37 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 25 14:06:10 amd64 sshd[11586]: Accepted rsa for esser from ::ffff: port Sep 25 14:07:17 amd64 sshd[11608]: Accepted rsa for esser from ::ffff: port Sep 25 14:08:33 amd64 sshd[11630]: Accepted rsa for esser from ::ffff: port Sep 25 15:25:33 amd64 sshd[12930]: Accepted rsa for esser from ::ffff: port CA-?A)WF)+.A)W$A<-M(*)A#476 static DECLARE_RWSEM (xy_rwsem); P313'<3+R;<3 down_read (&xy_rwsem) ) { /* kritischer Abschnitt, read-only */ up_read (&xy_rwsem); b3'?,w&353&c3?<3+t+&03+p;2a1l %1-&5012*;' 3&'3'P *+3&53'<3+R;<3 down_write (&xy_rwsem) ) { /* kritischer Abschnitt, lesen und schreiben */ up_write (&xy_rwsem); %1-&5012*;' 3&'3'72*+3&53+ i;2*a3&'3 7M3++3 down_read(&sem) 3+(;@-+3&2* 12*@X-0(3*@ 3+(;@-+3&2* down_write(&sem) 12*@X-0(3*@ 12*@X-0(3*@ 3+(;@-+3&2* %&'()*+,'- _A-?@*'>,#h#R@+A?A)2&3 c311;,+23'9e8m3' k&'+3&2*3'<3,'<';0w3'<&-3>3?<@;2a9 K3<&'-,'-3' >3?<@;2A9%+A3'','-,'<9K3*35,'- >3?<@;2A9h3+H3&<,'-D?e;&<?'23GL

22 %&'3:3'-3e;'B+;C3113'53(&'<301&2*&' " Q3<3+B+;C311?,(3&'3c311;,+23W?+030J<&3e;' " A3&'3<3+c311;,+23'(+3&-3-353'W3+<3'A?''J B+;C3113<?,3+*?(0e3+*?++3' 3&'31;<3+H3*+3+34,0;1 T3+<?+((?*+3'n : /+3,C,'-153+3&2*53103*0?,1 e&3+o,?<+?'03'4jkjrj> ; 4 K > R 7 5 T?-3'$53'O0&-0RJ> T?-3'.53'O0&-0>J4

23 wagen_3 () { lock(a); lock(b); go(); unlock(a); unlock(b); wagen_4 () { lock(b); lock(c); go(); unlock(b); unlock(c); ; : 4 K > R 5 7 wagen_1 () { lock(c); lock(d); go(); unlock(c); unlock(d); wagen_2 () { lock(d); lock(a); go(); unlock(d); unlock(a); 8)*L@A<-.+,'(A# CA+(A&0*@3A9 W$L@;2ADRG W.L@;2AD>G W6L@;2AD4G W=L@;2ADKG W$L@;2AD>G 5@;2A&3+0 W.L@;2AD4G 5@;2A&3+0 W6L@;2ADKG 5@;2A&3+0 W=L@;2ADRG 5@;2A&3+0 _A-?@*'>9#>@A+&,.A,#QA+,M+A@#476 Q: lock (B); lock (A); /* krit. Bereich */ unlock (B); unlock (A); unlock(a) unlock(b) lock(a) lock(b) B+;C311o B,'<o 5+?,2*3'4 >3?<@;2A,'e3+9 H3&<5?+ B,'<o 5+?,2*3'K lock(a) lock(b) unlock(a) unlock(b) P: lock (A); lock (B); /* krit. Bereich */ unlock (A); unlock _A-?@*'>9#>@A+&,.A,#QA+,M+A@#456 _A-?@*'>9#>@A+&,.A,#QA+,M+A@#4:6 IW3&P;2A14,'<K " C#K#4[72?''3+JK[>+,2A3+J B+;C3113BJoW;@@3'53&<33&'3/;M&33+103@@3' P;2A&'-&'e3+12*&3<3'3'c3&*3'(;@-3' B+;C311B lock (A); lock (B); /* krit. Bereich */ unlock (A); unlock (B); B+;C311o lock (B); lock (A); /* krit. Bereich */ unlock (B); unlock (A); 8)*L@A<-.+,'(A# CA+(A&0*@3A9 5@;2A&3+0 5@;2A&3+0 o lock(a) lock(b) lock(a) B,'<o 5+?,2*3'4 >3?<@;2A,'e3+9 H3&<5?+ lock(b) B,'<o 5+?,2*3'K B +/,?/COOB'/SC$* :?'@(>-'( SUC?%;":=-?(-(>'( Z'C>;,#2(=D$/'<,0'/'/(/,&'/(H'?< 9< lock(b) +< lock(a) :&'/'/(/,&'/(H'?< +< lock(a)

24 R)+?#V*'> B+;C311B lock (A); /* krit. Bereich */ unlock (A); lock (B); /* krit. Bereich */ unlock (B); B+;C311o lock (B); lock (A); /* krit. Bereich */ unlock (B); unlock Q: lock (B); lock (A); /* krit. Bereich */ unlock (B); unlock (A); unlock(a) unlock(b) lock(a) lock(b) B+;C311o B,'<o 5+?,9 2*3'4 B,'<o 5+?,9 2*3'K lock(a) unlock(a) lock(b) unlock(b) P: lock (A); /* krit. Bereich */ unlock (A); lock (B); /* krit. Bereich */ unlock (B); 4 Z1&0W8(+@*,*M(A&W8)*L@A< % " = $. K > 6 R B*&@;1;M*$5+?,2*0b?53@'4JK B*&@;1;M*.5+?,2*0b?53@'KJR B*&@;1;M*65+?,2*0b?53@'RJ> B*&@;1;M*=5+?,2*0b?53@'>J% B*&@;1;M*"5+?,2*0b?53@'%J4 8)*L@A<-.+,'(A#CA+(A&0*@3A9 M$L@;2ADKG M.L@;2ADRG M6L@;2AD>G M=L@;2AD%G M"L@;2AD4G M$L@;2AD4G 5@;2A&3+0 M.L@;2ADKG 5@;2A&3+0 M6L@;2ADRG 5@;2A&3+0 M=L@;2AD>G 5@;2A&3+0 M"L@;2AD%G

25 CA,,*2)'A&W=%MA&#456 CA,,*2)'A&W=%MA&#4:6 e`a+#p-.a3*)+a&#g*&#ca,,*2)'a&9# 2&.A)L)A'(L-)#a#&+'(.#2&.A)L)A'(L-),' *5?+3c311;,+23' " c311;,+23'w&3<3+3'0c&3*3' " W&3<3+e3+W3'<5?+3e1#A;'1,H&3+5?+3 c311;,+23' " `+A?A)GA)`A&?L-)9I,-+&((?,(c311;,+23CW?+ " >*&,2<+A)L-)9e;'3&'3HB+;C3113+C3,-0,'<e;' CA,,*2)'A&W=%MA&#476 '&2*0,' *5?+3c311;,+23' " K30+& HA?''c311;,+23'&2*0D;*'3 " 9>h>9K+3''3+ D%'0C,- 9E?M3970+3?H3+ D%'0C,- K?'<;<3+455+,2*W-# E&H3;,0G 5" B+;C311<?+?,(C,-+3&(3' 7" %&'B+;C311&1053+3&01&HK31&0C3&'3+;<3+ H3*+3+3+c311;,+23'J,'< 3+A?''';2*W3&03+3?'(;+<3+' :" j&2&.a)l)a'(l-)>a+.#?a)#ca,,*2)'a& >&3c311;,+23A?'''&2*0<,+2*<?1K30+& H

26 D$G5&1D6G1&'<&*.`A&?+3A#K3<&'-,'-3'()+ D$G5&1D6G1&'<?53+?,2*UW)'12*3'1W3+03V %&-3'12*?(03'3&'31K30+& H1J<3''L " 78'2*+;'&1?0&;' " I,-+&((?,(H3*+3+3c311;,+23'53'O0&-3' " @)27(?>? :"##j&2&.a)l)a'(l-)>a+.#?a)#ca,,*2)'a& D$G5&1D=G1&'<&*.`A&?+3A#2&?#(+&)A+'(A&?A @O15?+A3&0G1&'</;'13p,3'C3'?,1D$G5&1D6G @)27(?>D ;" :?'A?''<&3B+;C3113&'3&'3H/+3&1?';+<'3'J &'<3HQ3<3+B+;C3113&'3c311;,+2353'O0&-0J<&3 531&0C0KJ 5+?,2*0R B+;C311= B+;C311$ 531&0C04J 5+?,2*0K 531&0C0RJ 5+?,2*0> B+;C3116 B+;C &0C0>J CA,,*2)'A&We2*)?&2&3,WR)-M(#456 c B c311;,+23 B+;C311 BJo?,1 :&'&H?@53&1M&3@L >3?<@;2A [/+3&1&Hb+?M* c B B*?0c53@3-0 c B B*?0c?'-3(;+<3+0 4 B o

Foliensatz 5: Synchronisation. Hans-Georg Eßer, Hochschule München Betriebssysteme I, Sommersemester Folie 3. Foliensatz 5: Synchronisation

Foliensatz 5: Synchronisation. Hans-Georg Eßer, Hochschule München Betriebssysteme I, Sommersemester Folie 3. Foliensatz 5: Synchronisation Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Hans-Georg Eßer, Hochschule München Betriebssysteme I, SS Synchronisation (1) Folie 3

Hans-Georg Eßer, Hochschule München Betriebssysteme I, SS Synchronisation (1) Folie 3 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Hans-Georg Eßer, FH München Betriebssysteme I, WS 2006/07, 2007/01/24 Zusammenfassung (2/2) Folie 2

Hans-Georg Eßer, FH München Betriebssysteme I, WS 2006/07, 2007/01/24 Zusammenfassung (2/2) Folie 2 /home/esser/daten/dozent/folien/bs-esser-24.odp Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep

Mehr

#define N 5 // Anzahl der Philosophen. while (TRUE) { // Der Philosoph denkt

#define N 5 // Anzahl der Philosophen. while (TRUE) { // Der Philosoph denkt Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

leave: mov flag, 0 ; 0 in flag speichern: Lock freigeben ret

leave: mov flag, 0 ; 0 in flag speichern: Lock freigeben ret Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Betriebssysteme I SS 2008 Hans-Georg Eßer, Hochschule München Zusammenfassung Seite 1

Betriebssysteme I SS 2008 Hans-Georg Eßer, Hochschule München Zusammenfassung Seite 1 /home/esser/daten/dozent/hs-muenchen-2008/folien/bs-ss2008-esser-14.odp Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]:

Mehr

!"#$%"&''('#")" *+",$%"

!#$%&''('#) *+,$% 4%/=>+$?/23@CB!"#$%"&''('#")" *+",$%"??4$!%% -./'01",$2345"$ 6%7890:.#+9;36%78906('7,()GH(G)'7!

Mehr

Betriebssysteme Theorie

Betriebssysteme Theorie Betriebssysteme Theorie SS 2011 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz D (05.05.2011) Synchronisation 05.05.2011 Betriebssysteme-Theorie, Hans-Georg Eßer Folie D-1 Einführung (1) Es gibt

Mehr

Betriebssysteme 1 BS1-E SS Prof. Dr.-Ing. Hans-Georg Eßer Fachhochschule Südwestfalen. Foliensatz E: Synchronisation Deadlocks. v1.

Betriebssysteme 1 BS1-E SS Prof. Dr.-Ing. Hans-Georg Eßer Fachhochschule Südwestfalen. Foliensatz E: Synchronisation Deadlocks. v1. BS1-E Betriebssysteme 1 SS 2016 Prof. Dr.-Ing. Hans-Georg Eßer Fachhochschule Südwestfalen Foliensatz E: Synchronisation Deadlocks v1.0, 2016/06/05 05.06.2016 Betriebssysteme 1, SS 2016, Hans-Georg Eßer

Mehr

Betriebssysteme 1. Einführung (2) Synchronisation: Probleme mit gleichzeitigem Zugriff auf Datenstrukturen Beispiel: Zwei Threads erhöhen einen Zähler

Betriebssysteme 1. Einführung (2) Synchronisation: Probleme mit gleichzeitigem Zugriff auf Datenstrukturen Beispiel: Zwei Threads erhöhen einen Zähler BS1-E Einführung (2) Betriebssysteme 1 SS 2018 Synchronisation: Probleme mit gleichzeitigem Zugriff auf Datenstrukturen Beispiel: Zwei Threads erhöhen einen Zähler Prof. Dr.-Ing. Hans-Georg Eßer Fachhochschule

Mehr

Hans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1

Hans-Georg Eßer, Hochschule München, Betriebssysteme I, SS Speicherverwaltung 1 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Threads. Foliensatz 8: Threads Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015

Threads. Foliensatz 8: Threads Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

9.3 Virtuelle FS Linux VFS Windows IFS 9.4 Dateizugriff in Linux-Programmen

9.3 Virtuelle FS Linux VFS Windows IFS 9.4 Dateizugriff in Linux-Programmen Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Projekt: Web-Server. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2014

Projekt: Web-Server. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2014 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Synchronisation. Gliederung. Synchronisation. Einführung (1) Übersicht: 1. Einführung und Übersicht. 2. Prozesse und Threads. 3.

Synchronisation. Gliederung. Synchronisation. Einführung (1) Übersicht: 1. Einführung und Übersicht. 2. Prozesse und Threads. 3. Gliederung 1. Einführung und Übersicht 2. Prozesse und Ths 3. Interrupts 4. Scheduling 5. 6. Interprozesskommunikation 7. Speicherverwaltung Cl. Schnörr / HM 1 Gliederung Cl. Schnörr / HM 2 Einführung

Mehr

!&'! )*+**,- 012"3)--2

!&'! )*+**,- 0123)--2 !!!""#$%!&'! (' )*+**,- (. "/"/ 012"3)--2 !!&' $& & 4!! /# 5$6 &!!7$&($7&'897:($; " &0!'!$!7$5$ & & $! '" & $0!&'!/$ '!"'7:($ '. 1"

Mehr

fork () Hans-Georg Eßer, Hochschule München Betriebssysteme I, SS 2008 2. Prozesse (2/2) Folie 4

fork () Hans-Georg Eßer, Hochschule München Betriebssysteme I, SS 2008 2. Prozesse (2/2) Folie 4 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: SAS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Fortgeschrittene I/O

Fortgeschrittene I/O Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

+,! %(! + )! " -.. ) %+ " / " & (, $. $ %

+,! %(! + )!  -.. ) %+  /  & (, $. $ % ) * ) -.. ) /. 0). )12340 5))6 7489:;1238 55< 633373329:; ) 5= 0> ) * -./01-23) 4 2567-) 0 89/ :57 ;7 2?6;?0 @=) 2@- 6-/ =)? 27A3 = 79 @ @B67@ -AC@ @=7 =/ 55DE/05;FA?=) 5 2 E//5;FA=) C 4 ADA

Mehr

/-010 2% 3%.-&"(2#( 4#5% 6077## 7 8$$04%27.0& 905$0& :0;+

/-010 2% 3%.-&(2#( 4#5% 6077## 7 8$$04%27.0& 905$0& :0;+ ! "#$%&'() *+,-#.(! "#$%&'() *+,-#.( // /011#)1.#) 234#5: 61$03#7 8$("(1$5% 5 15#9($(-:1$5%4 # 90.+;(. 5 6. [?.] I.!"#$%&'(&) *&#+,-& "$./0-/1/

Mehr

Schneidstoff DIN. Typ. Beschichtung. Schneidenzahl. Seite. Werkstoffgruppe m/min. Stähle bis 850 N/mm2. Stähle bis. Stähle. bis 1400.

Schneidstoff DIN. Typ. Beschichtung. Schneidenzahl. Seite. Werkstoffgruppe m/min. Stähle bis 850 N/mm2. Stähle bis. Stähle. bis 1400. Einsatzempfehlung für -Fräser,, 5, 6, 8, 1, 1,5 16,, CF,5,89,157,188,65,9,19 CG,17,,5,6,88,116,1 CO,15,6,6,87,19,1,1,85,85 CP,,,81,11,18,75,6,51,51 CQ,1,,5,75,11,18,71,5,5 CR,17,9,71,98,157,9,5,5,5 CS,1,1,56,7,1,18,67,,

Mehr

7!, !" #$% & "'()* + '!! > 05 ;$ $?% 3 ;"?% 1 ;, 6 % &' % 8? + 02 ( )*+ " 51 $'8 6 $'A 0 BC%% 0 $', 3 D 005 C 0306 :,; !

7!, ! #$% & '()* + '!! > 05 ;$ $?% 3 ;?% 1 ;, 6 % &' % 8? + 02 ( )*+  51 $'8 6 $'A 0 BC%% 0 $', 3 D 005 C 0306 :,; ! !" #"$ % &' ( )*+! &'!% #!" #$%!" #$% & "'()* + &%,-. "$$/$'0"%",#1 $, # $& % # -%!+!. /010, *201123 4*205363 % *'7#.2###!"%!"$3 4$ #$% & "5 ()*26 %+6 8 '$ $ 9%&' :$ # ;' ' < # = 8'

Mehr

.... pid = fork(); if ( pid

Mehr

ggf. page fault virtuelle Adresse physikalische Adresse Hauptspeicher Seitenrahmen Register Seitentabelle logical address page number frame number

ggf. page fault virtuelle Adresse physikalische Adresse Hauptspeicher Seitenrahmen Register Seitentabelle logical address page number frame number Se 19 14:20:18 amd64 sshd[20494]: Acceted rsa or esser rom :::87.234.201.207 ort 61557 Se 19 14:27:41 amd64 syslog-ng[7653]: STATS: droed 0 Se 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root) CMD (/sbin/evlogmgr

Mehr

Projekt: Web-Proxy. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015

Projekt: Web-Proxy. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Betriebssystem-Entwicklung mit Literate Programming

Betriebssystem-Entwicklung mit Literate Programming Betriebssystem-Entwicklung mit Literate Programming Wintersemester 2015/16 Dr. Hans-Georg Eßer v1.2, 04.10.2015 http://ohm.hgesser.de/ Folie 1 Hans-Georg Eßer Dipl.-Math. (RWTH Aachen, 1997) Dipl.-Inform.

Mehr

! " #$ % & ' (( % )#* "+ ), "$$$ - . )/ * %789#89$$!+9$

!  #$ % & ' (( % )#* + ), $$$ - . )/ * %789#89$$!+9$ ! " #$ % & ' (( % )#* "+ ), "$$$ -. )/ * 01221 3'4 %/) 56%789#89$$!+9$ : $! "#$% "#$&'$()*!# +", +$, +-, +%, +&,!./ 012.32 4 5 6 782 9. 2 :$$64;"#$- 5 6=? 12 ;2 @.7A ;$() $! ; "! :$ + 1 ;" 8 $)?.

Mehr

Bearbeitung. Umweltberatung & Freilandforschung Losheim am See

Bearbeitung. Umweltberatung & Freilandforschung Losheim am See Bearbeitung Umweltberatung & Freilandforschung Losheim am See !" #$% &''%((! & + &, &'''-.!" &/01 &/223"3# ('4 (5$6 e c or a t U m w e l t b e r a t u n g & F r e i l a n d f o r s c h u n g!! !"#$ %&'!(#"!

Mehr

Aufgabenblatt 8 Musterlösung

Aufgabenblatt 8 Musterlösung Prof. Dr. rer. nat. Roland Wismüller Aufgabenblatt 8 Musterlösung Vorlesung Betriebssysteme I Wintersemester 2017/18 Aufgabe 1: Erzeuger-Verbraucher Synchronisation (Bearbeitung in der Übungsstunde) Erzeuger-Verbraucher-Problem:

Mehr

Vo r d ä c h e r-ca r p o r t s. Vo r d ä c h e r-ca r p o r t s a u s Sta h l Ed e l s ta h l u n d. Gl a s. En g i n e e r i n g

Vo r d ä c h e r-ca r p o r t s. Vo r d ä c h e r-ca r p o r t s a u s Sta h l Ed e l s ta h l u n d. Gl a s. En g i n e e r i n g a u s Sta h l Ed e l s ta h l u n d Gl a s 2 Ve r z i n k t e Sta h l k o n s t r u k t i o n m i t g e k l e bt e n Ec h t g l a s- s c h e i b e n Da c h ü b e r s p a n n t d i e Fr ü h s t ü c k s

Mehr

Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss Maren Bennewitz Version 18.12.2013 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung,

Mehr

Prozesszustände (1a)

Prozesszustände (1a) Prozesszustände (1a) NOT EXISTING DELETED CREATED Meta-Zustand (Theoretische Bedeutung) Prozesszustände Multiuser Umfeld (1c) Hintergrund-Prozess - der Prozess startet im Hintergrund - my-commandbin &

Mehr

Betriebssysteme I. Hochschule München Fakultät für Informatik und Mathematik Sommersemester Hans-Georg Eßer

Betriebssysteme I. Hochschule München Fakultät für Informatik und Mathematik Sommersemester Hans-Georg Eßer Betriebssysteme I Hochschule München Fakultät für Informatik und Mathematik Sommersemester 2011 Hans-Georg Eßer hans-georg.esser@hm.edu http://hm.hgesser.de/ Folie 1 Zur Vorlesung (1) Termine Betriebssysteme

Mehr

Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss. Wolfram Burgard Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss Wolfram Burgard Version 09.11.2016 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern!

Mehr

Verteilte Systeme CS5001

Verteilte Systeme CS5001 Verteilte Systeme CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Client-Server-Anwendungen: Vom passiven (shared state) Monitor zum aktiven Monitor Monitor (Hoare, Brinch-Hansen,

Mehr

Infrastruktur und Betriebssysteme III. Martin Plümicke

Infrastruktur und Betriebssysteme III. Martin Plümicke Infrastruktur und Betriebssysteme III Martin Plümicke 25. Februar 2002 Inhaltsverzeichnis 1 Einführung in Betriebssysteme 3 2 Überblick 7 2.1 Systemkomponenten.................................. 7 2.1.1

Mehr

! " #$ % &'( ) * +! " # $ % # " & ' # ( )! " # $ % &$ & 2 " '! * (# ' 3# " ' ' " "-,4 '!, '% ",!!, -. /! ! + (. ) #" % (. ) #5 %% (!.

!  #$ % &'( ) * +!  # $ % #  & ' # ( )!  # $ % &$ & 2  '! * (# ' 3#  ' '  -,4 '!, '% ,!!, -. /! ! + (. ) # % (. ) #5 %% (!. %&' ()**" ! " #$ % &'( ) * +! " # $ % # " & ' # ( )! " # $ % &$ & ' ()*"+,#-.-,#-,#- "/ $,#-0 "/1 2 " '! * (# ' 3# " ' ' " "-,4 '!, '% ",!!, -. /!! + (. ) #" % (. ) #5 %% (!. ) #6# % &, -./0"# " ( "' (%

Mehr

ssionspapiere der zeppelin university u schnitt diskussionspapiere der zepp

ssionspapiere der zeppelin university u schnitt diskussionspapiere der zepp zeppelin university Hochschule zwischen Wirtschaft, Kultur und Politik ussionspapiere der zeppelin university zu schnitt diskussionspapiere der zepp lin university zu schnitt diskussionspa iere der zeppelin

Mehr

Übung zu Grundlagen der Betriebssysteme. 10. Übung 18.12.2012

Übung zu Grundlagen der Betriebssysteme. 10. Übung 18.12.2012 Übung zu Grundlagen der Betriebssysteme 10. Übung 18.12.2012 Aufgabe 1 a) Was versteht man unter einem kritischen Abschnitt oder kritischen Gebiet (critical area)? b) Welche Aufgabe hat ein Semaphor? c)

Mehr

% &#'! (! )% *'! +,! -! &./# 0 1 2 3 (4 3 5'! 3! 34#'! ( 1# 6'! 7 6 1# " 8 9: &6.$ 5'! ## ";)6$ <, "6;$ #=> 5 7# "6;$

% &#'! (! )% *'! +,! -! &./# 0 1 2 3 (4 3 5'! 3! 34#'! ( 1# 6'! 7 6 1#  8 9: &6.$ 5'! ## ;)6$ <, 6;$ #=> 5 7# 6;$ 953! "#$ % &#'! (! )% *'! +,! -! &./# 0 1 2 3 (4 3 5'! 3! 34#'! ( 1# 6'! 7 6 1# " 8 9: &6.$ 5'! ## ";)6$

Mehr

Aufgabenblatt 6 Musterlösung

Aufgabenblatt 6 Musterlösung Prof. Dr. rer. nat. Roland Wismüller Aufgabenblatt 6 Musterlösung Vorlesung Betriebssysteme I Wintersemester 2018/19 Aufgabe 1: Implementierung von Threads (Bearbeitung zu Hause) Der größte Vorteil ist

Mehr

(Die fettgedruckten Termine für Q2 sind zentral durch das Misterium festgelegt und können somit nicht verändert werden!)

(Die fettgedruckten Termine für Q2 sind zentral durch das Misterium festgelegt und können somit nicht verändert werden!) Januar Klausurplan alle (Die fettgedruckten Termine für Q2 sind zentral durch das Misterium festgelegt und können somit nicht verändert werden!) Montag Dienstag Mittwoch Donnerstag Freitag 5 30. 31. 01.

Mehr

Herzlich Willkommen ! " $' #$% (!)% " * +,'-. ! 0 12" 12'" " #$%"& /!' '- 2! 2' 3 45267 2-5267

Herzlich Willkommen !  $' #$% (!)%  * +,'-. ! 0 12 12'  #$%& /!' '- 2! 2' 3 45267 2-5267 Page 1/1 Herzlich Willkommen! " #$%"&! " $' #$% (!)% " * +,'-. /!' '-! 0 12" 12'" 2! 2' 3 45267 2-5267 -26 89 : 9; ;/!!' 0 '6'!!2' 2(' '' ' &! =>! = / 5,?//'6 20%! ' 6', 62 '! @ @! &> $'( #'/

Mehr

Betriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen)

Betriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) Betriebssysteme G: Parallele Prozesse (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) 1 Allgemeine Synchronisationsprobleme Wir verstehen ein BS als eine Menge von parallel

Mehr

E i n b a u-b a c k o f e n O I M 2 2 3 0 1 B i t t e z u e r s t d i e s e B e d i e n u n g s a n l e i t u n g l e s e n! S e h r g e e h r t e K u n d i n, s e h r g e e h r t e r K u n d e, v i e

Mehr

! "#$ %"&' " "$ $ "&" ( FGH&IJ>KLM%N ) 8>J 5 PQR ) 9ZJ 5 9Z [\] ) + ))) ^8 & _ -/>`a'9 b c " * K. " L ( >:. X *QE." 2 ^8 ( 0 2 X ^8 - Y " Y( ^8 _ -+ Y

! #$ %&'  $ $ & ( FGH&IJ>KLM%N ) 8>J 5 PQR ) 9ZJ 5 9Z [\] ) + ))) ^8 & _ -/>`a'9 b c  * K.  L ( >:. X *QE. 2 ^8 ( 0 2 X ^8 - Y  Y( ^8 _ -+ Y ! "#$ %"&'""$$"&" ( FGH&IJ>KLM%N ) 8>J 5PQR ) 9ZJ 59Z [\] ) + ))) ^8 & _ -/>`a'9b c" * K. " L(>:.X *QE." 2 ^8 ( 0 2 X^8- Y "Y( ^8 _ -+ Y ^ -*^8 ( $.A!'01A/ ))!"#_ - ^8 ( "$ ))$%&' 1 ) 0))) (),*+* * ) )

Mehr

Impressum !! "# $ $ )$ *# $ +,#-.. %/ #2 # #2 4 # /7# 3 #8189# : 4 # 0 $; !! $"!!%#!-")!#!

Impressum !! # $ $ )$ *# $ +,#-.. %/ #2 # #2 4 # /7# 3 #8189# : 4 # 0 $; !! $!!%#!-)!#! Impressum!! "# $ $ %& '(" )$ *# $ +,#-.. %/0 012 3#2 # #2 4 #2 3 250 06 0 /7# # 48#7 3 #8189# : 4 # 0 $; 01

Mehr

Vielen Dank für Ihr Interesse an unseren juristischen Fachbüchern.

Vielen Dank für Ihr Interesse an unseren juristischen Fachbüchern. Leseprobe Vielen Dank für Ihr Interesse an unseren juristischen Fachbüchern. Auf den nachfolgenden Seiten finden Sie einen Auszug Ihres gewünschten JVP-Exemplars als Leseprobe. Sie können die komplette

Mehr

Durchflussmessgeräte SITRANS F

Durchflussmessgeräte SITRANS F SITRANS F O delta p - Drosselgeräte Anwendungsbereich Geeignet für nichtaggressive und aggressive Gase, Dämpfe und Flüssigkeiten; -60 bis +00 C. Aufbau Zwei Fassungsringe mit auswechselbarer Messscheibe

Mehr

Betriebssysteme G: Parallele Prozesse ( Teil C: SpinLock, Semaphore, Monitore)

Betriebssysteme G: Parallele Prozesse ( Teil C: SpinLock, Semaphore, Monitore) Betriebssysteme G: Parallele Prozesse ( Teil C: SpinLock, Semaphore, Monitore) 1 Hardwareunterstützung Uniprozessor-System Verbiete Interrupts während des Aufenthalts in einer CR disable interrupt CR(bzw:

Mehr

Wegweiser. Das Erzeuger-/Verbraucher-Problem. Semaphore. Transaktionen. Botschaften

Wegweiser. Das Erzeuger-/Verbraucher-Problem. Semaphore. Transaktionen. Botschaften Wegweiser Das Erzeuger-/Verbraucher-Problem Semaphore Transaktionen Botschaften Betriebssysteme WS 2013, Threads 75 Beispiele Erzeuger-/Verbraucher-Probleme Betriebsmittelverwaltung Warten auf eine Eingabe

Mehr

JJ Prozesse und Nebenläufigkeit

JJ Prozesse und Nebenläufigkeit 1 Wiederholung: Algorithmus von Peterson boolean ready0=false, ready1=false; int turn=0; JJ Prozesse und Nebenläufigkeit (Auszug aus der Vorlesung) while( 1 ) Prozess 0 ready0 = true; turn = 1; while(

Mehr

Singer Singer Seriennummern - Produktionsdatum (c) 2019 Nähzentrum Braunschweig :00

Singer Singer Seriennummern - Produktionsdatum (c) 2019 Nähzentrum Braunschweig :00 Seriennummern - Produktionsdatum 611.000 to 913.999 1871 914.000 to 963.999 1872 964.000 to 1.349.999 1873 1.350.000 to 1.914.999 1874 1.915.000 to 2.034.999 1875 2.350.000 to 2.154.999 1876 2.155.000

Mehr

Support Packages für TIA Portal V14 Mai 2019 https://support.industry.siemens.com/cs/ww/de/view/72341852 Siemens Industry Online Support Dieser Beitrag stammt aus dem Siemens Industry Online Support. Es

Mehr

Übersicht über die systematischen Hauptgruppen

Übersicht über die systematischen Hauptgruppen Ü ü H 1-9: A G 1 B 2 N 3 F 4 A T 5 I I A (D, M, H) 6 W Z 7 Z ( S), Z 10-19: W W 10 S G W 11 G G, G 12 G G G, 13 G G G, N, Lä 14 G G G, N, Lä 15 O G 16 B, A M 17 G Pä / G U / L S G 1 20-29: U E 20 D W öß

Mehr

Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 5 Nebenläufigkeit und wechselseitiger Ausschluss Maren Bennewitz Version 12.12.2012 1 Nachtrag zu letzter Vorlesung Hauptspeicher reicht nur für begrenzte Anzahl von

Mehr

! " # $! %&' () * +, - +, *, $! %.' ()* +, (( / * +, * +, 0112

!  # $! %&' () * +, - +, *, $! %.' ()* +, (( / * +, * +, 0112 ! " # $! %&' () * +, - +, *, $! %.' ()* +, (( / * +, * +, 0112 + $ 3! " 4 5 6 78 12 0119 + ( $! %.' () * +, 5! ) + +":(: *" 4+ ' ; < 4 " : 3 %: +! %! " + ( =:6

Mehr

RDB Content-Portal / RDB Rechtsdatenbank GmbH

RDB Content-Portal / RDB Rechtsdatenbank GmbH Seite 1 von 26 $%& #!" #! "#$ % & ' () *" + %, - " +./0 12/ ()! * %% 3/4 $', 345 )"6 7 %, 7* 7 8& 7 6 7 9 + % # 7 : " (* 7 ; 7; < % %, = "+7:>?5 %% 7 8: 7 "& @ 7 7 7 (* %*:+ A7 B/5 *7"8, = % 1/5 % ), 4/5

Mehr

Æ A BC A DC C C C C C A A BCBDECFE C F A C C F A A F C AC D A F C A F A AC F C C C C A C C AC C C C F F F C C F A C F F A C A C C F C F F C C A D F F C C C D F B A C C F C C F B C C F A A B A A A F A

Mehr

https://support.industry.siemens.com/cs/ww/de/view/

https://support.industry.siemens.com/cs/ww/de/view/ Support Packages für TIA Portal V13 März 2018 https://support.industry.siemens.com/cs/ww/de/view/72341852 Siemens Industry Online Support Dieser Beitrag stammt aus dem Siemens Industry Online Support.

Mehr

Foliensatz 2: Prozesse und Threads. Hans-Georg Eßer, Hochschule München Betriebssysteme I, Sommersemester Folie 3

Foliensatz 2: Prozesse und Threads. Hans-Georg Eßer, Hochschule München Betriebssysteme I, Sommersemester Folie 3 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

TI2 Übung 6. m68k-assembler. 25. Januar 2005 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik

TI2 Übung 6. m68k-assembler. 25. Januar 2005 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik Universität Ulm Fakultät für Informatik Abteilung Verteilte Systeme Projektgruppe AspectIX TI2 Übung 6 m68k-assembler 25. Januar 2005 (WS 2004) Andreas I. Schmied (schmied@inf...) 1 Simulation der m68k-familie

Mehr

Grundlagen in C# und.net

Grundlagen in C# und.net Grundlagen in C# und.net Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Inhalt TabbedPane (Register)

Mehr

Typenschlüssel für kolbenstangenlose Zylinder ø mm - Serie VL1. Schlitten. Zyl. Ø VL

Typenschlüssel für kolbenstangenlose Zylinder ø mm - Serie VL1. Schlitten. Zyl. Ø VL Typenschlüssel für kolbenstangenlose Zylinder ø 5-50 mm - Serie VL1 VL1 1 1 0850 Hub (mm) Zylinderdurchmesser (mm) Anschluß rechter Zylinderkopf (dx) Anschluß linker Zylinderkopf (sx) Anzahl der Kugellagerpaare

Mehr

MIT VIELEN ANGEBOTEN VOM 18. BIS EINSCHL. 26. APRIL 2015

MIT VIELEN ANGEBOTEN VOM 18. BIS EINSCHL. 26. APRIL 2015 SFII 110 I VSCHID FAB I 10 TOPF (gülig b ofo bi icl. 26.04.; olg Vo ic.) HÄGPLAGOI 110 DOPPLT GSTCKT I FAB D I 10 TOPF (gülig b ofo bi icl. 26.04.; olg Vo ic.) Blkowoc IT VIL AGBOT VO 18. BIS ISCHL. 26.

Mehr

!"#$%&'()$ "* +,-./*

!#$%&'()$ * +,-./* !"#$%&'()$ "* +,-./*0+01... 7 2.3*4 5. (.++.*060789,3/8, :0-;0-

Mehr

Verzeichnisse. Foliensatz 5: Dateien und Verzeichnisse Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015

Verzeichnisse. Foliensatz 5: Dateien und Verzeichnisse Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Support Packages für TIA Portal V15 und V15.1. Dezember 2018 Ergänzte Ausgabe

Support Packages für TIA Portal V15 und V15.1. Dezember 2018 Ergänzte Ausgabe Support Packages für TIA Portal V15 und V15.1 Dezember 2018 Ergänzte Ausgabe https://support.industry.siemens.com/cs/ww/de/view/72341 852 Siemens Industry Online Support Dieser Beitrag stammt aus dem Siemens

Mehr

Kritischer Abschnitt. Beispiel: Geld abbuchen. Problem: Wettläufe zwischen den Threads race conditions

Kritischer Abschnitt. Beispiel: Geld abbuchen. Problem: Wettläufe zwischen den Threads race conditions Beispiel: Geld abbuchen Kritischer Abschnitt Problem: Wettläufe zwischen den Threads race conditions Den Programmteil, in dem auf gemeinsamem Speicher gearbeitet wird, nennt man Kritischer Abschnitt int

Mehr

Katalog der krankenhausindividuellen PEPP- Zusatzentgelte

Katalog der krankenhausindividuellen PEPP- Zusatzentgelte Anlage F-PEPP zum Entgeltkatalog für das Universitätsklinikum Aachen Katalog der krankenhausindividuellen PEPP- Zusatzentgelte ZE Bezeichnung OPS Text Betrag ZP2015-01 3) Elektrokrampftherapie [EKT] 8-630*

Mehr

Softwarelösungen: Versuch 4

Softwarelösungen: Versuch 4 Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Stationenlernen Geometrie für das Schuljahr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Stationenlernen Geometrie für das Schuljahr Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Stationenlernen Geometrie für das 3.4. Schuljahr Das komplette Material finden Sie hier: SchoolScout.de 3.4. Schuljahr HansJ. Schmidt

Mehr

Endgültige Gruppeneinteilung Kohorte Innere-BP Sommersemester 2016 (Stand: )

Endgültige Gruppeneinteilung Kohorte Innere-BP Sommersemester 2016 (Stand: ) A A1a 2197120 on on A A1a 2311330 on on on on on on on A A1a 2316420 on on A A1a 2332345 on on on on on on on A A1a 2371324 on on on on on on on A A1a 2382962 on on A A1a 2384710 on on on on on on on A

Mehr

Übersicht über die systematischen Hauptgruppen

Übersicht über die systematischen Hauptgruppen Ü ü H 1-9: A G 1 B 2 Nw 3 F 4 A T 5 I I A (D, M, H) 6 Z (w.) 7 Z ( w S), Z 10-19: W W 10 S G W 11 G Gw, G 12 G Gw G, 13 G Gw G, N, Lä 14 G Gw G, N, Lä 15 O Gw 16 B, A M 17 G Pä / G U / L S G 20-29: U E

Mehr

C++ atomics, Boost.Lookfree, Hazard-Pointers und die Thread-Hölle

C++ atomics, Boost.Lookfree, Hazard-Pointers und die Thread-Hölle C++ atomics, Boost.Lookfree, Hazard-Pointers und die Thread-Hölle Aachen, den 14. Januar 2016 Max Neunhöffer www.arangodb.com Unser Problem heute Es war einmal... eine multi-threaded Applikation, mit einer

Mehr

T-PIECES T-STÜCKE. 02/2016 www.dockweiler.com

T-PIECES T-STÜCKE. 02/2016 www.dockweiler.com T-PIECES T-STÜCKE 02/206 www.dockweiler.com 2 DT-4..2- (DT-9) utomatic Tube Weld: Straight Tee Mit nschweißenden: T-Stück ll prices ex works lle Preise ab Werk Order Code / rtikel-nr. Inch mm Inch mm SF

Mehr

Programmier-Befehle - Woche 08

Programmier-Befehle - Woche 08 Datentypen Vektoren (mehrdim.) eines bestimmten Typs Erfordert: #include Wichtige Befehle: Definition: std::vector my vec (n rows, std::vector(n cols, init value)) Zugriff:

Mehr

Funktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion

Funktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion Überblick über Stored Functions Funktionen Eine Funktion ist ein benannter PL/SQL- Block, der einen Wert zurückgibt. Eine Funktion kann in der Datenbank als Objekt zur wiederholbaren Ausführung gespeichert

Mehr

3. Interrupts. Betriebssysteme I Hochschule München Hans-Georg Eßer SS Foliensatz 3 Interrupts

3. Interrupts. Betriebssysteme I Hochschule München Hans-Georg Eßer SS Foliensatz 3 Interrupts 19 19 22 22 22 22 22 14::18 14:27:41 1::1 1::1 12:46:44 12:46:44 12:48:41 12:54:44 15:27:35 15:27:35 16:37:11 16:37:11 16:38:1 1::1 1::1 17:43:26 17:43:26 17:53:39 18:43:26 19:43:26 1::1 1::1 :: 1::1 1::1

Mehr

Automatische Generierung lesbarer Beweise für geometrische Sätze

Automatische Generierung lesbarer Beweise für geometrische Sätze Automatische Generierung lesbarer Beweise für geometrische Sätze Jürgen Richter-Gebert Was ist ein geometrischer Satz? Geometrische Aussagen: drei Punkte sind kollinear drei Geraden gehen durch einen Punkt

Mehr

Übung zu Betriebssysteme

Übung zu Betriebssysteme Übung zu Betriebssysteme Threadumschaltung 7. & 10. Dezember 2017 Andreas Ziegler Bernhard Heinloth Lehrstuhl für Informatik 4 Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl für Verteilte

Mehr

Kontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer

Kontrollfragen Mikrocontroller Programmiersprache C H1203 Felix Rohrer Block 1 1. Welcher Wert hat w? int w = 034; 28 (Dezimal) 034 wird als Octal interpretiert 34oct = 28dec 2. Wie lauten die Ergebnisse? unsigned int a = 3, b = 5, c = 7; unsigned int x, y, z; x = a == 3;

Mehr

Versuchsziele. Grundlagen. Überblick: FB Automatisierung und Informatik Betriebssysteme Thema: Bounded-Buffer-Problem. 3.

Versuchsziele. Grundlagen. Überblick: FB Automatisierung und Informatik Betriebssysteme Thema: Bounded-Buffer-Problem. 3. Hochschule Harz 3. Labor Threads FB Automatisierung und Informatik Betriebssysteme Thema: Bounded-Buffer-Problem Versuchsziele Vertiefung im Verständnis der Thread- und Semaphor-Programmierung. Grundlagen

Mehr

3.2 Prozessumschaltung

3.2 Prozessumschaltung 3.2 Prozessumschaltung (dispatching) deaktiviert einen Prozess und aktiviert einen anderen. Wann? aktiver Prozess wird vom Prozessor verdrängt zugunsten eines bereiten Prozesses aktiver Prozess blockiert,

Mehr

HelvePic32 Breadboard. Internet Data Logger

HelvePic32 Breadboard. Internet Data Logger 2016/04/03 21:14 1/10 HelvePic32 Breadboard Alle Beispiele, welche beim Helvepic32 angegeben sind, können unverändert natürlich auch beim HelvePic32 Breadboard verwendet werden. Daher nutzen wir die Gelegenheit,

Mehr

Rittal TS 8 Enclosure Systems

Rittal TS 8 Enclosure Systems R T 8 E Thh D hh, bb Th PE, p R Ihvh C /P. A Hw. E. Hw Kp h. Vh/N. hh. T 8 hh. G. I. N h h h. R/. Eh p. T 8. äh Kh. äh v bhö. äh h K. Zä Khwh v Ebä. Püvh Aw. Püvh. A Aw. C p h. C p. C p h. Pb h h p. T

Mehr

Operating Systems Principles C11

Operating Systems Principles C11 Humboldt University Computer Science Department Operating Systems Principles C11 Lab 0 - Auswertung Make Das Unix-Tool make bietet die Möglichkeit mehrere, voneinander unabhängige Jobs (z.b. das Übersetzen

Mehr

Motorenreihe Einphasen Wechselstrom

Motorenreihe Einphasen Wechselstrom enreihe Einphasen Wechselstrom line single-phase Eckdaten Key data n s Gehäusematerial Frame material Number of poles Leistung Output 63 bis 100 63 to 100 Aluminium Aluminum 2 und 4 2 and 4 0,12 bis 3

Mehr

RD-EM LD HEAD LAMP R L PCS 6.21CFT LD: R L PCS 5.80CFT R L PCS 2.

RD-EM LD HEAD LAMP R L PCS 6.21CFT LD: R L PCS 5.80CFT R L PCS 2. 80 78-86 80 86-91 80 91-94 441-1120-D 6 5.80 '78-'84 43T 441-1107- D-EM D D: 893941030 893941029 6 5.80 '86-'91 43T 441-1131- D D -E 0301075612 0301075611 6 6.21 '91-'94 H4 H4/W5W MANUA/EEC H4/W5W MANUA/EEC

Mehr

Die Anweisungen zweier Prozesse werden parallel bearbeitet, wenn die Anweisungen unabhängig voneinander zur gleichen Zeit ausgeführt werden.

Die Anweisungen zweier Prozesse werden parallel bearbeitet, wenn die Anweisungen unabhängig voneinander zur gleichen Zeit ausgeführt werden. 7 Parallelität und Nebenläufigkeit Mehrere Prozessen oder Threads Parallelität Die Anweisungen zweier Prozesse werden parallel bearbeitet, wenn die Anweisungen unabhängig voneinander zur gleichen Zeit

Mehr

CS2101 Nebenläufige und Verteilte Programme Bachelor of Science (Informatik)

CS2101 Nebenläufige und Verteilte Programme Bachelor of Science (Informatik) Prof. Dr. Th. Letschert CS2101 Nebenläufige und Verteilte Programme Bachelor of Science (Informatik) Vorlesung 7 Th Letschert FH Gießen-Friedberg Ressourcen Verwaltung passive Ressourcen aktive Ressourcen

Mehr

Speicherverwaltung. Foliensatz 7: Speicherverwaltung Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2013

Speicherverwaltung. Foliensatz 7: Speicherverwaltung Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2013 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving

Mehr

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen

Heap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen

Mehr

Fakultät für Informatik der Technischen Universität München. Nebenläufigkeit. Probleme

Fakultät für Informatik der Technischen Universität München. Nebenläufigkeit. Probleme Nebenläufigkeit Probleme 175 Race Conditions: Probleme Situationen, in denen zwei oder mehrere Threads/Prozesse, die gleichen geteilten Daten lesen oder schreiben und das Resultat davon abhängt, wann genau

Mehr

Inhaltsverzeichnis. Schlüssel

Inhaltsverzeichnis. Schlüssel Inhaltsverzeichnis Übersicht... Seite 4 Active Safety aktiver Kopierschutz.... Seite 5 Artikelnummer Definition.... Seite 7 Schlüssel SEA-Normal... Seite 8 Schlüssel SEA-2 mit Modulreide... Seite 9 Schlüssel

Mehr

Info B VL 17: Deadlocks

Info B VL 17: Deadlocks Info B VL 17: Deadlocks Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 17: Deadlocks p.327 Conditional

Mehr

Aufgabenblatt 7 Musterlösung

Aufgabenblatt 7 Musterlösung Prof. Dr. rer. nat. Roland Wismüller Aufgabenblatt 7 Musterlösung Vorlesung Betriebssysteme I Wintersemester 2017/18 Aufgabe 1: Steuerung eines Warenautomaten (Bearbeitung zu Hause) Anleitung wie man solche

Mehr