[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: binutils (Re: new signal stuff)



<199810041507.AAA18111@ruri.iri.co.jp>の記事において
1998年10月05日00時07分頃、tsubai@iri.co.jpさんは書きました。

 > というわけで、言われないみたいです。
 > Elf32_Phdr の p_filesz と p_memsz は hexdump でながめてみたところ、
 > それぞれ 0x000e62d0 0x0010b8e8 でした。
..
 > 何が違うのだろう。クロスコンパイルするとおかしい?

うーむ。

それで、kernelがuvm関連で動かなくもなっていたので、
option UVMHISTとUVMHIST_PRINTを追加して、
compileし直したら、warningが出なくて、p_memszも .bss が入った状態の
kernelができてしまったので、余計混乱してます :-)

生成されるバイナリとかsectionの大きさにも関係するのかも...

とりあえず、本来のp_memszに戻すプログラムを作りました。

----
begin 644 elffixup.c.gz
M'XL("",P&#8" V5L9F9I>'5P+F, K5C[3]M($/[9_BNV08 -*8^ JJI )2!I
MA90C42[<J>*09>(UL6JO5]X-!*[\[S>S?K\23K12P3L[W\YCYYO=9<-C,W_A
M4'(JI..%>_.O^D8FHE'$*B)WQJ1?%HEGL1\$-JM+A;1E72J?.15U,5W2F45]
MMSP3V+.YQ^@^98X7FX!)EUS\F ZLT:0_F)"S,S*\FDZ' VMPW;\ZO]873'@/
MC#K$#]F#;ET,+/PP'FW?U+72) '9B?YO03J;VQ'9X>2,&!69N:64M8C*1<2(
M8?#;@SMR>DIZQR;Y16!XJ(:'GY)A3PT_)Z,C-3HPS1/]5<]=%/,PDLI']55U
M4@E_BY>?2TXF?FQ07U!]PZ$NI)ADF5J:!/Z7Y+%WZ01NAJOK'I-Z8'O,L*.'
M69? ST=P'J3X.0,O8I]0?GNG(L Y[R3YS2S7Z9)P(>%W(KL7PH+%(;"#+A&%
M43+/K8 &XJ6;?EBAZPHJ,U.PIF-+.QN+YT#:]S 4,EK,),&")/<+%R0#WSWJ
M68.Y VKP(Y.,E80717\JD5 B6.K)D[,Y44&;!(*:V8*2HR^ZID%A&FC"4"$?
MWG7)%A@SE9:F<:!3&!D=U.A _D%$EYXT#M7W:X(W5%X@YI!3EB\TLB;]T?7P
M!RR&VQ>OZ/((LN*"30?6[I+.I<VVI4*2[4VQ_85LBG]8IXNZ6K84Y"+V1-';
M+'C2JWF"V<0R2ZH+:,Z-ZYOAL(M9W!/2$MX+[9+Q9#2U)H/S/IHB\.^/\[$U
MGES]=3X==-.=AJ)#LN+4M_.KX:!?R0LN7LD+4>ZD_L2E4DI-3Z7F[PFFYM?(
MN@0?IF#IT_'Q.Q/5>V.B[B-J_\2R ++8"U]B&=2L+83]0-$&N;HFHYLIFE)T
M 7*JE?(ZP&CW=W2-[)#!\!MQ/9^BFY$MO9"A>%_7L!QA3XH5;.:5CZFZGP7<
M@(F/7ZGE.93)+HFU:T/8OZ0^:UY[C"^D2@_Q!&&A1(^.>L0-H\"6>0R'A1B.
MXAB4$WG?2#Q)>KE)/IRA?8L&%N>S-UL?AT\T&E\2/"C(O<?LZ#G=LS8_\*R 
MC2']P<7-=UU+;'0HM!49/4-?66[Z2Q5)UOP27Y6"VO(<Q.?0;E:!E$(%)-:!
M1 /(]>T'H4 YII1*I5 !T3F2<14JUJA%!;&N0V9*-3!;!*N!H%!+R1LLBA:+
M8IU%T6@1N,R<Y6I<K%."@BH,TP-/$R7JQ>>"F?7)W9:]);M0EAA*"*Q0YX@)
M]%[M0'QR%5IODQ6AD&*>'(,(U#6@)S$\=6@2#WI@2X)@<G<WYMX[HJJ'Y:$3
M9=IEV01/F1W0A W&IC#+C,CB02U3,7LK3L1MBTY,^<+Z>+EL9%N&0PVS"LL)
MUXK+*5<$VHX3K<:A1@T6;]AJ8+ZI)6A&G%9@QIHBS/?8S]4PU*C!/.:&JV&H
MT9@6VX>;Z?K<*+7: L4.T0HO=H@VRJJCZ ,P"X_$==4$Y\X>7CL[Z9VM< =M
MV=F8!EK++A3O4__'B:(/O\>%U[>T!EYM#;S4&L9K6P-O:@W\#:V!MS.7J[5Y
M W'Y*AZEL"8:<>NQE;@I[K%.7&[QM3#>!,-KG'A9B8M5JD#UREF)4QHU>ZWM
M+#-7[V;<:F=L"FL@:Q/?VJ)+:JXI@.0M$ ^+M=X"2(H^)<?'[+D87]/+#T0L
M8?#6W"JM 2 ES>_.*5$PAJ?(DS1Y<Z@W#.I47YZ%1T;ZC%&X3NU:W[#F5O:<
M3:F29^,=R^;LK"1AMV8'CEA\K17><I"3"NKC.[R#Q[$?"AJ_:5$4#V-/S?SO
/% ?XUXC_  7+64F+$@  
 
end
----

elffixup netbsd netbsd2
とかすると、p_memszの値を変更したnetbsd2を生成します。

sakamoto@cec.co.jp