From 79143f67820000740a362211d9424f0adea32b91 Mon Sep 17 00:00:00 2001 From: Stefan Kalkowski Date: Mon, 27 Mar 2017 12:39:13 +0200 Subject: [PATCH] tool/boot: add chain_loader 'unzip' 'unzip' can uncompress and load raw multiboot images and ELF files. Usage together with the PXE bootloader ease life running the muen hypervisor together with a Genode/x86_64 VM, where the raw boot image is typically quite large. Ref #2358 --- tool/boot/README | 9 +++++++++ tool/boot/unzip | Bin 0 -> 9835 bytes tool/run/load/tftp | 2 ++ 3 files changed, 11 insertions(+) create mode 100755 tool/boot/unzip diff --git a/tool/boot/README b/tool/boot/README index 742da1a1d..fba34b34b 100644 --- a/tool/boot/README +++ b/tool/boot/README @@ -28,3 +28,12 @@ code respectively the download source of binaries are described below. of the modified Grub 0.97 were obtained from http://os.inf.tu-dresden.de/~adam/grub. +:'unzip' + + The 'unzip' tool is part of the 'morbo' toolchain available under GPL. + The toolchain was obtained from https://github.com/TUD-OS/morbo. + For Genode the unzip was modified so that raw binary images with a Multiboot + OS header can be loaded. + The changes are available on the genode_bender branch of + https://github.com/skalk/morbo.git. + diff --git a/tool/boot/unzip b/tool/boot/unzip new file mode 100755 index 0000000000000000000000000000000000000000..000924b825df51d15421439f6cdb4d80a40e5e14 GIT binary patch literal 9835 zcmb<-^>JflWMqH=CI)5(5RZpJfWd@;f#HHIM8O>GJx2-LF^<5`yYrM24RC-*Lee^38Z}&hJ z2E?d6AU<=qkBY!ChR@y1y#b7!!eE(W4vb4WZ~SL|F$=5$A$!b$an*n3=(xk7;bFm@ zhnwHnd}HS5_E8Dwc2Nl_VQa1yVJHjaoe#nQUngwmRS*p;xQHUD5PWoxbzVJy)Dnb?VD zqLL&yrn@Bt7+$onGcfE}%gw;>Vhab@C@uLi7Q?r%qp@k+D=EP6as~qf1OIk6t#1DA zFd6>!M;T8sUTC&pEY;`^5McIT=?qbk=?>uOb`a5aQIP?KY&VF8hRD~y|Np!4Z+FwN zJX*Bt<$MOPl{j6`3vxsc$e*_V|Nl>Gt}`ZqXM%B2gHpM-3}Vq+!zRTqXo!~pm>8u;R}_&py-nT3GHG6C0t>UfQyRGE>J=_ z#_+$}MMdYB1LGsZ1OFerRslJ(A1&yeAdd8q5@2}Q@bCZs<|8)Iaq+Q-L&H0-gEDOM zn~-i7m4Z$m6`k%7m6FaH6;MKy0jDh&6^1dj9_Wry;nDU{k&up2k?HhNvFMCZvFVOc;pmJ}@#&6H zabS)!=!{Wuu?|sj;cw;uX^Ud%j8ReOjsj&Kh0YiimF^f7mBxer`572G&vyH$C^TPY zXne}>;s5{67!{W8D4tFomChIygYGB+W*-%hX(k{Y!Z9i)mN69izfi#8b{@?V`d_#?tKq_PUPdkA@l*Z-!3hZWon|PKynUCEVRyy&+sI zFF~2K`A7&PS~{PGcODN5Zhqs_a;YQqQnxQhcPvk*?}5(PBPFaa>UkI#y4@v?yPg3> z&@tD`498usfS8@fI$ck6yNeurz|wp`K=Vkii;6&}>z>{i6^U-wGuG}R#rfTCEZS_H z&Of@{I9{A*WnggVbpB&_prQ5>Ly2@ZU+1lEHx|tkoh&Mb2VO`BfJz7cDF^ts9cX^Q z*m9u5nT5YaiHU)soB5dQWyWsbE6v9Qnhy(f2fz96dZu@ZASk{VFLb(IX-vHWimcb2 z-L3~fg%qf$?)AOX9eSj@^h&3T3P-Q&15k46WKrq-)cNB@$>0C~TMqEIw1N^t>>a~P z-R>gHu@5?3&vd(<(EMy2dZxs_^H}o%fo_j4mN&}`y4frbm+~BEQ8@@o(P4}X44xoU zJ3*y+j0($f7L{jG0t_$Ym>C#e8Zt64IKAG}?Rw=ni;AkW00XFSc)`rfzyL~1$5~Xo zqy-pWd`fNpxq83P-o|pW`el@i5z_f=qY4(;fV$+wTLj z>w``amEO=NFShZ4Lb#OGvi3=d2PofehvwT#P=0k$VX2V@7cOh11sGn=Vqjo^82b!n ztR2)???2sPAY)$~VrF3IcD>X5PN4aMiCHf!E` zZ4Zk?c_xBcDc)hFPS4xT9>&*?nic8e$SsQ*8yyj^5Ra&Cm@T-EqWhMgy z!|Unpucve~_hz%aI0Nz;7ld60s)b*_EdBrgfAfFFZsu}+!%LkmDgw=iK~;&!YrgJa z76>0yY>V{fs3>&1s0bWqQQ=}>U~ugYQ4s+pY*4OyVZ_G301{|EV9?v;3{m{ z7#KP)g3RMQ*cqZCQo8xI3B+1|a`hx`X$v2=A7 z$p|oX`2O#_$a%2zNpFaXLg&lQ51JP{eN+VeEL~ItiuraJfGUOe3=9mNA6~!ibx~39 zwLHq-H0$60|NQ%08D3lkg~AI^pzj3b!IAb?2sM*+C$eh;63)0*9>D>m#&QtGtBN+`3bl!Tmfw}Y3J20y^kZA+^ zyWT*S4a^`jGB2!TVPFW`Ao9%F@W3+%!;^;JS})ZJc7Ax~{KP@?Apf?Lnx{GrzJ48d z7~JIIX#T-fBC!zCB5gRwpVm2rfuWz9!C^5-sM!`o`j@jd|K=*y-^swwz_4pU12@AC zh6ZkibIXAeju!_1|NnP>{jvE7NAzJ(+248X^OCsu!(ogEgF6o!9Fw15hv9+d_VwML}_6kvxrPnRlm z^ZLjNfC3Vf+P;5meOtoTS<28^%hGx1<$opy2FpX`l0__*=Zb|}-}1M-1Z709^vio7 z=I_o={M-K@d@XSBl>q}F9hy!8DeD6|YO9eg0b`Q!V? z&f}dIz#MKD6_)QGLG=-Y&-nr5^3H=LT%Dl|$6Z0KW`=GSm4lB3I&X3Q0_i^S(uj$H zp*Kdw0hG-_3SLX~#;CY}c%Y8bYo6X16;P?p0&28%yMU`DkTOk3qZCwOb-So=G*_@N zlyd#&QE7Hj;b3|FW(P=(Hj7FxPb(;CcAjc}#o|%Hb=*Y++&z2!q1S~cscmi9@G5Czy06AcLJR@6TQCQYrVw3{a^jPZb8jo{M$br zd?nCnSfT+k*YF!iFSE&HW|N5s4Xu~z-!L0CJ_Fg=X$Y!Fnh&yc*Qkhem#FakcTo}P zG}+PZq9S6=qQc*&_y7O@*0&`Y%{3|l3?;6h$N)7+nORhNLz@5W1_h;djEaCYi%Okr zw^7GUkM1g#=2tA2pLO}DfKuV*_niMai#T521L-=>(hLqT7Zro<5EYAq4+IWA65w`G zG2sqTvFUVW=?n$c1`*vZDhUT42^@SNz#XCz!|kGy@|wl)fZ?U)BaosuxcQAjuaAlZ zs9D+RqXKIBYJgfKpw8grKmS2NCD9$CBGY_CA^LD|^BYj}QU=uX09)>(A^}sJ_6O9U z2X%IXcY`XYfE~9$1f;NVUkl@j&+paAQ* z*m?Bw^W7k(;Wx|Q#e$tLUMvA6r~@TTjQ1FCzkc1#q7udU0aipF59_=ZYb&t{<^TWxZ9(HRB_+2185kJqdAoyoKtA#2>0o+&M;A2E!@q6926+Jn{_Q;s z7vu#PI&ZuH^-nrqbsp=y@gf7%E!{SOM**UsM+vMz=>Px!;5HA7<)>Pq&Wqj7piUc0 z7Y|1VkATzbSB%9xFKa-KcIN307SLu{i1AX~$a_0%Sos$D#QLd+CR? z2ez-E^iA4vRviV9d%>pbfthK?Sq)$eBN)R3 z#xPS5U{GKHxza}gY>GnZrvS(R3Mi0|v#2mLFfi-@1^kQCfByg91q#`npwj+0iwY>Y z>;MJ%iw%GN|3AihMqYpc6d)W50t`%yQJ{nt-1w%4gMr~VNC!h_kID{a28QD;DhEKO zf@-uDl_Q{D$`q9o%nS^@EnxWgm>3v#f)d9rR?r|BRHgLa|Np`5K(J`%F_^i`AaPLDvkOFY9*2p){`3ET=TXB0 zFZ)3CJj4+GZ2^q@+c@~QMKB$F#KCxqf13yM!G|1-H@{!x-+t2a6n`tIsoi{lr4ypQ z^Fr%^63y;8VE=gZdNX$RfSKJ8Klc_gc5VUtu8XsS`}O7S7O;MWUBS!a78Sqa>!wMTNbCMbPQ>2Z%P1 zUYM3nkPCcNBn&Sx-n2YaVsMN_kiqHo*PYx93=H6rOPIn0RE6wNg^ZV9+Wr6kzr#gF z!uh4i|Ns9%zU=(i+oEy?)DrFg_5VM}EuBAmMGSgdRCL%F7+zF?1be{j-YH;pFiSuc z0;r|gY@@=!-_iz3Z3kYn?)dxv|Nq7#pyUe9|KI`7)6H*W8m#3(4dBiYa0O;i!Ub0O zk_FUntY+*k{m@XLXH%b9t_gVM*n#at^`N(A}01#|OntL8fRh@&?|oQd(;3XT$v z20Mn{GRD{6RtO-mnMySIx4AKPegbvv`M23=-a7bzgYkIhjTfuH263B@ zG4XG6;r`FRt%my_SPh8#_uz95#^WH?A26%AMuml;lmpZp>a=*B0FwC4zb%LR7f8oZ z5clW7ryPu6)(_3kV0Nzy_m9qxpo$;doMKVwyw&;Ph3%jJ|6336xAKBYNMXxg{H@HO z!Q~GxgcukYERXWHe);$Rzu|%ABQoIdYQ0p-Ysc=O5sVZnyC`L~%!I2)ep{C@Bq zOY?L7Zl1k7peFOj&T|J}vNS*AH|E(260p2ndNsQ9#PNIkPC1FWsR~}DAY}@{ zC8^2TIhlEh3N~5A5Vk{pv0i3gnqEn%Zc0&VaY|~QUP`K+LRx;2LQ-jZu^tx}Lr76& zW?s5NNxni+YEFJ~Vo9n(VqS_uX&%V>qSWGIg~Xg3h1~p<(wx*{J+6?9%wmP&jQrA^ z6osTzg_4X^g|y6~;t~arlNFLP5;OC_eksyX$S=uAEh^6}PF2V+EmA1X1o@`8Br{nd zH#IlEsFEu;F)uMaH8(Y{M4>!0Cr6>6C_gDNDW_5)Eip4kkBh-CA8IYgam6KxMJ0M% z44?@RhT@XMyp+V8{Jd2C)SNWEWQN?-+~nK>jntepUAxry%#_r;5*-CsA2(k|cO8Xb z2t!lB)>grQ!LhhFwWuUBKTknPwO9#kS89qvVu^xkv6X5Hm#dGPLPlz0N@|fpW?piB zQBi7g2}5d5S~AGslFEWqTU#RqH8lkdkY!-O+{EOJ%)C^P>8`%<#ujFp3NVG&Mm+z)USmEh^5;&$G2PB*t+dHy}B!II}7>KTV^!q^LBxM4=!O^U4x)GE+d&qL7@E zSX_)8jk!sgddY-L@XJ>yE=WvH1*c!<{JgZx^dNsOF&|(r3$)s3aX_LGxYTI zxEM5wQj0+;C&bgwE#BW7oGvsFc`r2uBw3PJl%84=pOc!WNhpY1i;D7#6jD-QnHOYj zN@7W(9)oj!0XU8X23InweWzCMG4Pq^2=&xmIL?N`aCLh2oOLlG0)Y z)lyL0fC`n&ymW9->Dnpyd+R6^rGf+%^76|SxfmvdLGq4*fu5yqQff(}xvr6kZn~L? zftf|32}4k7acYSo7ef$4PfBJA$g$=5McH~>3=;$dg%~*4IoY^axmkFad71ba`9W<< zh7^JAvL_Vstk)RaRGZ*se z<;#l>Ld#1PU9 zp#B~Mc+M6yhYK1o@Bz=`LUe;#b|97_R2`@l0vfAXAPbq}1<8RhOr1Id0|RJ!7o-l< z>RKYpz_8&FsOJPyh0r6&z`y`f0}*9l0IAb~aiDgAxS%#MsNo7?gYXME28IPJ3=E*@ zST*Q8GpL2miDq7hG6Tb7B#j_*K>D#`kO?67KvaSJ2U5q(05JgM4+tMJCk|qRFbl&+ zQ0IyPHY5l#K@21T#UOc5-xtbd0P$5A7#J2Y2rz&KP?#7P89;vC#vs6u4w^4#U}Ug? zDF*xP<9{bKzBd{l6kni0RglXW8JHQ885kHqW2YdOgZTMq>dP1y!0rXb7f8MyO&&BR z2NMFhcOr}fbq{Dt0VV{JUku|w<<~MWFl^x#U11LNp_AxQ+K~sMejemiG zf#Ds$07D#9|5K2D0Re_ADE})11H(1}0R}@TAJkcSE+D|*0OboXGBBtM3NTnh`O1t8 z3`v3l3~Qi#YfwNz?F6~s4UO-|$iM(0D~_xME@#~ys!YnJ|+ksGkp63o3=G-a z0t}#@0m#0)j0_B*^%D?zMuwM+3=BVH1Qm`HQ zi+afn>8W|~x%p*aIyEOPzBn}<)YxT!v~>!KGV@A6ZP((|qRhk`y<~>`(vpJGlK9lT z#H5_m6b6WRd{Sa@Dnn^WCP+ncevY1@p^-Vby<1QTZ}>tO#i=EF$qdCMMLDT?ddUoh zDVb$OskwT|4Ds>B895A9sYUsEmX?MLkQ!7knV|$)%|n^-Nu`-NDe*~}CB+b1LGn<+ zlA_d9u=@D))RLsk5(v8}H4&m7!UfgxDXH> zfnG90a#6Ce5zKZl2UJ}`+ruD-XXYlRr^bT=m?1tl3DPiUh>uUL$Sh%igdjs!Zb5u5 ztkc9$oC9`hd_2_q5N9A-RG`q0Ps_|piHGz;7;;kc(n~VHzJ>-X1JnWW#U(`y$vMfH zDHROy@uj)>DJhx8VEwSBUp%zw2a-<7ECWfGL0tt2WQOv@%n}Bu2l7ix;*&EHi@?_8 z7C>B