From 7c8a0d4cb7a1d92bb8871e27276227a81775e59a Mon Sep 17 00:00:00 2001 From: Valentin Schneider Date: Mon, 15 Apr 2019 15:14:04 +0100 Subject: [PATCH] doc/overview: Provide a bit of content for the overview This is mostly just a diagram I had on hand and text taken from the README. --- doc/images/overview.png | Bin 0 -> 31348 bytes doc/overview.rst | 21 +++++++++++++++++++-- 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 doc/images/overview.png diff --git a/doc/images/overview.png b/doc/images/overview.png new file mode 100644 index 0000000000000000000000000000000000000000..5ab1351488149d9524afdadf09d0ea83891120b2 GIT binary patch literal 31348 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

Y{-lzVV_RLhkYZdv#Qg1u5crP zgx3+8*eZcD;Exk1D^j$b$ROrY9`67*RG0_d7Y+BNLnjD!+B_gS%o=FPDmg+9V^{fe z@=~ETs|b!4W8&POc53|@OfpP8i!&lxZs2_Dryh%EP!-9c)u`;V&S-^KPXv9#IUV(` z>9cU$iJOKHbf4|CEe@sP_A01*OfMikk3iC?(>&~Npg&BB-T&f~(WfC(nn5=RXoBl4 zUXouF(4{_Yhi`SBaVuF9tXQ=wN!pTKzr9vGK*BHCVXAX=35l@E%0{v8to4rMx5B%4o;t)aRI>1o-L z!oC#?De{_pHq?uCt!Q&ajlE=8(>_5=(MWr6>JO)?Ib<-0dC5UN5tqjA>!{|_->ZN=Js)c3vV?hsu|FzC3j zHU8vMqrV@(PZUU~U$}Qe4%4f>cYt2~^4y<=+WpEG2TuL_K>HWGvZX(im=e^NxeiG1 zK~;D^pW62u#XE=6SntF3pOL~Q^Z#Vag9{d-jk>^jL{{dOX) zNGQXRD#V4vMvEHW-|maP%XsvESZGQDEE92Zus!1Hba!~cwy)Qa zT47X)owKd}Rxj7vMx-Y3J{cN}a>Pp__xw>L*8Sxt7y8cv{?8OahCNhCune6q^HqIi zyfe`(l9M1ZQ=pe~<=7hgMqMDq=%_Z`Eo={FLf2c;5$110@GnJ19E0|BDmGf06nih_ zL9=$&!ewQZm^ZS|EHdqa`mSEGl&a+>({OnA!1lNMN+SPWW+#Ce$uako&3b&~oz#wv zTn9-XU5JY>zfZ)C?V;7TcVIsNOIK=6w{aai7xmJ*z1Vi;+XBl5#QQ3!y8T;K`%R2T z1M^KdZ*%|F#FBzA%3p)0mW2)e@3FkG(hHo*MIFtWOMgB_W4RP(1 zpSMBxfG5#3DWn%1yD##yWq&Grg|u|oNPNBgD^_FsxpA+Vbte(nHZD`&nAUr0o(3wM z|JJK$4Co9m#gvuq6k+RrcwtZ5#b0!_t_#zi(@2mr9rVZRkh&J=ltQ7**wDGc>#93n zqEdOs2a<7TDvM}ma=c)%c=LbQz@a6OuViN%i&%0acuR>L6ZX&ywGC6EM6RAXLsb^FXXWReOFW~q+lntT}Q2& zpW72QOskTjg~b0TftcO$axtC{T#JLumQ0lYt0BB<-kjqUb6?w%8V_0ottqrs&d6Hv8#kdfl>~Fc~#P# z`Pynt9b7uj{aP)D3@M0f91^b~1ifXhSPhpvi$QaqcYJx`ikGR~ry5(J)Cox~PzG9F z^NztcpG|wYvXgT%FE86!?4kq{?s5^eD}hKZqYwiZz4il@C%!k3KfW{JF{p^Wu94(V zRJke#*tydENtE9cdq&C8ZtVCRGcsKPEB#KNDgh5Lz2Fa`NVogtQ0QevvA_ITU_X?C z(H|$F#i4}Exp3d>D4LI;L=QU$3iW5fKjMlZA&Qr7-j@Pr12={{o1~-^EQ{H*;~wq= zsKXN&tk#?d?JwLOl%NN?zi(g@)XeilIgMF#{B7J15Qk@}8$%J0Cm*rPc@e~eTlyME zh<|P;K9~`~f;#;aPWzYuw?VSv{sA#NvqorWx0Y>4@7F-V53h!NdD^NjfR4FR|GogT zTdl|(IEl7HJnrWsZ~p%C7HA5kr8rpCSkG6N%01cqKy95~w=R8-^~vF^29>esYuPtHpn7mZmV+zAhqcL-@bnCJ^D;J8R#Uuj^b|2ve#Gl@pgGhCBRKUk80uCJVE6?HUC>A3aF7Y=G$k4^F3)jv6Qx( z^+PBvui)!GS4#KR*0-^=t*8NFf$6o|u4%AV)@PNYN;*^tDTn%Nfj)b5lD#-K#E{h? zuKS|Tovy$IiS@Jj{j-?}`PmnjYB|RCucdB$!3pjdhtT0!vjxS%D@$AF?iL!dI_f|1 zA%Yb61T=9Jv!@#R^s5W*edd2tb_2kgpSybeg%hV4i?FZMxjij>5 z7ab(>xYu(7eQp ze!BlKWGe0C51qBjWr2<5-KlQsBE`;9nDZ&9;l#U(lJ=OMpv=T(4jJbEkhMyxn8AJY zxuQ>)t&?F1IK#^Xf9wZhJi2Sv;(Fcd7$Yrc2VyiIawU z^$7_wr?TdSxTAhUFtt0g{GoTbuwVMWi;Kr^xJ~m!GeVc(kiq6{|KMt zUz!<={=~O~8}Ltrr}vdi7nOb9NnpY{lYQS=$CBlpX&V#V6G${c?$pz=xoMWvMs=ij zLpIA>>~vM~mpX;FgC=zt0raxqmA8TyG}}%#6VmzWuvcqYW97BJZy;Ov80f^$D`&gikdcmolPdzw73~d4 zek^;L85LKLdfmA%_9V*f>`5SMGW=TT1F5@=Q!e_tH*qqYMKCf*h#*hY&7j_{UX$`< zjKBToV$!7>8dXs2xOq=!SRfjD&iKARxm4XtmQ+Imqu?M>BxBrFt(`O+pAlS5{FK7W zT!hmF_{?3mKR+{xx_wemku1?aP*RcYZ#$n)+w?HfMkp@rn8;VATMd6?yzC!HqNcj9 z!qZ-Ejpg91Ws=Kg*jf8Fn0wK6y+GiBDN z(97Yv>Zf7;ejlRYm}BZVwb;~rc@p&0-55|U(YG%lz0d~4^aK!%|3I|B(}>YfSyxA! zU0FS7yQF}EwNT*_-l7Fcz;$VaU2Yfifq<8l?c{otr6;BaT$)Rd1U|#bn75;vD=q}z z+9hxrtR7u6^O$!q45+8LZriOqr;z%6XCO4fqkBQ<5s40h<=kowvWxWjh#zJV@av($ zOLlU_Dct1A(QtB6{x3}CnnZ^S>9;QK2|I1f1((D2shO!0UO?(L< zuo6QP>}ZUVbkwnVK&0@e&fXK$#2v(5CUjZyy|Al!%JgvT53GKn-nI949Y?WFZaJQL zj&V+&lDsR~D=tcoqiOkjRDdQ+l1ZZ6My4*|^sAS(-jaD!fV7B(4wkfFB3!7SSlUi} z%J{}^B6RvpJ5(vH1u6w;fyUzGMSGu>x*Exb)3qS-f{^XQ&5>-2l9g8y0)|c0xeu)B zV%O;Kd_!$zUIUA9xQ+CF3FI`sp~x6xUx>Sk#bZ`OHPtKKvtgJG{xpC2lDzI&oom1} zYmb9Tlhqo<|PU%nx`z`#J>4>dNpv(r?G_(od~p^Rvo3l;>I@ z$q>M;!DbD}Z|z%5vK%2c#%7uA(O>rE4FZ#r%!iv#W0lW?sh(UhWP{fN(KXNeTS<`X zF{}5jtojEZxawPBSs#?$x{H%o?e6kg&6!n6#ajn*|M{za0z9gM1@dN5GROuzX4F0Y zB9H;71s80=26w8eFlFmQPgZNH1~OyoRV-R)>A#Qe7DG2I>tbmmzb}|AU9kK zqD>*OOC1nuU%f3!a(EYenk;N|%Qaik`CAy`uEyq=j^cBDQaH-R+A(0!t$joI=6m%r zyJK4Fv*mIyD=IUY9fB6<%9nM?HIrKoq4EBE5_c)AldYaE8*fdNN(H=f97K!A&#chQ z7zWH~jJ~q+dZ>}S&hmbXc&BOrWBe-Mr8$!TTi>Zk6mUH0iiS?q0>e#6vU97iCEU5! z3ah2}!g8K!3>7Tfw-$27pN`r8r@fVVypF#CNxrF==83vQJ%{4Qkfk}str2muh4HV6 z7{u{?eq1jlbQGa)-eJLcg;)2B@oxSJ9_m6!vSz#MRGg8^-j6Cw`!VfRS8kz?=af=n z);3VmCD7T*+;{F4$@!$f66B+-d@(gs*ujTA5{2&Nb39WsFUPYksSjN!vvfNPac&zl z(7#VR{25ZZ6B7rFX9fUMppHC+Sw< z@1IjQl91{<3FCU}D!61bhw9$zbppb@_M6!3$v|==Ik!&wcBPrkB=D?KkD z=0@(P0)gVP)Ud2GG)>)K)+AjWFTU(bZyC<)h6)^qaRHzv;D|ITh%gAMf{sb}y~!(& zt><-Uq**ASu7)~**{(OguIbguggHoZXZ2P29LXv~oU7^1n&drk;noP=52U2qs%NIu zg)J_6_^?5_*|HLc-Xytvh~mdc$uuNOgdcH(giw?=oMeBJ!zk~i6WR@ThqaZuP4T46 z@C?uG71_=vnnPD>u1=y1%7eoloJYgw6f%(aBPaMqWF|)9pH;MRwJr&^ZMRxnxG*s3 z=jVOsg;;4-9rPSZJ^r@;?dO+ZS@UI4Uxm*1Z3?RwtvOqpygDKG<#YVAO|H+PR9(4A z=|hY*@;<&DF*M@BKC}(85a%*1@K5^z2 z1_@lyHrndVAaebdeTm-UR()yh7IFUzcH13j%hbL%iZnEu{IJbj=jUxVVY(IZjY}i2c)p-$uZQX~#!Ol;1ard@JqwH>cv`>+fzn@b%ds9%HT) zmP&2pWZm(0B-d)lloLjgJkEbRE6X&=ltoGa%MuJGMXvTMlwqsBvn?Fk2Ok0kvpWZ# z(nzkQik?QbzMM3ASoBs>ya+ML%Iq>5Df>leq9?*Pmk*?li&DX4n6>q=ln*gsGhlsa zuEr)(?~$+9tQa^B1t!gUA@6g0wBCOPt>RBPt;xnH;h_qmzMriJtZ#^-Ym;0(hF*W5Q9AtESLPj#IZY)_gtsMPp<6kddu584 z!%>t{PS1{<&nLVj@arzQ)iEV<-WR8hj~`Gv%Am?>UwOdhlHwi#ZsZu*yZS@L7Pj3b zU}6gyupCM3~`PvXEYCFvE^@_`}b6J#!#&HV_ zA2)^HIIT$K;V^&j}k3xZ;*N?~IUhi7M*R|I#dnG$o&+-Xpq1mMGHA zOl4qSG){7DSc7*)x(=)S@Y#4<1{PtNwAY!PG@;m>6sZE+29tEJl%CN4Z;QeuteSHi zRAC3rVr@H>=hO-|OXgiGWzpWnTjfs{pVFi+W%m8~S|5G7Jt;BmqADZA1 zoqGntZrQA$`=jb4Je`EgI#2JSjrQ+d-zhVl$Wi)S8D2){VpOL%Bp=P$p>6BxjL z$pdZd`VEK~LSKIp)wr}2`OPu1$PUa&N;woP&ln_zV z5vF?#j)!Faiz1aYKx+KS(ISexOa76|D#+^kUtXL09n=*%$~g zEMMiL@6Zgr_g(NEJJKhrbn_UqZ#2YC;`0$kPanSv<;;f(qj*F+O5 z&PG}lqG!!7`Xp8#wSB61)34Ax3UpfLqvSczZ$AK@9Qif_6%B$pQ60m#=ia+!xip5* znhV;2IjHhQ{%`4h?Dx+X&2MF^Xi^UsW%N5`X6aIC3az@sF~qKM*xBjIh064{1B3G2ePkE@;_BRjWs(LyzHRAxZ6HHQC>aNl!cAu zzt6T4V&W-6Xq^*pvV}j>mp1ciAZRfgZ*Jx$*2tlBF}p93E?g@1$I!T;+HXXac#t`3 zb-X!#=_eig^FaN8!O_bv7g3^>(s^q8)pkn)_S02<&-I!XsZ*Iz{jh)t;2VYs8AJ^5pV!mWF)tNM5zvR7+%yO~eQSYC2(`7&Bd?{% z)Q}cvK+jH3r+TsS!@XKAnz%-AnNDWY%!pfSj-}CfS5GC!z^h_aw0WPvy1aIm3R#*7 zeY@h8VvwgOPeiEp&1Chk-{P{LwEvW8|KROU@71{Sr~^?Y^l`4^xUiN+GHoB4u~4sh zXQ|@kylJ&ebkH@6AMibb(I;~Ixa#Z`TycuxD#aKQ-7o-#pjurP>>47kZsyuB^*1z`%A>|cVv|;4&5fme z$G3Vn`y9S%hs`}J%q+1OgM*1CMd9}Hl_PqRK?LVSMo!21owC>Q`ifM4_wC(uW)~&Q z5kvHK%2$X-u#b%5F^uPK2MLA$Tu-UQYz2R;5_B2fADr|?TiVXQ-99e2AFE>0{3n{| z8sM@NEE5~YIZTZ>g|)hyYzuM>rBF2Y6``L*;W=2IW7qs_CtIE#p-=uuGbLRxd0YET zNJFFmdsjD9dvDiuccg4*B3k=hj2^`Jyq?%#9rTre@Nz~-@`lN$G6-)vlQGScG5VWM z-?`!*Nj`jW76da>pBjZq@0;kjme3?U=oOBf{`qT6j}jE}^tR7?hWITe(F$MLQRlhB z_Zn{d_)oQe;sS+?k9#i&Wpf1;ZMTbdNLx^tVP5pDlFjOr5)r%#_)bqV1ifH^-@!T3 zE5^hFXyEJ(&z?5KBueTH{F+vX)fWI-=x5unhm87>Ts5dEqdt(BT;mfo;G$B!Ie82z zI5LPQs6{K(mYCtUY4R!K*5msK=-15jhf)W!d)6qxulZWAa;j6HA^be%$10oqgnnxL z1Jenko4N3{D|17$JU>mjq`7ET_^TGlq!MRyB`Yjn9k1wgPq)kw1R)W+CZJ^K;qdHI%2Sm-$CR;bF~~xuZUvu;P+i zAU;5e7t6ceTzEF?Eny;S@Ax&7jDiY1a3J5KD<|%-3NM4EDS*MlP_{<;@G)pvKDj!4 z{mqlIUB1zQZ&C$}RGnenrLD!yMbD{9>+p$bD5-XPn&)jGd*U_=EpazI`SX>yP>{5rZ$HHpYY+*~)(z&lU24N75Ydc~!ptLSBlK~reI zYGUJ^8E5hWwjQ>hp$=!y=ysa59!Tz*>UEUBvzTfh`UnD3?)HrO28Ty_KTRVOZ^l~= zrW~86O`n|KR~A$o5dP>(AD`pt-q#*E@6NV&s{Ia-)4PO}A@dkX+!(pkn`g`tN-pCr z=VKee7;_IlJ%}_DuY`_EC?{+t)#QBOmlSdn_- zK%tSh*i>0gvS5Fr8(xixe;@Du`e(xah!U2c~Sy`|M@8785QV|-*k5Ao+F z2rOE{9ij#XC<4yR9HX^XXv+gHF5q}qd}V|alcn9&>;ceEd*Wu#5p8MtPKM19l$B}) zHJKc3sV&fY(VY`d;*LUsnO19f{EYp_2pb<1Z;#8plKBTNI<8#^@|hI6eW=pWo9YFA zzJ*x@lRg1`?cfnZM>-!H7%H;iyF2f0;LPvQ`eA;%>SBHfG%_=35<&%lkHRH z@+Ig?lwmxf;4(#i=~c(t&*ifO;Z+Gkvj#^E=ZCcJk6%AO@=pWI zLU`0<-rUzg#^rWK^sq?AGW;53CWjV6D1y8Xnhp$cgog#^Y&XgPkjh~}l=ME0W z=@nAlFga0{p>N*2qc;%cnPC&z7oxhyG{@_*=-2+rSdU_M&5>tUr@0p9=0{c`nGJGD zH$S%9hqaDl{w7_sf;+Ps3vWc8D4V-9&l-YaI4;WR=rN3{M`zf*;JTJiD5F5r(|y)s z969H(F_iD}V|T0P?~}lYIohtt)$jIiE&pMkwbKKlBo{VSH$Ny>p+CYvg7PEMh({JX z^=8iZCEA2U?;|k5pPN>_=QD7zBxYd_G>j?9y1ZO!E85(;Z)wIwp#G09b>txBLe}ow z+%Crtlc*h==__VuGPp*4xW))<*?H4l-FQg*Rp6;od^B0&DuG=Rf&%G1$+y#C`E#}R zaF-F~)OX+t9{$W|&j$pv&=$Ad$H)?<4-D=6CB^Z@%+i*}xItStt)reQ*JHKlse7|aILQunkQBvdC;%NP ztqSUd+yf*b{Lvd@=gP-ojYnzT(N2y?dG_N@-fmXSV$eO|!j*eW3NXA09pASScTV6i z3rKhOHA^Z2rW@QPii=!-c(MOk7WEa<=F-);k^yT;cud z&V{(CQue4ipbo5<8FYi%V86O+xIlr!6`Fc~uf6x*D6W8usIBp@#dg=HxEwRNr{?#o zJt@UfG{QKCa-1)wa!ZZFc^M;ItI&==Rm4E#S3~kjrg_(U&}#&5)9e;XPlTu1fah|! zo)-gO)@VXTCC&Zwe;jK&NH7|vm^ob+VB1i9q#>1Mws7|gZ-$U;Rn|(ffNq=`!T5ze zR{YH28K{)Oy)8*FCUXukddu4hd;NpL~gBlHZkDN>d8ttvPG!TPMTNafPAs8#1X&wL%)B0`8G$NY2G=y$&?V7g0 z8^^2Do3t;T`|GbIj4XymA%$#0Oaf@e0xjeP^hVu1`z!>?cGZ(36<`?%+h-)xGDF|p zo@JNXEOu7wJS-3aI6DLizje2P&>*T%;HFd43tn0DuQ}Y~rW~`*(0=x0H}nQPAu6^9 zyypv?Hdg=4R62tp9D6$E^|2C=qWCRs*qXk*)_X9+`5nB>6aX(Vy)PT#DuP-s!Qch| zYK`(nXQ{#V``vq+YBY(a!XR_SO~9694>?xn36mOWfmXAqB)iB@5lAj*t*pSB`%`kV zT$(ABHF?QW(;o+ETKXdfd`PjaO^Ne@V6^jf@s8!gKlc#5mAC5Ml*ykRNCJkE6JVaf2Dkv} zA1mWZfxpGWbrM0*?|n3!%NtBTfGVJW-18_gxogLN|0?6j9WC)TmOom&^E~N0X<%&P zBi^T!A4$|jCIjrcR}OlsT7$Ne04^^tetp{y0E8P}@_6!~oKA-L>@WtdZqyBJGK?^1NqkSI+hD0x(I?de93Wjmcx z!JmuVMoJ=d4tG|^NDftJ%yPlFI&me}{i8snLM2ik*TtGh(&$(H`XmOzpRk}@&A^*` zZcA=`HOlw7_>&-C2zLb6Ilz^kl9X-*8%`+MOj7oPn zjv^SP!0Oyys$@On;QJGZ4BPfw+Y=F>n_F5s=jUG!s)Im1)rRy+G2lVbj~_5EiSxO~ zzVKccZ_==H)`Hao%TfXrvn?=bJsgO}!>N5=R(w;>uM9U%-T2vUCiH59BlKT`ChS*G z?ds_IJYDE{(Sc6Hl{%lR9%T2AXKqUW7hxztVGML{O+)qiq6Tl;Jq5GHtN=<{K1+f} znD@VdYL+v2PaE2Js1oMk4!+X#yA;Otn1tYgp?7WqrV~9^eg=~0SwTV9}FX?#cHj@uYC8RCut-xN-^;F>*@SA81+>mxj|*9dyevD)w6Q| zsZ|N)!&IUSqY54YBl>d08rf5Fc6nz&YGQzfwv70`3NoeRTs+@IM zsAx%_Q;4|GpJ}|^a4#EkXbF5XICT)kt9m^`Poa*l*s{~XqI>e1O-jw8)>V7P*N<8m z|E^pF-70iQ-{r3XuT1BI9gb3Iyw3(N2ks<9mF&>{!@5wjTjRC6D5Cdef&M+J3c`FRS&cP7fikV8P&Ep=-u75d{mu zLZ<+W00t2of!@Vvl-za!+M|K0ArAB}_Il4#E!Avm_jGw?4EU~qo~dgiRv4?5Klnjw zW}%(7cy*0*x>2OKzoJyAXJU>nuzx;Nd53mk_hw2_sgU(C|BV}-f-Cn{o?2jtP9SHj z5?E!;5F%C^$SHO3H>`;qel6#fjP7dx-FNaJovO;=lOO|XA^-e3P-&~`!&oM`d+o~ylUD40)8Qd zJ$hbs?z^hI&*6#G&IW_Bb1wY!mWf56_OLUiV)yT;47Q8k7E*K5nUNQ*xl<(}Jvm95*z<)Pj3BmS^gsUroSk*=Mz3#_D#v&31 zb23@$d^xX}AcHt(?rJ%=^pW#?igqp;$Fh7#BF#%z2(3q;u24UY;wDW$8rmfr;rVuO zU`y?pk=ZAs@(b6U!=f5j?lxPgClqw@g1LiU?msTzlGa;*51%mT?82S7n{0I#;pV~k z^n3)B4LCxmc;u0Uj?Dcofs+|vy&?ks73(hSwH%vpGzGyEwix%Y4;|KsV zHwbz4r-65yw6iUykzFq-^U4F^datis$&=`9Z8{s{u!bm6P9etNt$Q|RmWE2G$K16s z+UrUZYuPRqw;{8>VlF)w;XKf|pq}O{w${f)pR#@@Ty(VnJrxXZf<)fj8g3Dskq7`^ zaZz?lkpWg2CBituJ;~3iTl9Vr_pS!iDEjRlo~Y`2FbgX1;QIs+j-dtYq~#p@NzK{k zAap3U$F0@G);G#d9JvSE;LHlxwPi{WX}H|r7dIV-R<2h*#97C#mn$He)?v%>HGbfE z?YO?U@<<~vB56)N?qZPMx9R(%FZdOz#rcgVsmYrdr|*Z4H_b5XA#?M*UDe5^{NUzl z)AX4(k()%(7x4^rrRjflbc_keG9IYhadPxQe+DWCZhrF3_{QiB~8BHOVOX#BNk@lc3P&{R)$=pFZoi0<>Ksu5SDlCu@%KSrXv#BXoTyVExJ zJ9Zlx5dOun8|@*tBxw#jbft=U72dGRe!gyHJ?v~~>|;)nj=;N_hq#_HSd z%Krh90S4E`?VJf7D~$-&^g?tM@=7G`D*G+z6Fyp}{kkA3Tye{YYaqY@o%~LbH>H|^0gIc{&>n^{14Wn|9W zrDc78x>L&)o_EL9@)6DKLU+2hb;3OB*t$su==0R9X3rt7`)mI7l9&bCvZ|uhzA99t zP&K};%z;eht_u*D=34f*Zu!+OQslZFfYNyFL02dDre)Wd>H2FawZLBT;_U!R?NByfY@)!d1WFsdJpF0N^u`>HQo*P2l z6A@5;!pERD(-+y3Le8qQMWg*=1tKfX7tqZ3NW2v4v}bE4XUWuAa;-R~zm$X=j;QxXidF4l)ffSTcDvw_V$q>OO8BFyMXg z321|!TNbVD>{}a?T5rG5c&lSHmYmw<^#}Ubc@z zpMSWiv?N@wL8u+8ko4jq2NAi;>kqrily3&pvWhq4kIVB1)R0wJ_c0me+aaIjxmDkq z)b{^sl-(Ay-b+O46RH9?rS1Qaw*jHXdiwtbGcW2-;a>1Ldmt)(CZ_w^x5yJp#b9jE z_GTVQDKd$-?vp9F)w7V2691)lrbD1HOfn;2+ zI)IKR?szY&k7wuC{J@Vh+PLvXJp7bq;$`vT+ckIJ65$=NhyyCD=peZ&S>TiIze&eK zbFgG1!P)bOxG?iIN$1w~(!k^l*(;CrjbMtLf*gI7y^uS9MlC{+;MP3V2?kZV-<0f~ zhYh4ac&2(6{{Ysfm9Da_O7dzt!rFv6nLLfqd`Q#pXw1s6;zB=9%az;z)kF-9a5@pWD0n{wTq6wO*~oh)2q`k|m`C^Cp3$mg+gY5&F_Ii!PiOwxRi(g%Fg1R}z1j~W zpp*Q4rQym3+gGDOMD>Nr`&a3fYHE-d*c&JOs+U}xXM671{}3akrw_xHmc%o2K_IVb zYO-G`t*S@*UjEmeWl8N0A+-?h4L|#hLOi*yLw`Y979}ej1Ux~hk^9$W_RVy`HPOelh?$w=?Skq~)q(71I zz-%(1yFAXaCUUd7xZAJ6RoDh*HO|@JR4U4+AIX-(Np{nZGDFC&f*5PNo^YAq!az0= z?p)EC)hYSL=ZiOUM!unphUg{k71@NH0LOdB=d@JVW9SB$M4Z~sgs@&x27Fgpi1nQX zFqJ$GGRU^|+%+?Et>?3^aX_sR6siYCRn->I7~ufHWBb8#3VZ_qs4hk$OlS0dRN%^s zYwFiF+ZzRMe&47N+Z!GZN{Vrr*jju=$m`o_gm5gWY}7LOackeYe^yr*7zv|3pIb|k z{ybzN{CSjgUd3s|ee+X_^z)yoRXLcc2VV$c;pBh`iXYB5wV>^%+g2F;o7=NtoXu8l z>3dXdiXv%GC{p#eaW%OMp=sMMRld+Q1ViHZ%+GP9K19c5qFpqz7n97r@MUdx9TndF zy5G;d6(3B<16K3IkhD28-=M3win31}d}q-iqhT01DLTIFQlk583f5Ni*4V#AkvW!b z`-~8R;7!0mxx{7>G0KB==IO({<_X$B=rj8bAJDW_a$EsxYG?);AY^~xj|A(? z(lLhX%)eOmVPVMf|H_|(Z_pWj(Mx;`Nn~b2vV{88kPiCC)#p|vS$%7nmnQZCj~!st zuj13_EnM}GRSQ==3{UmmuO8wazw93=><_4X1gZnZO9)3aHK^zjJXS0CU%h>KAe7zz zc2AEs@=TN@8fi%OH7!gcJLzdqB196|_jO2-JeD!G?2;`Z`x3?^VUXzw+a`vzVMvgFP1?6El#kP}KN8_aNFdUmWP zD8F}_As`2p3DC2?l4W5A0>H97HfJ4?4f-rMFif%72{-AZN^vGuATosxiYye{>ts7t zCbT8R=*4a@7P$SsyAoPS<-dJ}NnMMvU0~)JD99Frv+cQ_+c|(i z^c#RUr&P_Lk=RDZNDLsrYbv#E`%%_(Ke!185+>-70^kwEB?ngy;T6|tAi2Ne-(%C9 zjQcA&Hva0}k3mI{09}(A{~PG0`2(VMrxRc-NgeqPhRFoDm;n%x>8)m!Bk*4XBk`!- zdg0`I%zlu{G${h*o{Sef9Ol)#S`8pd1umfV)~!%`{H&d>4#J4Mhw|CYAZ$>d1fm2E}Hyi5jd~ajLwVMXEcdc09=rxqD7c1!m7XMo=y{P9MDr* zKkSdm1q4sf>(4%TTkI4ePTW(A3_%VQ+Y2A&)*?0rD|Dik$EA;(X(%0LIWxR2#M=mW z1b7{+_^Ll=pncs6+ZH7b9@18DrU($(c*R{G-8F56S2Q&~hj2d^o7LDa0!kRL5lz3= zf;$ds1q0~u2hjkd>N5DPV!PO;3bNsia<4vR4C)Ic%a~SVd+iK6BZT7*fiOvlVlmn$ zY%Cr&9=r>32X@|RfTRr*$Xy5fbthm368%&3Af&VNH&z9%b>lEg^x)$kYe1!}X}%`# zYm|FeQ}Grs@09xT4}t>Ht-dx_y$UmQvNMz-N_BQ`d=lwheE(zzGJPW}mfi7EugD-p zwMiI=nMulvO}sRz8YDA43%^c|gBPYprYq%bYB*TwbXTnK5j<{x)rh*Q!Ue#JU(<>3Bc>EfF< z1qpxw*X%{AwL!8Hd1=EM1O%e2I94T%3*m4h?PpRisml^YWM7$2n_4y78PjtJ%o1jy z`en$xT$3H7ph=LDB(k!yYfKZaGeH`QQ-JkHSjP#~WtHS<(fq^`p_(%1Pb~iQhrfnj zk8-k7ze!s_|HeX?A z4r{>|S&+{~ffPiOYNCO`N4A=BQcUo{*ZJ@3t+E0YZ|$v}2hztWuVa(|&jsL|tdArW zSc8=%t==$TTn3Q%bX&AQ%g62(|HI~{ufR{1No8hMj^n6vaW=Gp$8Tz3g#GN(=EWDP zip$dZt}h!fI8HUG-9iD`H)%KkMy(|0?a?GJr+n(7%@A(1@pd^uv~76~YtXiiE7ha) zj!~!q1pa@wazqR@faZJCjqi1{`QR8t?V6i#Y>FX>{5ysRKm&A4va|XZ)dp-FThO<7 zc+V95BuT3AZ#CdB%lNSQwT(yP*aamVy`AmJZDom~!)BRU4t1XNg*^i7K%tCmJiwX> z5anHjbs{#(=_j6QY3<)8v2NCz1B1QYME*1eYb!U_Y=OWqE0=T=9KHqJq0->hKS0S4 zMyf6c3bL?4v}6!(IZmR#k98vGdl&9zrsl})=%T1L3(3$gX%*PP9|E1v-Z7Vy69r_& zTNlN$wHbd+j71(x$jETZymM(KJ2^(@t|`#_ZhdK%gfn8rdIK8{GFd-2R<*{lKBbO9 zz1jVVx+dL6$STl@`{DP-%ugjmm##+`VOeb1-X5R+`Su3Xf$c`Pd%DdXPsb4Oi}bUE z!r)%S*z;29`40NCW2I{;`t%<)+<1FzfO30h0OvCoh3Mm?l*2NAPLI95mrPdB4$XE> z_(nL~=+n~(Dm8utJ~on>`l8TT+>2nj3(;V3;OBVd?dmGzJjv+VzzsmfJEkwmyumd* z9<7cuz!hd^WQZ4L8}Zsk5UdyZDuo%@`?&;guDHjP?_WAm&$@OD_E;3aIE2aCmH)>p z*5V&}3EK)8i1)8Bfps6}&{2`0AA0O>qQSW8b!+6S zAf4BEY&G%Pi;+uW*^#_5oa7_93QuV&Y)Kv})nSyPz1Y-L~F2wTutEW z^hTSCB0Hv7XFZ0?b^uq-LP?8Xh!t;*8t8 ztBq=Xao`dA%6J@q8R9vxd%v^yb)3EJgGPhD@Y76Fc(e*tA4H3$Dp_^L&rffxWavIr z&@LUfZ<*o!uz(S(jas`q8r4 z<=s0|jJEny1s~V#=97cS7MLxB+=7*>8XzM8qzF^YRlRqGsY)vY5AW=S%)7cH8 z#>3-0EIKXwf8boRvpV{cT+K=Zo0yE96Xase(qn4P;7;+tCx7p|&T+dCTj`nMF2pW8 z-ewdpao6YZTuYD+R6YWQqSL^g$6$;nw!^h+DP6#-{PXMB9NT(IhbDco^wlv@Tx!VI zQ$ys_0$7iowWqNxJtbhs&}k-hf>zkb=6!*b_`PyUA~yXj$T)zyyG^kkPY zI-~1@e{Tr~_OT1G4Jn_0EJ$tS%HEu5(V^+Hv4ZB?Xj3e!+{b1OxI(i`Q-JV1J|5Lk zFrkTWG=LbJmUYA*X~n%cUqF$9_N&n6+*^E({h^*dIxkp?32B>xFTiC1J4p&^L0q9k z*Wve}jh}{8HnW1WqjF=<32PKOeLN$F>dNb-FeV3}+)pk8+FX(cJ;Yt_%?IjVvmEo` zcLuFPRtHswD^(ZbgQ_o-X;{^_HQ-$C0G?ezaJ;5povUB5KT_DGic@2h7^|i^fjQu2$l}zem;dt%e4n4ZAiuLnLm=xu zl~*wpIUAJPi-n-7^DX0wH6VT2ez<%-XW@PQJC+N{HhgNlj{PUYC?rOXZxjEyk;B+! zPt17Hv39oYeKJ|n?xw@0ZoxEx0j_LQ&t7xtZ)@)-eR7Bv%5!^K*Kde z)JcDJ&SfeMHm^ z7sv&o?-u6t^z_c0r5;$Fzk)QLw+TITb8aX21DS;yC;PH}MBmKcc5rut9_3YvPB|el zvE#BO%bj5Y8?tjcQ(TD>ze~g&%-7?DPL{-!V@D`il2@b<;ZfBAt z5i?sNT3FUcAo{)VidFgogcMjQV) zn5*b{#)gu>aR14XB=858)32ob;L)^}Ur`$RV7dAX1-K*1#UY11AN;*pR9@`NOFiBHY zzkYTYZlC%{@5i%5oxAX}(r+BiC60ovrCKIQ;IG=b_Z0GPe}>6J?Jv{qEoWZCj?||w zH5#3?yo}5~nh;h=A@wfUwgNpe2tJ9!+B+4%5Wx*pS{L-$tpl@Ss-|z2v+T0(ni(NW zGPRYFJU=UiN0rlv-G+{05`F@n!xZe~c-V4$-dRseCBPUft)d1=MgCkdCTvq;L_SHp zi{T8@_|g#BgZ8e&I?^gr$Vz)zms|2TF094Bz-WF|J-WGOCY21SW|je=hqZ zwHf0lTvh*EsKAez(f^d&?l^yL6|N})+8T(iWEm|;n`l-uNs*2w-hRPZmG82@Mi4Pk zt4KCO=VFyCKL9$~puf-$UrtNa8g*iQAk(E;LfC(t!8WIZ?+^=bs}=F5L{3UuGY@5$;`V_kB|xiC;kyzirp4*RefFI9AMYs>oiQChahVy0 z#6}>qA+3x7SpL-f>5Zz%HRH$dH2HF7M8p*@da*=~^D3SFSy?}gu-0FV5Az4{1l<)s zxw&=&()DM@Xz1eqJRVY%Uc7FC9?vwaXsJixN0iVVsMs4hI=vTgWvYhy*GK_mbghz( zVM=aB=my5uXBG8~bb*ifpH0S4KC{_KU;KNoZ@2H?Td6DdZk1X4I@r&K8CWomoTr*a zTZnsIo4)y0ZfDJ~*EmJm{S4Hf75muTDgNRB*Yf1FQ-YG}JC@mWF%3pDC6g12nw^}E za}Ti~W*ke|-%;}wtZKvhEI7!#0l6WjGiTXvD#YD$q3MV^Cw{+yU*E+l$fnP ztb^rWT+R{^F3l~*P6||=bz2V5Y0SBP;`!RhOi)du0DaE?sWLAO+}Jho}`KfMmVKyEKkD}$e~S5 zeknP}TeArKGLx@TP~0edjaWIfk!6o@`r8&&urfF3pl|Yj{5GX;IXHyv9C8ONCi88U z8s`ZXpvWgVp)dG~ea#?dvSN;*pl2~Lw!bOfF?x)JEoGv>3NQMmJ-Fn3riI;4ntDs&bBD<$k_w1Xu7s4Uth_iffvJwr2G|0|2;Y5EY?d{1fi9 zxY)kBp!@L83H6X6D*WiLCtQO1yHRz`?ZbXBcrElx!PvRTT9>%uivDMu^PwaDb8hp$ z1k$kDE$-7Y@Ss9vJq)>3=!p= zQJjjX9Uk{v=y14Hx90O|y~n!G(DZ|n^gl*Q*Apo9xxRdP*lPhwC||_S!-IKHrMDv-eSUUw6?&h*wYLKPIzs5A$1AgTi$F&vyXW#s5 z!nbCC%k3aVr;$MY$(6Hht1W`MxPq&T1XMhFD)w{ukCnXivDfn}dCwJNi1MU3>u%Cf zq64G&N}uocUFQ`Rd4Ku*@3{(rzboH{F8}3#HppyrO=A>RCiZ{wGstKQ=`c3+ zy-wbTjazpg)Qn)ZN`6hlY7Fe+#{uS4IigV5^#-mC#I#==j3=^#Z|p?cjbo7 zK12uO1dcEW?w(b8m$mf4=A+R1Z0sfHx~%g`QBn_22O<*r&BXc(-)clvLzT}B_9Hw# z!1Iml!167#)Vb1W?D{9^Xu|v;RyS@|M{|UE%ylxRN3g4ETAEheU8LzKteyd>e#VW^ z%cIJWeZS+GNWBRWEW88N$&wK{Izp)D{Ye$VoLv2| z@82?q^#*%oa>7DW#86Hz^$geBW4vIWD)*5Og^hjs<}Gz%e7^0BL~PcY?+|ubGKslku$LJlLq6BR zdIfN#udCLuN2y?M)BK*O{qDf&3?0?>-=~JKS>vW0Ep`5FCG;~y(V-WUhbBB>WjMch z4c6^1H`Ru4ZxHhkYXW37HST}SezjBNU!<2=8B5acY+-t&>_y`v{b^IyGU@F8{c%p< zjkm`oDCZIth!U4xzy4q0)1@9|`3mF|b;-Au=A_v@|6WBY&hK#se@uCvM|J{G+L{Nfz0fB01 z6Q~6M1XlRtuRj{Xz^!(Vn+*?6OOe0De~ zZ}OT=eqRzV+c`C;jJbG6?SFi_aQSh0_A6GQrN#o?`F+X;PJ!$}GBNP5qTrHM9llo7 zMW9WXOjiKqN>(SH(sLv)UoLz)~6y(yT|B ziocgmgAF(7#18aAK1VzP;NQo4_|~Q-ytOz&-G)8`sxD_-T4l6ZA_lswr{a5TZq?%S z96gVE9z6Mz?6v|5puT&GA}qMtuHsj#bJ2=?;vFJ9bwCdZUHt-t6)NYFRg>R!TY@4c zM2Z7h?Nb_#(AA3B1Lh`W@`uTAxlNwuzdb#F}6oK&JylN;zy(}Amb&P6G)*7zdP_g4jv z3jOt83m?aZ{dj!Vr-*EBX!eq)*(+1sQ+!E$F*6R`K4*{r*S;Q>HyFq+IJsukJIL%d zQQ>tc4nY6Y3O!-B}0`2o#DtdnU*pfYgLgH#^jV0o)^9bxe( zyiRiF;vTpSR3XeI{M3McX|+Ms6@wmw6c-WxkUOw^&F4JpnCBWm^hB{Z-FFSPW&0t^ zR)!!Ed%Wq2jZ^0@7~jvCnOyFX{eo4h2QboM7LQq`T{A==#3EkV(Mqv`!DzDHDYQeH zwuB$M+APooxq6lz-5F?UK+KIDQ5KN@u^`FZ7s0Qcw(T1ej{#*Pc$$Ns z<>t`fOBOMZJS(f45jv;f&-%W)gikFLdV+?r@XXj}h#Qg&8XY0GVqi{sv>6oD{y$x1 l{6E~HT=&@I*T$hT^()7yc=h?fP0{=0rIn@LOFnq^zW`G;rdI#} literal 0 HcmV?d00001 diff --git a/doc/overview.rst b/doc/overview.rst index 5ad81b1fb..f2f6b6e15 100644 --- a/doc/overview.rst +++ b/doc/overview.rst @@ -2,6 +2,23 @@ Overview ******** -.. TODO:: Have some blurb here about LISA +The LISA project provides a toolkit that supports regression testing and +interactive analysis of Linux kernel behavior. LISA stands for Linux +Integrated/Interactive System Analysis. LISA's goal is to help Linux kernel +developers measure the impact of modifications in core parts of the +kernel. The focus is on the scheduler (e.g. EAS), power management and thermal +frameworks. However LISA is generic and can be used for other purposes. -**(This page is being worked on, come back later!)** +LISA has a "host"/"target" model. LISA itself runs on a host machine, and uses +the devlib toolkit to interact with the target via SSH, ADB or telnet. LISA is +flexible with regard to the target OS; its only expectation is a Linux +kernel-based system. Android, GNU/Linux and busybox style systems have all been +used. + +LISA provides features to describe workloads (notably using rt-app) and run them +on targets. It can collect trace files from the target OS (e.g. systrace and +ftrace traces), parse them via the TRAPpy framework. These traces can then be +parsed and analysed in order to examine detailed target behaviour during the +workload's execution. + +.. image:: images/overview.png -- GitLab