From 6d0b0a212ac539c57a621c8be72feac279bf090c Mon Sep 17 00:00:00 2001 From: David Schirrmeister Date: Fri, 10 May 2024 12:26:31 +0200 Subject: [PATCH] updatet --- Writerside/images/image_158.png | Bin 0 -> 12582 bytes Writerside/images/image_159.png | Bin 0 -> 14757 bytes Writerside/in.tree | 1 + .../topics/BS/07_Prozesssynchronisation.md | 4 ++ Writerside/topics/BS/08_Threads.md | 2 +- .../topics/BS/09_Interprozesskommunikation.md | 58 ++++++++++++++++++ 6 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 Writerside/images/image_158.png create mode 100644 Writerside/images/image_159.png create mode 100644 Writerside/topics/BS/09_Interprozesskommunikation.md diff --git a/Writerside/images/image_158.png b/Writerside/images/image_158.png new file mode 100644 index 0000000000000000000000000000000000000000..6c16694b65bf23d13dcf27b528035843dbd7bead GIT binary patch literal 12582 zcmeHucQjnz+pi>oDAA)2qZ2_8L$v6kL?jYKj|ifS&ZyA`QHE#{L<_#rBDz8J-bFXs z=w+DE>pk+m@BO{+A9t<0?z;cna@NY3mDB9A_p_h_q=#`!rM=k|v+BC-Rtmw=5ehNc!il}17&XwVhv0hi% z**~V+Q^vmULtwZ@QCeV2Xy(7)%9DS+aW<-<_<`-VJ}310%uRu~s)&dP^&5#)%d@pE z+O}hr@xcEh)SJ6mvfC55F+E$G(3NS{$a@8UZ_m;6oR_b&Ku-)WUtEyOeW6f*qlK57 zRJowwU|uoK>;04ezE@&DUd`~|+AL|TygJFa3Lj8^)Oc~2dV%c`vb>y$^Pp{R%Y6QH zDYuZ$0Y)vW!OPxAqo+;0Zj@9}EV^B@n*QtJXwE<7w#k@pYuD<@CsqxgX|BG!8Rwn{ zW4RhhBCL^U;}AzD2jreg$+s{T_vECdXsQ0tyDT5%uFhS2_LP2E53$=0ehZj&Y#}pY zP`><@?sK+XRXJ|rJqZqDUOYgm&Z$i5_3KT8wU+%JBGUB+7b)+C0BCi zyNW(eCEE5=5O=3qJ8 z>wdGT|AnPc<9XQ}x!cC*o~_%Q@6jZt@oEQ0CuCw*(s)^$=6AaOy2`;=YVBLlR`>mq zau{yq-8X~Tf_3Kqh!)bTr;l->C?4rKUu-rHFj^HF}}WxAEHxWT-$jPoEZLKk|1QA`}RiBL;sgIC>MbKHXg;Q z+}AjkLH&tH^z?Z6_`#|7zC`ok(ll9*@)1MWdcF5iWhfcbRAw0HgSPC+yPrMb*rpmK zl#)}1->J<|g}h@OrlF36$E$vET-c?p7I+Eul~f`1JVw^{R6m|uOZuO? zo69m6O43gsaNj7%n~D@_Nd6VG){y0hA*C1ot*o}sGzP=l>$q2gp;o=Yq`lFE4P@0#3-!s`hGH4Uk^+Wc6Ch z{5qh|cs)Bp!n>t3y@9`iEc3lQS(VM$p&i1Xz5iwph^^trZX53iS$#@-oLk|PpxlwS z8E#_+?&o_Q(?2^vn-Hmlly2NPZooS!_Fh`X$Q9F2FtHkb>tTVg)mNubnX|25CJ4Am zbwIu~Pnv6-UhN`3^_iu=w)9@GDpQiFAM7Ws;b-!Gm@dkk5y6R7AwBOqu$?L|P^~)H z_=78!M6BwlvMjsZF7VxJqw}-p)=Zv12v+biubOpt35XM+7qgCKfuRv5dT)RzA5HT= zn)TR5;`(tH&%=uA58sp+=5SW;Y{i$)Of!Gs zt)iG9hq$hqd0B9M(+Q_<+fN~*YR7Qzm7_HtQS2CYm&K@47sL<2A@~zMGSN)F$Yh0~DKoUAqsF{fdQ%#D zW5J4c9V{OE`L`xrf<&SOnG(_+n4)ei=4wEk7L`&T*(Q3-9(VOA-CpGO$J8JB$Zg4) zq#UREz8tDyI3Ya;F>>fQ1tP2F{Jfb&-+z+1*dIx!vL4C`*{ zXruPk>|=h4y^d<9Y5b4e%P1D9u^7lDL+sIOL;Gc!a?t_l5#^fo@2Rypi&4HtsL=7Y#&(Ln6M$*BApLP0VB^8P+ql}{9bHasgcgWqM{n{RC@jcT_ z2A{eStb9U*HGwTB*w4C+A8f|t*EFs6rYzz3;LJaR8z~>amUbcRXw0C@>M5IImOi`X z1~EC&(*PZ9UNy#t)D=|1Y>bTV8;Wa(F|2Z^Z1rIud}gpE~U~Cb{6Qj|AVR(;s-F79eJ?diEVjwRdR_?2cuT>3w(x_uGaH1q}k0gJZ9aJJm?URSu5qalK|W&bSN6GbWW zno+Z>4sX60c=q0j6O03vMVmz@_?R}TyLs;X*-^BZTBm&(2!c06OGyneq_+zB~vVSP}ML(W!@d(V9V1U z1)1`w8!T)6rb>czJkd^Zp-;?aa|z_A)KcuMiRkCavVwCo#R5~u(Y%`<>SyA!*M?GW z+-)XFhoZl8IWM$xN67z1gZO6lrJu8Bt+a!u*h{pO`p7ar{=l5|8<3AUfE zJlH3km1>8Myt49=xW_L+DM_ieA8O`R^rm9#i*2#NBEh}oAeT3ULG&+~B^o%XXP5tXhzMd+6?tjR3FFNd0(O0o|^g*Sn z@lw-!UFq|Fk^Ro^+8H|o+Hmo3EP`=3A`q!9wJlcSU)WPx^Jq-JWvAiHLGCqnkSL*6 zg`5pNcVe{v*hY7PkbIUwqwnVk1^5}d`(bOFgwL_#fTHR$3uA(10;F+delR<8Rgp1r zA<`%;b}Gk8gQIEA?g~IXyY08>2G@3(BSI0jlydFEvB)13f~1K1bU&-Z_~B)?2a&uAA<=qf4wtFW23WXQBroe%?W~6m4#j#-rKC73)fcxkm*iR4m%-*& zmlrZ0?jA(cQg7TDPY-2qLX>dHC}e|*g$^QXgG=>=_7C%`&@N9cOQomTtw4v=GWUiZ zrI~Z@zL+44Ql!7654k{?@(6#^S#Wty-m+IF7(f!YJOTR%r?=5!aDdM%b^OEA3HSP^`or>M7Wu~J_bC?)(|f4fFbv9JYup`v@{vS+nV6hakxoQ2GO^Tt1?R2L zqx;0HepguZOMEs}-1j>pOTi~?kEGQ;w#y?t{N}xaZH=jVV@ycK%wfg1#)VJW5St7o z_cK8uz9Fa7-*qS`Mp`P!Mhv2BDL`If7fN>yggzhdshIm_d3pti8O_|r@#KR;Q`I2@3>YPGTi^=mcyT@=3W`!ZH!2$^;r z(JC^j_j+CQ=25DMrMiz3Sm{Qr9?buAJ#VZEYHEn|bn6}vmz)Ijbv>C>O6tq{DXPD*3LOLt`X|@0?Z!D_Ysjckh|1t65N6~u#sg}uI z9&qesLC2;!>0G9UO z6VRtH%`sc}MFwz%Yi5@E*zKPq&E(f(F8D?nnTlak8$U`M?iZE@+9UVc4*^_}WNWAZ zU)DB3v%I($#_SB&*x&j!V8ZT8sTE!-fP?d%q~&9GTga;*b3P+^VX$+~tQDRf%05-) zmO1(NF|w!me@aZ}u1wNx;@QT067w?rrtZq@Kc6-WBHIG+_%A&ZSX;K`N)`HCHx;kXH9Cls2fSqE7|&=RQ1~hIT|3V;4M8o=aqP%ZY||yYo#jp?a@_GJskR zynbWDbQ7&cyWFSkt$=sQ&47B{N7r8i^=saA{h zFR!M%PSBb9nB!Ils#yJwn@X6-h{)W_DRYAfBtCoIDlN3^YP;B$m1lmTb}r%HMWD*-*plg;RbQ@X8eI3tV^2P*w1TJ4f347 zarIQu@%IhFYW-$$fB@OwBE0JgoAEo_cJF=IF#+fy4vptnjq_c8mgunkc3|nX`SU}s z)`gPJjU>0TdFpyiG`*23WpeCP%~JJEBHP%j5dCARy%_pP$Ui2JAe6=QFD zyzx`*D^u+255_8S{ZiBE-aG3x2Q7D{dPmH~eglJD`^bK3^i8Fm4a;NK-OxJi3|V&o z2g8M~k_Sc>V^>HC?+Z`wpNh_-uc!9TY<4t|qQ zeyy!^{Me;XAD*1?WcgQuMFv z7}+Ur)oTvzA6+;8&ci^YZ*%By3t_DH9x08cKpRflnK(A2#>G(CdF z4qji6&*O;6SY)Jj%)Q=?#w@!DguUJIzb3vy={l}}p$-k! z%LZSNH8!!3#=JYSo{q)qv_o}^X?Xp%)hp~Ny85V@QY8^3P2K+I`Mm%{ zoS)GoT_SDS@YfbVt8pOp@`nY6RmB=CT_dUA21PT4vGCB3Cd5%UheV?Aqi#nL9I+G# zFs47ZHlt@(S5(TT9`+Vf0vor_38=pLG|F7?aD(M2*JM$hn>O+2tE7wc8#a-w+vFk4 zjI*yCZt{x`-7b>Tp_yGP>rAzb6&)g^WH5fo{-wM}il6!CIlQMa=LOZ?vO+jSBom^T zP3a}N|ISklAnfBzyYtEUDeYfPhzIcD-`AJpzAu25nna`S=s;v>Kx*-eVCzK_W?7%= zqr~vxJEhez@R@6AE=ha{GLY$cmPn8#P2Qor{1Oavk?*?YJhaZQn)fnujr~PUtRzBY zR+ByWg779N056ow{K~46N6N7%a z3}8-9)-I_N0QkX~fg>CMGb!^1b50~pUK8mQLqDu@c;S?Jkm4ce(0J|z6wI8 z`EX)<*W#uR+osocfnW zf!y)~ja0paf88JN+|9)2C-WgNs^(kTg|PXX{`1majjM(sZsUm>{cyjBK80G_j^P)l zzbzzjiMgeHbZ17;fy14QUl+m{L~*^{!e>?IG2=H~sx4Fz|7r(qEFgfNO?257LaC=* z1ztOAGQk{dH%q5cZT((TUV?p|ryQMisDEq?=QyH| z=E8?Dl6eV2ObL+N0qJ_S-dB@XYw?ABhjr6=Eh?w(p=oZ#ZpHN(QT9Wq;u5_%f;6u& zDg*>^6&u>;lNJ;9Y1gg20@<0Qe4a7uR^m2gVOm!qZ^7hd!em>qU3_Sk2WpsETe076 z{qU%8PKU?q%koNme<_c*ktNyq+$hu6)souRSV6phi^6#4P9}!97xbv|5R(0aO#*|C z*`qzeqK{Q{@{0Qf<|if-^h$MEi!;hIJkemMBb?l8=?VH%^1z(4s(0>H zpKMHHBa2inFP2-K=fetp;8r%4d-dX&tKPWZF3IBio=t7n7$|`Q<03vi#*|eG^-~$) z-g9}L_^-+FR1$qLRdH*3B4Kiu)mh>Gj!B^i@Tyc3jLk6y1LG7Zj((rE!bCigj;Dv zkJIF>!jNBP&O?Q=)RH=I)>@OmgLOue3UCu z71dEv`AnzV;&&HW9tLs)fOSN-~z8Aw&G+mz^A{Au8&( z3gSoZj+{L0r?+7@RY{{T#$icuv6p|sSXObJZt+q)G74Wp@{^3*C&>92-$l$%65uGr z$%V56mC;ID=+W@@b*@4B*k=nKl}wcZz+%r()QeN+LVRprkAhk}-z8kyA9Twd>$0SzBdqD|Utg{x< zZ@=HT^TO(EOSJQ>?hI6F5QN$7Om7E&2{mUK^F8=-BR!9NWL@5IYj2=+PJm8k1xxd< zT+_`9O(^?M8I=>GE)?hS=ii524V7TRiTUU666PU`K;ExcL;Xi?|DR9cO#C(K%lCBF z|EBPJ3h2KNHzY#*T_m7jrMrLgeh7u+|FIYF3t#|ope5b^66U=a&XdS1`o6amu!|ow zc!nfPc@)>5?bICtzIKOI0#U*az#{i8aukTciP6An$j=ECT+=i4wUojjf0?2W#!VaZ znSFMf#Jvx9&l!{x7cQqh2=JT z`(-Bs9ZLse1z4zGK#Ovog+ZQ{NCi0(|4)%RVtN>mxZU%Ri#``P}8cH}!i%4wVeOl6--fP62EPzYgVk7iu9 zyLd9n7h1x+i9^QZnUa7iW!nC#51{czMi&=o&MEdl{WhH{-;?)@3AnhdsC-!cFI&`>yU01?lm}FYYoRD|7pN-` z;2)4VGD7^d2fcx+1)0@P(lK(Eo^|tqB+|{?BC2bOp`=doIO-v6EMggm51VV-(-Psa zJyo&26eD*yddIj9pkg&@s8okq8=cb?pi`@U4aiPsZvhcjp@sq&rALiu+QHgG0i$Z+ z%c0;-ftm4ZLrB9rg!c9B$8eLP)-(YuJCxm$Q!A21J(gqSx-23|EcPXbGxv7WDZElE zRb0^i-E4)e-gO~Ep<$K7rIbya;$6wshRajiBnZ3JbfJ{jzV)#pdC8-$ zs|r+)0bCQ~a~1`xZQIjTNBNC_LI`6W<5jYJ@urlrk+6oRdLaL56bFR$B&Gw}crn&+ zvclw_EN9ivj2Xf@#;vN($l;5B8fJIoxA%X0ay_j)=L6chrIb)QFj1BQ5p>Kb;YhYk zynGPBBv5FuLHp@|PC(xbkeD*BqLF~SWje9vx4|r*FcD z1(Yl)8if{*)bfAj(k6l#R~nww&OqVrfW_<=BLkEih+B5kTnm(BERRPCNa@XhV2nE0 znVt47r8Du&j2ZnfoD-hr)Xspyq0{G0meQvHLCrod&ArUNa-aQrqJ$>8*tRR5`(`fz`s01V~l-FzONubHFSX;EcA zJ(i7?+No|~&Dv$d75?hS6077sc#7I9zcbDDWgcvKae7cM@>0jJ(yoA*KT+K%U+3fn zk*vZ+?0nD8fs4IPju=l&T-YH{K(c2gIodb!OsX$hVv%SXnDH{dzZHvY z+$zAbWdz`TzV?P*oBFynLS7rYy}DxXBPVAz2=&s|PB@G9{_On?D3(djdKY}>j1}VW zRR)-9mk#)RDg>CoL2)RtS;DmTW6gX(1?FRoex+^}iQoFT(ZY!x6+~~4I@l#ZK_gbdO ze6EDjv|!PhXl;8lB~5$~K#(TJ?3VCYQCMN%6U|L$%TB%)ZJ1dHZ^5(8 zu9CuRWzUAQE`&`vlZd;dC>nP&X$VJZ4D$7LDMDFwo));8rwv!?3?mo6C$yF^uVUZA zn3>MxP4>P1`H(?zRoL@l5g`!bN>9n&p&dcyH1vd8o_!KniAHWkH29vKwm{O|C?>JH zsY%*vKPkgO?i1#h=b=MtL`l2}>0nBsK(Ye-R*jq{!_rh_bNXFRs_#?&*l{)f^A!5s6*%4 z2kzvSg`v4inuz-K?!0sjh%2SF@_n zBV{MTuji$>|DM+_BR@ugJc983{@4Wh`YmGTEDt46l64aEP7t~5nv8&#*?yTC*H@qd z$sKSAygAj!Gag=iTIGr3(kcbSe$RjKeyWg^aV>HU8v}V!#d@)o6v9VeyEEmT~9!PJ?IbgPB1Xz`we~Zch91W$OL&O6z z>XU`*5+BO}#{r-g>|~s7w^AT*8Ae2QJBkED%4X6UXJuvQjM@b_^mS^G*WQ}B(+sHB((YQ_i6_;sBaBtZ zydAJR(9qX3mGUiW8$p=~IZX8TI@U;rdC-Y4dY)i4+2uG$;6gk3uG9#g{H_$G5q%Jg zF##o|4ldpXZ6H*)C87;06+l2>eY7saVw_Etk(r@48)uV-(iVuIfRSkmuK?rguMI)5?^w*ar9~Kv^Ga-Ho??Oa+Qd86D zC_M*h9Q;(6h0E|3u)EFcWy?K$R_wq~$` ze42Zpr}K7Bpf!RK@wi4mI_NV=4;Ttcrc^G2s&E8j_E*g5I-2!OQ04Eu%|G8Dzw?w~ zSB1But%n@#kVMD)(i1NUx`>S)=+WZ<2j}~Ab3t=@JPosq*xRnX8$**ENzV!8{zPUm zA(`E8k#6+zO`e9%(@HSNjAKyakb5^@UUfB$;RY;TMZQ>`oAltVCq1QTHihS4sAC>b zy|7M;daLN#nM&wQs$r3H6T3pspxQg_^l3It#=A1+!+aC7sb||EgLWU$9Z)OSTb79u z%E+e$h=0vlM%Z)+G`&$Pw2TD@;C2 zD0$HXtwnr0fQ|=a=up#UI?6`O(`{vtwaf-p(Q?#0kIIJ`M(3wCB95=)?{O4a$a-h$ zIHHBFFHiDj0y0F6+%gd|SY%br08QWfN63^agc-ITIv#$az)NgH3<}(PP734bveu2% z3`Cyz+8`h!;lql87vEDI_)lLq#fsmdQkhb^6cbchwBtB$Awq4SlY@{9<3g4WB)m1&l?7`D% zG>-{^La9tQF`B}TNEV+Fu<1d>?unew!nS-UN_n}@<45VUDa3W#mlGj#yQ;c<66Ost zfi~zeSavif$4vIhF~CS9>wy-ENUHOTN&ubm@e8o?pByXrA_CH~;<-tF1Ca$N;5$^3 z(1y#n&a|ri`VckLj8($yb;>ndiM3c=k0T*0!NW4plit5i zv1ffG?`*=E-MWEZPUB`V5g;9}XPTkOkXl{SVLmq0OZ87PmF5;{asiPU0U}mMb%uSu zBSfJ5lH=_p&@FhH-t|Nr-YsUL2{y7TJ5!fb#Ut%&W%Bk}@(xwyy9 z3>R9)c1++5FiaOCNx;N-T~fE$FjEz_h5!M!TN})L{p0n6YuNrLU#DfN3JQ&+6N)Zj z4_1?i^C0+J77tV}R~(EP4lqI->>k;UmDjp$z5$Y~UHc~n^)w=#k7_6eJV_z_(%&0@ zepmtUJ*%j+nYeOT{k}n!!>rNPzqN;m$fx@=-)jItCV5=jW(&sx4Z6-|MF~R$E&ddJ=VV;76gADOY{0Hh=I)c&Y?UFm4S`RX1PUM_P)X2&kXpx h9{k7m1y{Fqu83QE+Ftko-#_3zReq*atY8-S-vCV4UvB^a literal 0 HcmV?d00001 diff --git a/Writerside/images/image_159.png b/Writerside/images/image_159.png new file mode 100644 index 0000000000000000000000000000000000000000..2e92980f50ad5d8555c78ab3766d4d7f9db950fa GIT binary patch literal 14757 zcmeIZXHZjL{5Oa+Ll3<}=z>V^HH0PtB7zj@MS2yG&vKG#lg9Q z0zO}Y2!X%u(cM216Fh2D<%M(h`2o&U@2o7gHC&QCOQEO;V_I~rfi|v1VmVGsj>4;oeM~8XG^5+vi zFHb(rc2kl1eW_s~^vj+(6F2xLjWEN_N!U%Ac5AuV(%1uH?QCfQ zgKJdY@0+o^7lagSETb|jXzbt0w%+E$q`mW^GxtY9bIT7c`OZl9uTRfTFMk;5MSdBT zEB!GBL6m$&PV*CWykEUj0^vs9HTO>&3B;$3B? zUmht`aLeqSEQC=2od9>5s>lh^BfY-M9-KfOUfFssaJ09uF!(A<%6&T*BaLsnJJ)2B ziqB*d(AeY*0LQ70|{xN9fSJnLv!d@P-#_2|2{ zHl{Z(?3&RMz7&ZC9=N;t5!saHw#dP1ScU(Lb8#dg855F1`Eq>l!Tk6)O?Fn^$JtI7 zcS#w*yNxU4vnLaJ%8^$m3k&$w5)UDt`GvqgghVPX^$20ySnkuyE(+!JS>34X-R8Zr z_5NxSdZAkP?Zf9oK>vBpD(agZxV~g{ap?}QfKQ(c3AauACH3{qUa^TPkaT*j#7aN6 zu`u7!O(qK+DzBdrz+4^-HJx;Nwr=DGWg@s!M=n->A5>gk?eD^;R_Q4`vC~E3HJaRJ%EF&4 z%__9XVlPpXP1HDT=VJRy{7)B|YhWP|TYUAccCCsJ8qQN*Ft^?vdR1X;j-ioe;^;DY z!WH=Mr|}^hUn*(nkO@S@1ei!Z=?Vca(z^paT^1oMlU(X>LqcaW!-Q>gA%=x@=JSwcQBG_;@Eo-EG_@u#583HZgM3|0Wm$>9#m>vnR|5| zDtvvw1}Ci0o~HFAOw@{DcnDGZ1nGi+?MEH+LMG?z#eRPMTfv+ge4thO%X*W4)!vQt zeEZjzE}*5JQQ7Xmn7eJx)Rq1`zPD|!Bo=mc{%^zt8_>K{|7Cbs$vlKua;kN&^`h*x zwZe4txL3~Z@8;-tkL3pH^}7zjnUyb&wkCE=Tp>9L^fWh$_$O&Mgo@)^yM ztpSJY4iasb2ioFTX7}2}kX{^Nld5*u69&oo-?N@=tS*yf8KvN=Sc%|MuOVZMD_T)< z0a&Czj`bNgCyL|Oc+{dz6wmNf$Nq`F`jHDX#A7z@PWRh>K5*@Qx360t3m)gl*_78! z5|@_MJc9o%Z@5m;v_-UU9t!4#9A`vM06 z*C%bqjQShRmDRmW$7WW(-_)BHv~W2d5o8b`AgNj-u}r^!((l>Aa*x~osn~sjNV|b? zdm{|VP1s;EzfpqXVd8)&r2C=h90(6rg@cQXQLLMol^`58S7s{ix(Ai94BC+_js5*< z*1c&5Wz-7myXm&LINos`Q$dtlG}r%DRx%P~yo>|k5TY+tbaNBf*x1@+aaD4cWX32^ z$^o4>#dJFA?eQHYl5W%EGnmsn|JY6Vb$eERs@^qMUXIVG?4)ye@CI&&4^{yQ(~M`k zs`MXqJfJ&alyXZ~i+3Vxu-loJRB6*s0V5NkB zf@PzzR4ES>7;aiNX`u3|2btTgnKv3Odz$CHn%r~@+qLI{y zABri8UPuH}?4a|Wzb zH1F0Z^eSP9>ur1o>?CjvC<}I$3ZmI+5-6t}t!g50Hv&-uv&;%(+rXZ&zRx|t2R8KT z_lFO9hc4gPGb25@wl%hu>5{q6@WTo1M>kG-NP4|4_M$ZxasOiFJ(|{19WF!U!#)jL zyd2;;R-Ssi%SEcaL5=YxLf)gb&$j3C(-8!JaGv;R>Xt#O$-#H6jf&CHBujWsyOF4( zh5P^pVQ>_Pkr506Q}6Ss4(rxAm!Cz#L5z2)EJ&1YyM)Jt(!x5%y&Ni-QseO8n-HNN3D8j=vNwanuPx@GV&~L~iXGn-5(c=V!e9koY78yvECvCTuq6R= zGn^dx8k7ZpIJhK>g-)4ywv4xi1kJ{)%)wV;N4n65a_65Cl45 zmb|SnuP@|Y*fv*p^xgFfh6V&Sh<>q$15vV`oUHX|hJJ-nBqQnK(K*WkUz6he#_XZ~ z+`jF=y{!{L4=b%biHzltfwpVeh2zzmvx>FullxmTXnD)%w+7jlji)}@N!>T{13UWx z`?CAj-1~>!tIa}T3%~}Py_ib)A8t2z9%1@B0Se+k_P@o4fjHDGxdBkmalrY%ussZg zc?bdU{;E1I2NKLFOa)vE4oLjJ-op7T_%WldA4Kgq0gCzorAc@AHH8Ah>`91_56M2t zIFJ#gJ{p!@YXoyzaDzD|!31tj}gBP~J$O#TUSo2L_^bANnWMc|dLsc~ zAUpryDe~k30Q1q>!YvZP0L_v`oSv@4cRe$^}s&El2mw0pzvPDaOU%IEcNjK{!J@*FTkg4a}=i1EX#W?V`m0k|*Z20*nX zpsN~o7LCW?Ltp zyGAm5G;$nme&bRAcu-SSH?SMC?6#a(QojK}yii%=a!dix3pVS+8Q%gNOhVsFV$mS?Lhi|@F~F(cP}kv2Uw zsWckN$QF!MIV27I_vgjVT@pG$5mDK{WnXjz=YtPNL_#l5vA5jSKu=Lp0eIe~Y02C{ z#gjR^yl7HJ+vV3#@0P*#WPXEA$tiPcrK_Wf?9FG-PCeAs)op;mrWg|Zf-V9spMdGX zP}@&Da8+bVESg{0EVd(-D%-A!m9I|=e{MTV^loy28vuyah95qLOea@7dUBxyg8)RV z)toHr@Q?^O1tk*Q!5ogJeAE~fKQt?=>Lj)qde9(2S@wssqj@RhXNi8-Oo>xOiQt|# z>JO}ms2iAY?0+W9nI9`(9eI6Ir;h|klZ+d{N*!qCA{y6H&0gZFFnr=hz)zQ=Z+O4} zff*sf=O~Q_?)_GoHwT(+KCk%c5$z%q zY|tfkDK`@#4l3Yx(rDdCFP)2XQmGN-ta8a(kWtxK_~DuV0{@oNpC4`6EmRA1dJf2&hh6j+>%eXFC$U~p;zaV zq3WG@?mtQr{h-r+Qx>XU97bSo=^m6(ci*ZH&G0X;p%e}?e&49Buqx8?3Pbn8J^|E5NU)Jwo6z~IfOZ2@d=z%Lbh(s3BX z_983n_>s0Ze}K6+zf!c}Pw1*<9E)?O)w4Fc7sclIxOlA>yUo!m5rkJ<69(8nKT91W z6K0g75XXe*s~Oiy3l{{0i_)@FwP10jXdJ$SD{9+~dP$2)vkV;A1={XUE9kA*N)kok z-43-K7kTuIcAjD(?YIaKOq56&L?Gs&XKU-;R4+epb-v-tWw-^RcD5yICqASFJ_b0jS3gHIGLBU~s=}iA zIsKman1Xn=|9k+iQOLz{oqy1Tu5=_&AGzkjZmv?>wtQ98i3??4ZBL8rdw$CVcrF|$ zFI~0H6J@i~xxB2x4kMW_?B31?Y_R^F-tV}}eyeDR&|K|=eA77j<(Oy6%%a!}mX!+% z23FXlHfaYJK6*1?Pno{aB>A8y>E4Ja`PiuZl0__&yuqYj z@KI5_-syB4G(|4mQtIbFvN8-G;M{(0=mVZmdNk7+5tnA)-LJ}aIHE}8hyEZq4tvOv ze!8@0ZluDQuIOh56Vja@pA1HDxK0`DWM7@n=fG!maEJ)cPwy3&7Gc`V?@hY2C_qQ55VRYw-(vJ@i%*dTzaF zMqXPKecR3D*`aP3md-pKL`$XNzR=q83`}V_>Rmv!Wgvumr>AAnUS;eg?4{YkO>lP< z*Sv8?JN8NX0)SL83&jFSdXVqDqXuVBzuzBC8+;iYEC_kcppQ=>jFVV+pxQ&EXA3Z0 zBUxBCRtBpC%34Ys4@uwWK~7>Zl=m?VXkpve{t+gSr}8_s@BVQE2wA!oP->p1zk3vO zqmBmoeNBtxu<{v^>|$~)vw2^4{-^XtdmM{VD90QOPOh;Cqbr7i!kNue&jmMUFIZuK zmAVzG66ZcPI#BcbIEN2QCPS;5Zj^oAw#KR91)FlwCCH?x1-rF&?>%lU)Y!w*r{wK? zilVkO(brE5IDudL^5#=TJXzvj6jivnJmfX1y;3||eYgH>(VJ4NcbZy>Ct1VTKTwj> z7WoUS1L70wB|<=DO1PJ{7N0FL#`yjZ!ZNfl$JnYoBBsWL?x`z~DNrgv)MBKxI&D!Y z4*@L~fLv<-qUzOWw7^6&{N@VW;9n~L;V=Cbj#_ok`*LO6isVFUuWoT3@Ma)VtN-60 z|93z9?@93g-C{6tK`cf-Z45i#;tMJmI0ClinQK_P-z`zle$m9+cYQD<{6a}DS(yq% z$%W{r(|!Pc4Q2_u+_!1FI=;~SGgWETffkzrq-M=dK!`Wzwd)K3_I_tLV4aX03%(Zt zL{zFl$ET3io9l}?sYG(%3or_pXaF=m7|xNGzJ=&bM*!NU+g^K_a|e$Q*&1?@I*{%) z4>W~M>3p*gp7xND2dhd$)elD}{_TfPzqnJB~_7zjJ4a zhnjo$(ALKvDj?OLS6Qo^0wAyp0I{wor#lS`FE5mU3W){q!mkbWw{*WknvRR}LO-L^ zIH^EOPlU`GJXirGq|$5B)GVPRmM0A!zpKvHv!ZX&`R+)FP}6Es6~HfM6#EU`XKF2f8v00`*Jds*TR!yrK8&HaVSlyr@vH8vN`4mtkipsFTEqXVg5 z2)*zE+@i?BIJv>6C%eB@zb#na5l&<35Nh7GWh0afrs}-{5ROD;f&bn-FCplTjX?J* zF#NT>Yk=(j&4r338Y)RVvj2tdI@iyWc8o3+3F+_mgqPI zuF-)2c9()UZ?>j`+`k_NJBLjhxy%(!>zQ+{s^qfWOvQGHX#nkY5%Fb%cLCla;=SBG zCyt8I#N|kOLcTGaL2YE_E_uk78?erpGLp=n4qbJPz@bM0ERoLclX>1$>jWU_Hr80B4X@ zIGOWV0@e>j1R)tQ;K>Fx?tc9X%To#|3->?YDmF_$-7Ji+kNE{m4Hf`jTe&9iK8GIV z1B`}_?&FosZ@;O!-R)}(ry?;g7_(aMKKtA$T8+06z&hox9;?1%c4~*((HL2U{2TxL zth8!9({-Jxu*oQzoVDzgo}CogAmFf+{ZwjXt8i?7wNn=LKVVm}3s^3mWaGKjfZ>{c zD8*3dy%2JeAyN)luLS^*=e-BazB-Gn@pmO~Zg5dw>KxOF*FSV;lVLz$foz`-P2mH}%iMwaq^f9x%EwmcsF`e+AQ^Npl60{sWXl-{LU zg$7*YwIz?;I=kNmO3Q4+oW16~y2#3P_NuzbZ2%}$9O9AN} zB}kp1<85bF)j0WGnNk*gQ&+&~{W-n`t?8jNGpX#Tn|wY*dJOn^F0_JyWZ$yl$=MCR zzXDtXSN0E4dg}46O9<-0qE3x0h{ec0coPEaiLX(%?FQXC_L-zaKmgTo0u4{tz>l$pn{VjS*LP}hjB8?puZw2 zGPHP)Pqt_3T+L9CGg7&`a(~P0>Ryq`^=2b&ij5wRfF2-+%2b0Y<>#cy<%ek5z}qtqwd7ZLfx4SNJ<4Q>c-izu1-zzK#^(9oFc z+9ts%?C1YvFM$x>Xc_FDS}<+cBJxw;=<@_WEKgW%>2V_HuAiE1B?_-IrdBhm^KVLL9me$?La+OF|U zksX$3%!|~biKzNXDW9+E^@iM!V@gt3fu%NIsIu20)U}zbUXMa0HxWx>(INT=l}I6{ zOZ=?0w(*La!}cj9C?9L^j)O2p+rm`L$$XJG#R%bHZgD`m~!l{Hg$ld5YhCqR>Nvb3h0gH;}=3O!t=sv1zNh0{2GUsy)L%~f>E=e z{rg@NFMJ9Rm=!ms#ayVUA8ULdejz;K=Qy7&c?I_XzlvHgS4cMqFW^700J?Ecxfx)elA6ZbY74|R@>sc4+gZ~T28crHJG!9lga9HB`D zFG?}0VdE#gXKVE=a&Mi37cG0W_GXFN!7fg4?+g}023N;8a(tFw;|253F0U#v5o~oJ zg5v3+Y06A@x8^m6Gj@Zjq1{t!Vdnli}Obz0MIegC5$9L0*qM@ZVMW_F*S|A9QQJURXSbolDci-vW(TdjG+b8%f=9@pC z_S0eqi8)dC&JUm6wMF2x%Fom6m12saOO{6q#VWE*vE8@^FIdZZ0?LhW zOfFlRo-N7*9?`zf65io|vBlc&?dxAOMRPXZ@aE4D6%l?$6il~^J&LtZw=BKjh{o+a zK-^WJMRT)P)1kQPR*h>y$oQVv9f{+;1o4l*ez>qb@Q%-nf=0N+-fR6$ag~@ANnVC+ zgv~kW$VMxRW*66lUlnUd!F|r&ybwXL?jLOE89@HYd5}7C_$2*P-NZ!X;i=NT2|A{; z&C`!F4{FGLIj_?PW7A<$!;iSswiJ4ht;rM7>-{mU_&eh6@C|98T@|y1{gqOWiV|Pm zcdypkGsN!Kgv_zQsAOGE-P{UjTCSv4z?{`!@vP3E+_CPbmh69~1PeoS+}> zL)dWZY)O^7PClt~fYH15ugQCJuO#F+>E>OLRk*Mf!go54$Jkt~ehh;tFw{&u&eOMn zmmQhjXCjg~kyHf*x)Id`+l70ln1I7!Y895v-^)v+fnC^P8jy?m{1c(UJVB7!w}tt8 zOM)6R7gFo{oWpD4SG)!XbN0(;8MLoI?f#}-3%0_ z%3Vn*{otR9F*-2On=eWqgD+#)1$0BpN-PBvp*W0DJh&NM1YM8HbHUVH(xTWO3J+^J z#)WfWFzLtVaeU%Z6$+M-j!^t?*gE4RLAZ`K!<#54<>HsU-=E@G0g zu6-Th*Z1S0z^U`tLnY1arC;euRtz5~7zwKZeZ87U$5fy72yxGG`3=w=dpYIqaW zEB*r%%=CyD|KvF2)}Ent!4SeMg4azO!=6Gm9pf9g1abvI_yGi61NR)HmtD)MqaxE7 zj(Rs=k;?v!1~a{oXA_(kPvHdaN(bRDL|`7}_AGvv_Z-hxdBxt!{%)cP@sTrfV>yLx z_f0wk%;2}KVLQqbctpuoL>2McdYn>xS9^opY6Dr*V*q$J8tfF{+vQ?QhYyB0fK zLJ}Vv}^++r92{SN88R>)$Vp4?cX*pwXaAS{oniM&)aIfN)3YJC3V3^y<{$*~YXPF``APl7|QSaJ{ z09q+}mVixR_NmyxRSEUq=SVExcL1dA8=pT505M0Yxl@r9FriJ*=(b@23 zoxuU|=?@f?$2)dJ{72F*P_V!k?vi_yT!%3=2M@rJySA*m@Ps2%6aA{i_5r75aK+WC98 z%VDi3*yDYgxi>DN!ymC27Pk@HSqcAk^tH>$4z(Y=m8yGscTCPB!kXBNFj35y#{I5( z7_(2{rDy@yjxROeV~I*@Z``HWABHtfdigB``?m7#ugpo7Y`*21K){4EXVZE`I)=)` zoM2jlx)2v*8q%+yzxO_wkNBi^mdJyEuv1bM;U>*#aEUGH^!AJR+?RCk`~*S>n-E+U z)pXKudHj3X@e*iXoX*2YQv*n$sW{EBzKE1S{}u49(8vbnZNt{jW^mc zLV7tuwTTU;%7^z}{LN(mrRjyo)W1-)TfsXe#WLOBxr?j;tEnkanO2aOlBr~|2O zZ|3&p-DjD0NE51C^Io77I&Re7h)ei9^=?^oCk=zg(N?+P_wQfaicbt{X5CG(`>e2T zU`D$b8X@xU3m6QFw0{}5Ufg>1hgvsj)Amti%km<_*J&}FiZYR?aH6|sO8@8Ogou1m zMvi>KJy%(ge6)V=kFTPmmt%{%>oT1Q;{E8IV7@pzW;^)wF5a(cJ!#`!)`ZjTa4-pe z#9^=$ZkzPjs?YuE92NK0*Yr0RXgr0qoBHe_S*4&mV_n|p{rrx(<~Wk2+jiMoK!Twx zcoXTblbp91qq`u|gz2Iwq=YGny=6X~EY>VTm-fNzXkmkAB2VHFUT8mSDdSNaK?*!9 z!?$6lH6e?y>ELeM4nKzRsA|oG^xr8fP0AOMjX9DY5Z^Dep6bA}<~1==Inw{8)1X_PXD7PZ`rYO!L}Z)cu*qj*hC3WE zscK~VWa9LHp@2=7r#swL+&0V9@=U?5mo%#^UIl(VR~8mGE%GvJW7+(pxPQF*|7wK7 zLk4@MSj||bl&n=zelWKK{_%|Rp|mJ}E=e~aqve=6p@_IL-m~G2-3aOr9vyby>_1M| z1{~j8V@kIsn!ZD@UnhRawW%2jRu@snq7H* z(zdV4V1HtK{J1cgxXul=Rp(wYbcgw_~8(DsQDE2k_dh{HhIjKlnSIz zMFmP^GNlJ$aKF|bxFN&A#52rEe^tO=Z6aa3Z7VWNK|pF3V}g(Y$mK{$kUU=aB5p^x z`gS})xJX(MJ4>HiWvw_CEd*BJ`&$ihV-tJd($)368rs+>Qdrih&3PMJ;Tpn4RNIT@ z0MhBmB+{D9iEg3e37;YerXX=%vq?)fgG@;OJWGJPpDye3(L$UbEXen@gOJ%|MQpj< z(MsoSuWhH1pf%D)69Uqt{Jg9*+&@!lEZj_SpZ|bVX+>Z|y!5`oTOXDM#6tS<+hE)d zD~IeC4@h&hzHq(e{_pYVK=~YL>aQ92UQ_a5B2@| z@A#XPwGM7p>sD5h1h-_*;_h#;aM=D=G9sXYD0W*{lmFGWC&x>a<(za5TOb{u8V*6|$HN$t^PAsle$*}>ygv-5su(-oDW@+RJY z`4G#Jo|&T&L=Lw9-p+37$^Z}c4kLACSR3X5nz`fJH_^zb9 z`R*;}pZ;t%nl5TL9Mt~MXBbcsJ%>163X)XYjqi(@=#mu30`{sd1Pf`5WA>$Ubd-E> z0s)gqAMDIFPyn#vG8zgFv<=YgcDW53O_rI;s#rS@0Ewz!RN69+xCd`f#{BxYh)da^ z@|vVOfkX9WAMn^SbiOAml%xuHaXncO!&@`{`B&hOKqrcl>m>(os_oI=FYQ53As-*- zWKx3yg?ey1WG9OC8j9FW>#G4Prgtr^1;;5`KqpE{^=M;pk3u;k}aHY2G6t|Y&kaVBH&egYEh1(5HRKCSc0~zQ|0{r(0H``GZJ3~bflK@#sRC6Mxz(sKU;Pxz71_FhN?tsP&*cj!KI0kllyptP6Sc5Oc(eENudKbsi zMZ1odEP&(&ujAZRpj}@a8Q=ufR#c#fEo`^m4=SN=lL9`L#5+WADz?yNlM2-nqY9P1 zdrF5oD}C_|NWQK*^`3Wn5bhr^`{-~YHPeoK@$=02hZ1g9Kmg+QY{88fc>hN9?W`4x z5a)Z_C27Y+PCIk38$GBq`sk5at&@Im449MWDK!X zNY`XTf*Cm_5jgbtM5|fXJV*kx*^uD94Dm0ecE6J9 zbBvBDa^oxT4a3&oU57T%p9it5w`V4*hQ)@EfRS?RB|TKkK=w0a(0~a0zNy!N3A>8V zKjz>i-oyWK;H=7T&nYyPuk7+2ILtwDt06m9euj0NyuUlco8@M^_c0*_mr!;VCLpeENrrzTh7gG=I)K_hzKnB% z?^j}KuB=jGi%Ei>U4_C7UjZXTDyNaC{{!vfkV!_^#(@j!?q&950fc1w+pJPy4 zRlxOz0_@31rsS6ls|@>i*T!m_+#P+ag@{9K<^wNSXJMz%`Bo+M8j+m3 zRD}S(rtpQ1Ze~EHi9|m^=hO#6dJs$t(1jnrpuUayGJOK!M`cx%)jklJ5GddxmAhKD zfTYW1_k=hh9WDS7-na}($|5uF;8ZlrZNvYy?s)gN*=_V!TSWl(&XK@pz$yJl_`W)W zN6R#NMpbRQke-6*+OHS3;VBLx?qrU;j%Y^Zwt)lK-D4nTOi&m$xmA@p*1v iMFwMk|4|@L!xa5d*)rPUKY-(xI9lqD)hb}t;r|CAio~!0 literal 0 HcmV?d00001 diff --git a/Writerside/in.tree b/Writerside/in.tree index 5eed987..49572a2 100644 --- a/Writerside/in.tree +++ b/Writerside/in.tree @@ -13,6 +13,7 @@ + diff --git a/Writerside/topics/BS/07_Prozesssynchronisation.md b/Writerside/topics/BS/07_Prozesssynchronisation.md index 94bdaf4..dd2376d 100644 --- a/Writerside/topics/BS/07_Prozesssynchronisation.md +++ b/Writerside/topics/BS/07_Prozesssynchronisation.md @@ -82,6 +82,9 @@ resume_execution(); - Zugriff auf gemeinsam genutzte Datenstrukturen - Hardware +## Semaphores +- Ähnlich wie Mutex, nur zusätzlich mit Kommunikation durch [Signale](#signale) + ## Mutex vs Semaphore Befehle mit [POSIX API](06_prozessstruktur.md#posix-api) ### Mutex @@ -108,6 +111,7 @@ Befehle mit [POSIX API](06_prozessstruktur.md#posix-api) > Es ist wichtig, Synchronisationsmechanismen sorgfältig zu verwenden, > um sicherzustellen, dass kritische Abschnitte effizient und sicher koordiniert werden +**Praktisches Anwendungsbeispiel: Siehe Praktikum 4** ## Deadlock (Stillstand / Blockade) ist eine Situation, bei der zwei oder mehr Prozesse auf unbestimmte Weise blockiert sind, weil sie auf die Freigabe von Ressourcen warten diff --git a/Writerside/topics/BS/08_Threads.md b/Writerside/topics/BS/08_Threads.md index 589f34e..60dcdb4 100644 --- a/Writerside/topics/BS/08_Threads.md +++ b/Writerside/topics/BS/08_Threads.md @@ -10,7 +10,7 @@ |-------------------------------------------------|-----------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------| | Definition | Kleinste ausführbare Einheit innerhalb eines Prozesses | Unabhängiges Programm in Ausführung | | Ressourcenzuweisung | Teilen denselben Adressraum & Ressourcen innerhalb eines Prozesses | Haben eigenen Adressraum und separate Ressourcen | -| Kommunikation | direkter Zugriff auf gemeinsame Daten
erfordert synchronisierte Mechanismen | erfordert aufwändige Mechanismen wie IPC | +| Kommunikation | direkter Zugriff auf gemeinsame Daten
erfordert synchronisierte Mechanismen | erfordert aufwändige Mechanismen wie [IPC](09_Interprozesskommunikation.md) | | [Synchronisation](07_Prozesssynchronisation.md) | benötigt Synchronisationsmechanismen um Rennbedingungen zu vermeiden | Isoliert voneinander, weniger Rennbedingungen,
aber schwerere Synchronisation zwischen Prozessen | | Overhead | **geringerer Overhead** | höherer Overhead, da separate Adressräume und Ressourcen | | Ressourcennutzung | **effiziente Nutzung innerhalb desselben Prozesses** | höherer Ressourcenverbrauch aufgrund separater Adressräume | diff --git a/Writerside/topics/BS/09_Interprozesskommunikation.md b/Writerside/topics/BS/09_Interprozesskommunikation.md new file mode 100644 index 0000000..a558245 --- /dev/null +++ b/Writerside/topics/BS/09_Interprozesskommunikation.md @@ -0,0 +1,58 @@ +# Interprozesskommunikation (IPC) +- Mechanismen und Techniken, die es Prozessen ermöglichen miteinander zu kommunizieren + - auf demselben Computer / über ein Netzwerk hinweg +- Ist grundsätzlich wichtig, wenn Prozesse + - zusammenarbeiten + - Daten austauschen + - miteinander interagieren +- Wahl der Methodik hängt von Anforderung der Anwendung ab + - Effizienz + - Datenvolumen + - Sicherheit + - Komplexität + +## Synchrone IPC +- Prozess, bei dem der Absender eines [Signals](07_Prozesssynchronisation.md#signale)/Nachricht auf eine Bestätigung oder eine Antwort vom Empfänger wartet + - stellt sicher, dass + - Absender und Empfänger synchronisiert sind + - Ereignisse/Aufgaben sind abgeschlossen bevor andere anfangen +- ![image_158.png](image_158.png) + +## Asynchrone IPC +- Prozesse, bei dem der Absender nicht auf sofortige Antwort wartet + - Absender setzt Ausführung fort, während Empfänger verarbeitet und ggf. später antwortet +- ![image_159.png](image_159.png) + +## Mechanismen +- [Shared Memory](#shared-memory) +- [Dateien](#dateien) +- [Message Queues](#message-queues) +- Pipes +- Promises (Futures) +- Sockets +- [Semaphoren](07_Prozesssynchronisation.md#semaphores) +- [Mutexe](07_Prozesssynchronisation.md#mutex-mutual-exclusion) +- Condition Variables +- Remote Procedure Call (RPC) + +### Shared Memory +- ermöglicht mehreren Prozessen auf denselben _physischen Speicherbereich_ zuzugreifen + - Austausch von Daten effizient ohne explizite Kommunikation + - Speicherbereich wird im RAM erstellt + - Kann von beteiligten Systemen gelesen und beschrieben werden + - müssen sich selbst koordinieren + +#### Linux-Systemaufrufe Shared Memory +- **shmget** - Segment erzeugen oder auf bestehendes Zugreifen +- **shmat** - Segment an anderen Prozess anhängen +- **shmdt** - Segment von Prozess lösen/freigeben +- **shmctl** - Status eines Segments abfragen/ändern/löschen + +### Dateien +- Prozesse können auf gemeinsame Dateien zugreifen + - Zugriff kann langsamer als andere [IPC-Mechanismen](#mechanismen) sein +- Darauf muss man achten: + - Zugriffsrechte korrekt setzen um Sicherheit zu gewährleisten + - geeignete [Synchronisationsmechanismen](07_Prozesssynchronisation.md#mutex-vs-semaphore) nutzen + +## Message Queues