【Linux】カーネル総合4【Kernel】at LINUX
【Linux】カーネル総合4【Kernel】 - 暇つぶし2ch784:login:Penguin
09/08/07 19:08:38 KtOPT9+5
例えばglibcのstdio.hの中に以下のような一節がある

/* Standard streams. */
extern struct _IO_FILE *stdin; /* Standard input stream. */
extern struct _IO_FILE *stdout; /* Standard output stream. */
extern struct _IO_FILE *stderr; /* Standard error output stream. */
#ifdef __STDC__
/* C89/C99 say they're macros. Make them happy. */
#define stdin stdin
#define stdout stdout
#define stderr stderr
#endif

>>779 もこの手の要請のせいではないかと予想

785:login:Penguin
09/08/07 19:15:42 tHF5HJWh
>>783
netdev辺りに remove unneeded definition とか言ってパッチ投げると
なぜそうなってるか解説してもらえるんじゃないかな。

786:login:Penguin
09/08/07 19:22:17 ZCbtwiUW
>>783
ごめん、>>782>>780へのレス。というか>>781を読まずに書いた。

787:login:Penguin
09/08/07 20:01:34 rGcT3Hcr
#define stdin stdin
しておけばプリプロセッサがstdinを消しちゃうこともないし
#ifdef stdin
でもtrueになるし
ってだけの話じゃないの?

788:login:Penguin
09/08/07 22:53:31 Zmpep1HC
Amazon EC2 の日々の利用料金を確認するため
日毎のI/Oリクエスト合計数を出したいんですが
なにかいい方法ないでしょうか?

iostat の tps ってシステムが稼動始めてからの合計?
それだと日毎に、ってのは難しいですよね

789:login:Penguin
09/08/08 01:12:06 fEJHlBnC
>>777
デバッグのときにシンボル補完してくれるからかも?>enum
マクロもビルドオプション付ければ可能ではあるんだけど、カーネルが
超巨大化するので。

790:777
09/08/08 12:11:41 O2AsxnLe
みなさんありがとうございました。
>>787のifdefしたいはなんとなく納得できます。

791:login:Penguin
09/08/10 22:33:28 abkAQLZt
最近のLinuxの
Memory Mapped Fileって

メモリにWriteしてSyncすると
pbufferが走るの?

792:login:Penguin
09/08/10 23:02:05 eejzbTvy
っカーネルソース

793:login:Penguin
09/08/11 20:07:58 2WktrRtv
@vger.kernel.org 系の ML 止まってる?


794:login:Penguin
09/08/11 20:59:05 2WktrRtv
流れ出したみたい

795:login:Penguin
09/08/14 22:33:29 imrAHybe
intelチップセットのノートPC使ってるけど

 DRMを有効 → X起動でフリーズ
 DRMを無効 → X激遅で使い物にならず

うんざりしてきた

796:login:Penguin
09/08/14 22:37:26 rN7Fq7S1
nVidia一択がJK

797:login:Penguin
09/08/14 22:43:27 VAslznzA
Intel 安定
NVIDIA 速い
ATi Windows専用

798:login:Penguin
09/08/14 23:12:57 XR99CTCn
9月10日に
RV870はLinuxに対応しないって明言するらしい

799:login:Penguin
09/08/17 11:35:22 /cA/EyFg
2.6.29→2.6.30でUSBまわりって大きく変わった?
まったく同じconfigで作ってもfriioがUSBエラーを吐きまくるようになったんだが…

800:login:Penguin
09/08/17 11:41:28 ohk2Aoag
linus-treeにマージされてないと大変だね。
カーネルのABIが変わっても自分で調べて直さなきゃならないし、
作者の興味が無くなったらそこで終了。

801:login:Penguin
09/08/17 12:22:17 B4Bxz+2u
マージしたらいいのに。ドライバならGregはすぐマージしてくれるよ

