[Suzaku:00615] Re: suzakuの時計機能について

Abe email@hidden
2006年 8月 30日 (水) 11:08:18 JST


abe と申します。

ご指摘のとおり、新しいdistでは問題ないことを確認しました。
ありがとうございました。

なお、この数ヶ月、初めてみっちりソースを見てみたのですが
Linuxと言うのはどうもすっきりしていないな、と言う印象を受けました。
あらゆるところに同じファイル名が合ったりしていますし。


----- Original Message ----- 
From: "Tetsuya Ohkawa" <email@hidden>
To: "SUZAKU general discussion list" <email@hidden>
Sent: Friday, August 25, 2006 11:32 PM
Subject: [Suzaku:00612] Re: suzakuの時計機能について


> 大川です。
>
> Abe wrote:
>> abe と申します。
>>
>> 2005/7に話題になった「suzakuの時計機能について」ですが
>> ソースを見てみますと、疑問が湧いてきたました。
>>
>> /user/busybox/date.c を見ますと、
>> 関数 date_conv_time と date_conv_ftime で
>> 1900を比較し、引いています。
>>
>> /include/asm-ppc/rtc.h でも get_rtc_interrupt で 1900を
>>
>> /user/cal/date.c では 1970 を
>>
>> 他を見ても1900だったりします。
>>
>> 時計の開始時は 1970/1/1_0:0:0 なのに
>> なぜ1900で演算しているのでしょうか。
>>
> struct tm の tm_year メンバが、
> 「1900年からの年数」という仕様だからかと思います?
>
>> 私も 「Thu Aug 21 03:20:57  1924」 が理解できないでいます。
>>
> 昨年の MLの際は、TZが設定されていない点を調査しました。
> 今回、なぜ、ご指摘の時間が設定されてしまうのかを追ってみました。
>
> 対象: SUZAKU-V
> dist: uClinux-dist-20040408-suzaku6
>
> において、libc/uClibc/...../time.c の tzset() で変数の値がバケてました。
> 変数の値を強引に正常値に更新してあげると
> 1970年1月1日0時0分0秒となりました。
> この部分のソース自体にバグはなさそうで、別な所から悪さされているような感
> じです。
>
> dist: uClinux-dist-20051110-suzaku2
>
> で試した結果、正しく動作しました。
> 原因は、まだつかめてませんが、
> 新しい dist をお使い頂くことをお勧めいたします。
>
> _______________________________________________
> suzaku mailing list
> email@hidden
> http://lists.atmark-techno.com/mailman/listinfo/suzaku
> 




suzaku メーリングリストの案内