802:login:Penguin
09/08/17 12:25:45 uz6wkSgr
  イ`ヘ
 /: :| ヽ
/ : :/  ヽ ___   _,,,:. .-: :´彡フ
_ノ\_∠: : : : : : : : :`: :-: :,:_:/彡 /
      ( : : : : : : : : : : : : : : `ゝ  /
  マ  r::/: /: : | : : : : : : : : ::\ /
  |  //: /: : : |: : | |: : |: _: : : :ヽ
  ジ  {/ 7|`\/i: /|:|/|´: : : : :|ヽ
     〉 ,‐-‐、`|7 || |_::|,_|: : :|:::|: |
  で / r:oヽ`    /.:oヽヽ: :|: | :|
     { {o:::::::}     {:::::0 }/: :|N
  っ  | ヾ:::ソ     ヾ:::ソ /|: : |
 !? ヽ::::ー-.. /ヽ ..ー-::: ヽ::| r--ッ
-tヽ/´|`::::::::::;/   `、 ::::::::::: /: i }  >
::∧: : :|: |J   \   /   /::i: | /_ゝ
. \ヾ: |::|` - ,, ___`-´_ ,, - ´|: : :|:::|
   ヽ: |::|\     ̄/ /|  |: : :|: |

803:login:Penguin
09/08/17 13:29:25 IIDjTJ7I
>>799
そうおもったんなら、なぜChangeLogを見ようとしないのだ?


804:login:Penguin
09/08/17 13:36:32 N7HpcAG+
>>800-801
そういうのはマージされた所で変わらん。
名前変えたぜくらいならついでに直してもらえるが、
微妙に仕様変わったりする場合は放置される。




805:login:Penguin
09/08/17 13:58:45 Pk6+wyDO
>>802
うけたw

806:login:Penguin
09/08/17 14:03:50 F9Hxs/Y9
>>802
  イ`ヘ
 /: :| ヽ
/ : :/  ヽ ___   _,,,:. .-: :´彡フ
_ノ\_∠: : : : : : : : :`: :-: :,:_:/彡 /
  ま  ( : : : : : : : : : : : : : : `ゝ  /
     r::/: /: : | : : : : : : : : ::\ /
  ふ  //: /: : : |: : | |: : |: _: : : :ヽ
   ぃ {/ 7|`\/i: /|:|/|´: : : : :|ヽ
      〉 ,‐-‐、`|7 || |_::|,_|: : :|:::|: |
  ふ / r:oヽ`    /.: oヽヽ:|: | :|
   ぇ { {o:::::::}     {:::::::0 ヽ: :|N
  っ  | ヾ:::ソ     ヾ:::::::ン ゝ|_ノ´ ̄`¨ヽ
 !? ヽ::::TT..  ィ―--ァT´弋_,.,ィー-
-tヽ/´|`::::| |::;/     /:| |:::: /:i つ \__
::∧: : :|: |J | | \   / | |/::i: | 二ン
. \ヾ: |::|` - ,, ___ ̄ ̄_ ,, -´|: : :|:::|
   ヽ: |::|\     ̄/ /|  |: : :|: |
    _,,,ヽ_ヘ_,,_ノ^レ,,_....

807:login:Penguin
09/08/17 19:18:31 b3LzJIdw
すごい亀で申し訳ないが、>>755ってこれじゃねぇの?

URLリンク(lkml.org)
URLリンク(lkml.org)



808:755
09/08/17 23:29:09 BdjlVxHY
>>807
当たりっぽい。
ソースを見た感じだと、64bitで扱わなきゃならない箇所を32bitで扱ってしまっているのか・・・。
LKMLに上がっているということは、いずれパッチが取り込まれるのかな?
アイドル時間が分からない以外の実害はないんで、もうしばらく待ってみる。

809:login:Penguin
09/08/18 00:09:01 AEIuMqWU
カーネルコンパイルするときの、LD とかCC の意味を教えてください。

810:login:Penguin
09/08/18 00:46:01 T2Dm2Hjr
あんまり深く考えたことないけど、普通に考えて

CC: コンパイル
LD: リンク

じゃねぇの?メッセージ的にもそれっぽいし

811:login:Penguin
09/08/18 00:50:49 t149Kxcg
>>810
あたり

812:login:Penguin
09/08/19 21:41:26 Tho/5L2s
IPCセマフォとPOSIXセマフォを比較すると

IPC配列が複数個で遅い
POSIXは1個だから軽量みたいな説明を見るのですが

具体的にデータ構造ではどれのことを指しているのでしょうか?

813:login:Penguin
09/08/19 21:58:19 oqH6+Tca
>>812
glibcのnptl以下のsem_* をみれ。そもそも競合がないかぎり xchg 命令一発で終わっており、
カーネルの中にすら入らないから
逆にPIC セマフォをlocklessにしたり、ユーザランドだけでごにょごにょする方法は未だ見つかって
いないのではないかな。


814:login:Penguin
09/08/20 12:43:42 IuJt3Yqf
Debianのdepパッケージについて質問です。
公式サイトから落とせるarm用パッケージの共有ライブラリが、どんなconfigureオプションで
コンパイルされているのか調べる方法ってありますか?
gccだとgcc -vってやった時にコンパイル時のconfigureオプションが表示されますが、あんな
感じで調べる方法があれば教えてください。

815:814
09/08/20 12:45:30 IuJt3Yqf
ごめんなさい、スレを間違えました。

816:login:Penguin
09/08/20 20:30:22 +k9Nz7s4
早くLinuxのカーネルがFreeBSDのカーネルよりパフォーマンスよくならないかなー・・・

817:login:Penguin
09/08/20 21:12:06 gFmbm5B9
>>816
まだそんなに差があるの?


818:login:Penguin
09/08/20 21:24:31 +k9Nz7s4
>>817
スループットの計測グラフみたら2.6.30とFreeBSD7.2の間に結構差があった

819:login:Penguin
09/08/20 23:55:01 XTDFR6e5
>>818
そうなんだ。
URLリンク(d.hatena.ne.jp)
NetBSD 5.0だかのグラフで、Linux(Fedora Core 10)の方がFreeBSDよりいいのかなって思ってた。


820:login:Penguin
09/08/21 00:07:50 YkMVscqX
誰がベンチマークを計測したかによって変わるしな。
ベンチマークを公開するにはちゃんと意図があるのだよ。

嘘には3種類あって
・良い嘘
・悪い嘘
・ベンチマーク
と言われている。

821: ◆Zsh/ladOX.
09/08/21 00:53:05 LinlgJyn
そんなに凄いならスパコンとかに顔を出してもいい感じだが。>>BSD

ってカーネル関係ないかw

822:login:Penguin
09/08/21 01:42:13 T7hb8yiR
スケーラビリティが要る場面ではLinuxが強いだろ。
マン・パワーを必要とする膨大な作業があるから、大企業が
よってたかって人手を投入しているLinuxのほうが上なのが普通なはず。

823:login:Penguin
09/08/21 02:39:53 p2qtAUKk
>>818
SELinux使っているってオチとか?

824:login:Penguin
09/08/21 06:45:00 pxACKAQd
>>819
NetBSDすっげえな

825:login:Penguin
09/08/21 10:18:05 De+1kbfp
>>822
残念ながら、現状のlinuxカーネルのスケーラビリティは他のOSに比べたら悪くて当然な出来。
まだまだspinlock多すぎ。

826:login:Penguin
09/08/21 10:25:05 taRwReOf
プログラムとか全くできない素人の素朴な疑問なんだけど
Linuxカーネルって、みんな寄ってたかってこんだけいじくりまくってるのに
どうしてパフォーマンスが上がらないの?

827:login:Penguin
09/08/21 10:35:30 b9Y8OXWv
>>826
上がらないって、どうやって計ったの?

828:login:Penguin
09/08/21 10:42:07 taRwReOf
計ったなんて書いてないけど?

829:login:Penguin
09/08/21 10:44:05 b9Y8OXWv
え、計りもせずに「上がらない」なんて言ってんの!?

830:login:Penguin
09/08/21 10:45:31 p2qtAUKk
>>826
BKLが残っている
カーネルスレッド多すぎ: URLリンク(lkml.org)
adaptive lockが採用されてないって聞いたことある
SIMDがあまり使われていない(レジスタ退避との兼ね合いで避けられているが、高速化できる場所はもっとあると思う)

ってことでパフォーマンス上がる余地はあるけど、他のカーネルと比べてどうかは知らない。

831:login:Penguin
09/08/21 10:49:30 HWzVO6eL
カーネルスレッド多すぎの件は、何年か前にsgiの連中が
4096CPUマシンで動かしたときに何とかならんもんか
といってたけど、やっとパンピーのマシンに多コアマシンが
降りてきたから真面目に取り組みはじめたね。

832:login:Penguin
09/08/21 10:54:04 MlJa3Ii9
カーネルスレッドならWindowsだってかなりあるじゃん
スケジューラの問題じゃないの?

833:login:Penguin
09/08/21 11:01:43 6GhqxsGw
>>830
SIMDはレジスタ退避のコストを考えるとほとんど期待出来ないと思ふ。

やっぱりそこら中に散らばってるspin lockのCPU無駄使いが諸悪の根源だと思うでよ。


834:login:Penguin
09/08/21 11:06:27 taRwReOf
>>829
スレの流れからそういう話だったじゃん。
それとも自分で確かめた結果以外は話にも出すなってか?
俺ルール?

>>830
どうしてそうなのかってとこが気になるんだけど、
昔から色々な選択肢を方々に提供してきただけに
ある機能がレガシーになってもなかなか切れない、
構造も変えにくいってことかな…?
ちなみにadaptive lockは2.6.30で載ったっぽい?

835:login:Penguin
09/08/21 11:27:39 p2qtAUKk
>>834
個人的にはカーネルのプロファイリングの手法がしょぼかったせいじゃないかなと思っている。
最近のプロファイラの進化によってパフォーマンスは上げやすくなったんじゃないかなぁ。

836:login:Penguin
09/08/21 11:31:02 MlJa3Ii9
というかハッカーならロックなんて使わずにカーネル作れよ
スピンロックなんて使っておいて何がハッカーだよ(笑)

837:login:Penguin
09/08/21 11:32:58 HWzVO6eL
mutex: implement adaptive spinning
URLリンク(git.kernel.org)


838:login:Penguin
09/08/21 11:42:48 HWzVO6eL
>>831 のソースが見つかった
URLリンク(lwn.net)


839:login:Penguin
09/08/21 11:53:26 p2qtAUKk
>>836
lockless/wait-freeは最近の流行だねぇ。lock自体がBKLと同じ扱いになる日が来るかもな。

840:login:Penguin
09/08/21 12:07:05 bWwhod0w
Linuxの設計やパフォーマンスはそんなに悪くないよ。
ただ、BSD(のネットワーク周りなど)の初期設計がとても良いので、
そこが効くベンチマークを取ると差が出るだけ。


841:login:Penguin
09/08/21 12:12:48 pxACKAQd
とりあえずBSDに比べればめちゃくちゃ人多いわけだから今後に期待

842:login:Penguin
09/08/21 12:52:01 6GhqxsGw
人が多けりゃどうにかなる問題でも無いと思うぞ。

自動テストでプロファイル取って、遅くなる修正入れたら
ボコボコにされるとかやれば何とかなるかもしれんが。

そんなことをgccがやってるとか何とか聞いたような気がする。



843:login:Penguin
09/08/21 12:55:48 vx/cVYTm
>>834 前半
別人だが >819 の主旨はNetBSDのバージョン間の比較だし
「上がらない」はLinuxのバージョン間の比較と解釈できる表現だし
それでいて今のスレの流れにベンチマーク結果があるのは >819 の
Fedora Core 10 ひとつだけだから「ソースは?」とつっこまれたんだろ。

>827 のつっこみ方もどうかと思うがそんなに敵意をむき出すことは無いだろ。

844:login:Penguin
09/08/21 16:39:20 5M/wknFG
>>840
ネットワーク周りはLinuxのほうがパフォーマンス出てるって聞いたけどなー

数年前の話だから今は違うんか?

845:login:Penguin
09/08/21 19:36:35 WaG9vPdi
>>844
場合による。10Gイーサとか最新の環境ならLinux一択。Linux世代が入手できない古代のハードなら絶対BSD。
それ以外はドライバの出来も効くのでケースバイケース。



846:login:Penguin
09/08/21 19:37:55 WaG9vPdi
カーネルスレッドが多すぎ問題はJensが対応を開始したよ。ざっと見た感じ結構有望そう


847:login:Penguin
09/08/21 19:39:19 WaG9vPdi
BKLは性能に関係有るところにはもう残ってないので気にしなくてよいと思われ

848:login:Penguin
09/08/21 19:43:52 IuT2OPFN
ReiserFSからもいなくなったの?

849:login:Penguin
09/08/21 20:13:46 WaG9vPdi
mainlineにもう入ったかは忘れたが、Fredricがなくしたはず

850:login:Penguin
09/08/21 21:51:17 00xOIOY7
SystemVとPOSIXのソースをおいかけてたら
気がついたらこんな時間になってたけど
以下の理解で正しいの?

SystemVセマフォ
userspace->sem_op->syscall->kernel->kernel lock

POSIXセマフォ
userspace->sem->glibc->syscall->kernel->kernel lock
競合無いとき
userspace->sem->glibc



851:login:Penguin
09/08/21 23:29:52 ATg1NEMY
最近のカーネルでirqbalance使う意味ってある?
使わなくてもいい感じに負荷分散されてる様に見えるんだけど…

852:login:Penguin
09/08/22 00:03:06 LGqzvHPp
うちで何もしていないやつはエラく偏る@Athlon64X2
17: 33 24973 IO-APIC-fasteoi firewire_ohci
18: 485064 140728827 IO-APIC-fasteoi eth1
20: 54911 19292568 IO-APIC-fasteoi sata_via
入れればそれなりにならされるので無意味じゃないだろう。

俺は気にしていないので何もしていないが。


853:login:Penguin
09/08/22 00:15:59 1NbfsqaS
偏った方が、逆にキャッシュの使用効率がいいと思うんだけど。

854:login:Penguin
09/08/22 09:47:18 iygx6FPk
kernel-2.6.30.5 です
不要なデバイスドライバーを削りたくて、とりあえず手始めにネットワークカードを選択したいのですが
機種 NEC Express5800/110Ge
LAN Intel 82566DM-2 Gigabit
これに必要なデバイスドライバーはどれを選択したらいいのでしょうか?
Device Drivers --->[*] Network device support --->?

855:login:Penguin
09/08/22 10:03:15 yjOdojRy
ところで起動中の
starting httpd         [OK]
とかの書式とか色とかってどこで変更可能?

856:login:Penguin
09/08/22 11:07:05 Qg2YY+77
>>854
ググったら、e1000e がドライバらしいから、その後

 --> Ethernet (1000Mbit) --> Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support

2.6.31-rc7 での選択だけど、多分変わらない

>>855
カーネル関係なくないか?
何使ってるかしらんが起動スクリプト(/etc/rc.d/rc)と、
それから読み込まれるいろんなファイルを見ていけばいいんじゃない?

857:login:Penguin
09/08/22 11:13:51 RpQH+zaA
>>854
ドライバはたいていモジュールでコンパイルされるので、リソース食わないよ?
組み込みの人?

858:login:Penguin
09/08/22 11:19:30 iygx6FPk
>>356
ありがとうございます、どのような文言で検索されましたか?
よろしかったら教えてください
とりあえずNetwork device support 配下の
--> Ethernet (1000Mbit) --> Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support
これだけに* を入れて今コンパイルしています。

859:login:Penguin
09/08/22 11:25:37 Qg2YY+77
>>858
多分、俺の事だと思うので…

「Express5800/110Ge」でググっただけ。で、
 URLリンク(wiki.nothing.sh)
に書いてあった。

ただ、>>857も言ってるけどわざわざドライバ切ることもないとも思う(サーバマシンだし)
まぁビルド時間節約はできるけど

860:login:Penguin
09/08/22 11:33:36 iygx6FPk
>>859 さん
>>857 さん
ありがとうございます。

861:login:Penguin
09/08/22 13:32:21 Cj3XfUQp
>>853
キャッシュのaffinityを重視するかCPUのロードバランスを重視するかって話だけど、
大抵の場合はaffinity重視で行ったほうが全体の性能はあがるよね。

862:login:Penguin
09/08/22 14:56:31 kbUxBrOu
>>861
普通のプロセスに関してはそういう作りになってるんだし、
一般論を話しててもしょうがないかと。
個々のケースについての具体的な数字が無いと。

863:login:Penguin
09/08/22 17:56:26 Cj3XfUQp
>>862
普通のプロセスの話じゃなくて、割り込み~ksoftirqdまわりの話なんだけど…

864:login:Penguin
09/08/23 22:35:17 DukYj/4T
日々の給料に数万円の現金をそのまま上乗せ
IT廃品回収ビジネス

URLリンク(2ch.zz.tc)
(情報料6万5000円)


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch