- 1 名前:login:Penguin [2005/06/06(月) 11:19:09 ID:uXQqRJXF]
- Linux のプログラミングに関する話題です
- 565 名前:login:Penguin mailto:sage [2008/01/24(木) 09:51:20 ID:+a49+I+1]
- struct timevalとintって?同じもの?だっけ?5000秒?待ったり?
- 566 名前:login:Penguin mailto:sage [2008/01/24(木) 10:06:19 ID:A5lAfTzI]
- >>565
struct timeval と int は別
- 567 名前:login:Penguin mailto:sage [2008/01/24(木) 10:17:10 ID:FNc6yZ5O]
- 565 は知ってて書いているようにしか見えない。
>>564 ためしてないが、その setsockopt(2) は EINVAL になってたりしないか?
- 568 名前:login:Penguin mailto:sage [2008/01/24(木) 10:20:13 ID:+0KdBqsj]
- >>565-567
できました!
- 569 名前:login:Penguin mailto:sage [2008/01/24(木) 10:27:34 ID:+0KdBqsj]
- おかげさまでタイムアウトは無事できました
まだ疑問があるのですが struct timeval tm; tm.tv_sec = 5; setsockopt(sockfd, SOL_SOCKET, SO_RCVTIMEO, (void*)&tm, sizeof(struct timeval)); とやってもrecvfromにてあきらかに12秒近く待たされています... あんまり厳密に守られるわけではないのでしょうか? 他のシステムコールの呼び出し等にて7秒以上かかってるとも思えないのですが
- 570 名前:login:Penguin mailto:sage [2008/01/24(木) 10:57:59 ID:+a49+I+1]
- 名前解決じゃね?
- 571 名前:login:Penguin mailto:sage [2008/01/24(木) 11:16:26 ID:+0KdBqsj]
- >>570
ipアドレスをinet_addr直でやってます.
- 572 名前:login:Penguin mailto:sage [2008/01/24(木) 11:27:31 ID:Z64zlv7x]
- >>571
tm.tv_usecはクリアした?
- 573 名前:login:Penguin mailto:sage [2008/01/24(木) 11:52:54 ID:+0KdBqsj]
- >>572
なんという不注意...注意散漫になってるようです. 無事指定時間でタイムアウトさせる事ができました.ありがとうございます
- 574 名前:login:Penguin mailto:sage [2008/01/28(月) 19:51:08 ID:oy6mNs1o]
- 現在、2枚のNICを持つマシン上での開発でつまづいています。
それぞれのNICに同じネットワークのIPアドレスを振ります。 例:eth0:192.168.1.10 eth1:192.168.1.11 この状態で、普通にSOCK_DGRAMにてソケットを生成し、適当なIP アドレスに対して送信します。 すると、どちらのNICから出すかはルーティングテーブルでどちらが 上に位置するかで決まってしまいます。 これをNICを指定して送信したいのですが、可能でしょうか? RAWソケットを使えばできるのですが、仕様上の制限があって 使えません。
- 575 名前:login:Penguin mailto:sage [2008/01/29(火) 09:35:56 ID:Jv26bMRM]
- >>574
bindしてから送信 はどうだろう やったことないけど
- 576 名前:login:Penguin mailto:sage [2008/01/29(火) 09:52:16 ID:BgbmjeIx]
- >>575
source address を指定したいわけじゃなくて、どのインタフェースから 出したいか、ということだったらそれじゃぁダメだ。 >>574 がなんでそんなことしたいか知らないけど、iptableのmangle tableで markして、iproute2で該当するパケットだけルーティングテーブルを別けて やるほうが自然だろう。 www.atmarkit.co.jp/fsecurity/rensai/lids12/lids01.html もしこっちが使えないならrawソケットでやるしかないよ。
- 577 名前:login:Penguin [2008/01/29(火) 15:44:25 ID:Jv26bMRM]
- ところで
main(){ int a=0; for(;;){ printf("%d\n",a++); sleep(1); } } みたいなプログラムを書いたんだけど、これを $ ./a.out > hoge としてもhogeに出力されない。 バッファリングされてるみたいなのでprintfの後ろに sync()やらfsync(1)やら入れてみたけど駄目っぽい これどうしたらいいんだっけ?
- 578 名前:login:Penguin mailto:sage [2008/01/29(火) 16:25:19 ID:E7XlIkuM]
- fflush(stdout);
- 579 名前:login:Penguin mailto:sage [2008/01/29(火) 22:53:11 ID:pK88c6Qm]
- いまどき\nでフラッシュしないstdoutがあるのか・・・
- 580 名前:login:Penguin mailto:sage [2008/01/30(水) 02:17:24 ID:VGRpnUoT]
- そりゃ・・・、端末に向いてない stdout(3) なら line buffered じゃなくても
いいんでわ。
- 581 名前:574 mailto:sage [2008/02/01(金) 11:04:33 ID:KZ/Tojjt]
- レス遅れてしまいすみません。
>>575 >>576さんの言うとおりbind()をしてから送信すると、L3レベルでは大丈夫 でしたがEtherealでキャプチャするとL2レベルで、MACアドレスが同じに なっていました。 >>576 提示してもらったWebを確認しました。現在開発しているのはなかなか 処理能力的にシビアな箇所なので、RAWソケットを使用できるように 説得してみます。
- 582 名前:login:Penguin mailto:sage [2008/02/01(金) 19:24:02 ID:MPKtEvB1]
- というか、bondingしてあとは知らん、ではなんかいかんの?
- 583 名前:574 mailto:sage [2008/02/03(日) 21:37:06 ID:mkJ6nZ+Q]
- >>582
bonding、初耳だったのでぐぐってみましたが中々興味深い技術です。 ですが、仕様上送信元IPアドレス(つまり自分が持つやつ)が複数あり、かつ 対向の種類によって決まってしまっているので使えないようです。 けどこの技術に似たようなのを実装しなければならない機能ブロックも あるのでこれはこれで提案してみようかと思います。 そういえば、RAWソケットって送信するときにPath MTU Discoveryをソケット オプションで無効にしてもフラグメントされないなーと思ったら、man raw(7)に バグとして挙がっているんですね…(使用OSはFedora7) これも自分で実装しなければならないなぁ。
- 584 名前:login:Penguin mailto:sage [2008/02/03(日) 22:24:34 ID:+lhwKKGQ]
- >>574
最初から難しいこと考えないで、まず既存の機能 (>>576 の iptable + iproute2等) で やってみて、それでパフォーマンスなどの問題がないかどうか確認して、どうしても 独自に実装しなくてはならないことを確認してから raw ソケットなり、カーネル モジュールで何か作るなりすることを検討するほうがいいぞ。
- 585 名前:login:Penguin [2008/02/04(月) 19:10:09 ID:hfVjOmBk]
- 自分のサブネットマスクを取得するのはどう書きますか?
IPアドレスは分かってるとして。
- 586 名前:login:Penguin mailto:sage [2008/02/04(月) 21:29:01 ID:nLbVhZ24]
- >>585
getifaddrs(3)
- 587 名前:login:Penguin mailto:sage [2008/02/04(月) 21:35:32 ID:G8QRQQli]
- >>586
IPv4でも使えんの?
- 588 名前:login:Penguin mailto:sage [2008/02/04(月) 21:56:25 ID:nLbVhZ24]
- >>587
使える。v4でしか使えないバグならglibcが2.3の頃にあったはずだが。
- 589 名前:login:Penguin mailto:sage [2008/02/05(火) 18:12:27 ID:MeDWiyY9]
- 大量のスレッドを生成できなくて困っています。
現在、上限10000個のスレッドを生成したいのですが(そういう仕様なので…OTL) スタックオーバーフローで生成できていません。 解決策としては、デフォルトでは大きすぎるスタックサイズを pthred_attr_setstacksize() で減らし、また予めスレッド用スタック領域を malloc()にて確保し、これをpthread_attr_setstackaddr() にて設定することを 考えました。実際やってみると確かにデフォルトよりは生成数は上がっているの ですが、到底10000個には追いつきません。 そこで質問なのですが、上記のようなアプローチで合っているのでしょうか? あと、pthread_attr_setstackaddr() の第2引数(つまり、スタック開始アドレス)は 10000個のスレッドで同一なのでしょうか? 10000回のpthread_create()ループの外で1回だけ pthread_attr_setstack(&attr, g_pthread_stack) をこーるするのか、 ループの中で pthread_attr_setstack(&attr, g_pthread_stack+STACK_SIZE*i)のように スタックサイズ分オフセットを毎回させるのか が分からないです。
- 590 名前:login:Penguin mailto:sage [2008/02/05(火) 18:15:04 ID:GUozEVBV]
- それができたとしてうまく動くと思ってやってるの?
- 591 名前:login:Penguin mailto:sage [2008/02/05(火) 20:56:19 ID:SlsIEQrM]
- 何をやるのか、メモリをどれだけ積んでるか、ということによりけりだな。
pthreadとか知らんのでclone(3)で自分でスタックを用意して一万個ほど スレッドを生成したことはある。使い方によっては普通に動く。
- 592 名前:login:Penguin mailto:sage [2008/02/05(火) 21:03:59 ID:GUozEVBV]
- それはすごい。
- 593 名前:login:Penguin mailto:sage [2008/02/06(水) 06:41:46 ID:nwp5GfWb]
- AMD64とかIA64とかでメモリを64GBくらい積めば大丈夫じゃね?
- 594 名前:login:Penguin mailto:sage [2008/02/06(水) 07:25:44 ID:s++avmRm]
- カーネル側で使うのが各スレッド8KB。ユーザ側のスタックを4KBに抑えれば
スレッドをひとつ増やすごとに必要なのは12KB。10000個ならざっと120MB。
- 595 名前:login:Penguin [2008/02/07(木) 00:54:55 ID:GYgs3mMU]
- >>589
> あと、pthread_attr_setstackaddr() の第2引数(つまり、スタック開始アドレス)は > 10000個のスレッドで同一なのでしょうか? 同一で良いはずが無いねえ。スレッド毎に確保ですよ。 スタックの先頭アドレスはページ境界にアラインさせないとsetstackaddrがEINVALで失敗する。 mallocではなくて、posix_memalignかmmapでスタック用のメモリを確保するとよい。
- 596 名前:585 mailto:sage [2008/02/08(金) 09:16:22 ID:Tg+rPbrB]
- サンクス! >>586 , etc...
それググってみましたが、IPアドレスが幾つも取れるじゃないですか。 その中でIPアドレスをマッチングして、そのサブネットマスクを取るしかないんでしたっけ? それとも、サブネットマスクって1台のマシンに複数IPアドレスがあっても共通?
- 597 名前:login:Penguin mailto:sage [2008/02/09(土) 00:02:49 ID:1XOuKxIO]
- つーか、IPアドレスに対して、サブネットが対応してるでそ。
インターフェースが2枚あったら、 eth0 : 192.168.1.5/24 eth1 : 10.23.45.67/16 とかさ。
- 598 名前:login:Penguin mailto:sage [2008/02/09(土) 01:25:11 ID:eMQaM6TS]
- man引けば分かるはずなんだが、今の場合はそれ以前の問題のような。
プログラミングより、くだ質が妥当なような。
- 599 名前:login:Penguin mailto:sage [2008/02/09(土) 01:57:14 ID:pxZu1S51]
- >>598
manを引いても基本原則知らなきゃわかんないだろうな こういうのを一番簡単に身につけるには 教科書的なものを頭ッから丸暗記するのが手っ取り早い
- 600 名前:login:Penguin mailto:sage [2008/02/10(日) 17:43:00 ID:AB987pUW]
- mallocをすると、値が帰ってくる前にsegmentation faultするんだけど・・・
これはライブラリの領域をどこかで破壊しているということでよろしいのでしょうか
- 601 名前:login:Penguin mailto:sage [2008/02/10(日) 18:47:08 ID:rgXsI3qI]
- gdbで引っ掛けてどこで死ぬかを見極めるべし
まあメモリ破壊の類だとは思うが
- 602 名前:login:Penguin mailto:sage [2008/02/10(日) 20:52:25 ID:+TLKCHqg]
- >>600
メモリ破壊だったら、Electric Fenceが便利かもね。
- 603 名前:login:Penguin mailto:sage [2008/02/10(日) 20:55:13 ID:qj0nK6Tb]
- valgrindのほうが。
- 604 名前:login:Penguin mailto:sage [2008/02/10(日) 23:03:17 ID:W61q/SHI]
- 自分に強壮剤がいいよ
- 605 名前:login:Penguin mailto:sage [2008/02/11(月) 12:45:49 ID:0peP2Ab+]
- >>601-603
ありがとう ドリンク飲んでがんばります
- 606 名前:login:Penguin [2008/02/11(月) 20:57:09 ID:JHZIo94H]
- >>600
エラー処理をしているのかと子一時間 NULLが帰ってきたら、どうしてるの?
- 607 名前:login:Penguin mailto:sage [2008/02/11(月) 20:59:54 ID:NXuZoz9l]
- 実際mallocでNULL返ってくるの? CoWなのに。
- 608 名前:login:Penguin mailto:sage [2008/02/11(月) 21:58:06 ID:g58d+k53]
- >>607
CoWは関係ないような。 というのはともかく、極端に大きなmallocならNULLが戻るよ。 搭載メモリ量とか、32bit/64bitにもよるかもしれないけど、malloc(1*1024*1024*1024)とか。
- 609 名前:login:Penguin mailto:sage [2008/02/11(月) 22:59:43 ID:v7vkIa+N]
- >>607
物理ページ自体は必要ないが、メモリ空間が足りなくなる可能性はある x86 (32bit) だと、ユーザ空間が3GB・カーネル空間が1GBで分けられてたはずだから、 多分2.5GB確保は成功して、3GB確保は失敗すると思う
- 610 名前:login:Penguin mailto:sage [2008/02/11(月) 23:27:43 ID:g58d+k53]
- >>609
適当なプロセスをcat /proc/pid/mapsしてみればわかるけど、.soやらなにやらが3GBのそこかしこにmapされてしまっているから、 2.5GB連続で仮想メモリ確保ってのは難しいと思うよ。 例えばfirefoxあたりだと色々mmapされすぎていて全く無理ですね。
- 611 名前:login:Penguin mailto:sage [2008/02/11(月) 23:49:20 ID:H5r6W4j2]
- >>606
>>600は「値が帰ってくる前に」と言ってるんだから、NULLが帰ってくるも ヘッタクレもないと思うんだが。 当然、返り値をチェックしようとしているけど、帰ってくる前にSIGSEGVなんだろ。
- 612 名前:login:Penguin mailto:sage [2008/02/12(火) 21:41:58 ID:i/htmIMa]
- ファイルAとBが同一パーティション上にあるかどうかLinux的にはどうやって判断すればいいんでしょうか
- 613 名前:login:Penguin mailto:sage [2008/02/12(火) 23:16:42 ID:6Xg+LWoP]
- パーティションよりファイルシステムの場所を調べる方が汎用性があって
尚且つ簡単そうで良さげ。スクリプトでやっつけるならdfにパスを食わせて 出たファイルシステムを比較すれば一丁上がり、、、かなぁ。 どうしてもパーティション、という場合は知らん。
- 614 名前:login:Penguin mailto:sage [2008/02/12(火) 23:25:33 ID:vZRSZKGy]
- 今Linuxが手元にないんだけど、レギュラーファイルに対してstat(2)すると
struct stat::st_devってどうなるんだっけ?
- 615 名前:login:Penguin mailto:sage [2008/02/12(火) 23:36:11 ID:i/htmIMa]
- >>613
ありがとうございます。mtab読みに行くことにしました。
- 616 名前:login:Penguin mailto:sage [2008/02/12(火) 23:48:38 ID:943cnSqV]
- >>614
vmware+Linux入れなよ
- 617 名前:login:Penguin mailto:sage [2008/02/13(水) 00:42:27 ID:XbwK8Zpg]
- >>614
普通はそれだと思う
- 618 名前:614 mailto:sage [2008/02/13(水) 01:03:45 ID:eUvEe13x]
- >>617
汲み取ってくれて、ありがとう。
- 619 名前:login:Penguin mailto:sage [2008/02/13(水) 07:33:31 ID:pBknmnOU]
- 結局、パーティションまでは分からんということだな。
- 620 名前:login:Penguin mailto:sage [2008/02/13(水) 07:47:41 ID:hT3T8ff2]
- >>619
>>614にあるのじゃどうしてだめなの?
- 621 名前:login:Penguin mailto:sage [2008/02/13(水) 11:59:04 ID:G1ltJVUD]
- HTTPクライアントを作ろうと思いますが、
自分の空きポートはどうやったら取得できますか?
- 622 名前:login:Penguin mailto:sage [2008/02/13(水) 12:14:39 ID:5QyCkyQ9]
- >>621
HTTPクライアントならサーバの80につなげば いいだけじゃない?空きポートを知る必要が わからん。(connect()で80につなげばいいだけ。) クライアントの使用するポートはプロトコルスタックが 空いているポートを適当に割り振ってくれる。
- 623 名前:621 mailto:sage [2008/02/13(水) 12:23:24 ID:G1ltJVUD]
- >>622
あっ、そーですか。有難う。 httpで相手のポート80に接続して、writeするだけですね。 (tcpと大して変わらないのかって、tcpで接続するプログラム書いたことないけど) 関係ないけど、それらがC/C++のクラスライブラリになってたりしませんよね?
- 624 名前:login:Penguin mailto:sage [2008/02/13(水) 12:25:48 ID:YOhJXxZI]
- >>623
curl と言いたいけど、お前にはsystem("wget wwwwwwwww");で充分だ。
- 625 名前:login:Penguin mailto:sage [2008/02/13(水) 13:21:11 ID:hYkhPPAJ]
- >>623
TCP 以外の何でアクセスするつもりなんだ?
- 626 名前:login:Penguin mailto:sage [2008/02/13(水) 18:02:37 ID:G1ltJVUD]
- >>625
HTTP ところで、HTTPエンコードする標準メソッドなんてありますか?
- 627 名前:login:Penguin [2008/02/13(水) 18:20:50 ID:G1ltJVUD]
- 知りたいのは、HTTP エンコードじゃなくて、URL エンコードでしたorz
- 628 名前:login:Penguin mailto:sage [2008/02/13(水) 19:29:27 ID:Mx9E0jHA]
- >>626
HTTPってTCPじゃね?
- 629 名前:login:Penguin mailto:sage [2008/02/13(水) 19:59:54 ID:JBOJRmRv]
- >>626を見ると、>>624は正しかったんだな、と思った。
- 630 名前:login:Penguin mailto:sage [2008/02/13(水) 20:54:09 ID:eUvEe13x]
- >>628
あらゆる意味で違うと、いちおう突っ込んでおけばいいかな?
- 631 名前:login:Penguin mailto:sage [2008/02/13(水) 21:03:49 ID:N8sc8JVE]
- >>628
TCPってIPじゃね? 以降物理層まで続く↓
- 632 名前:正義の味方 [2008/02/13(水) 23:20:51 ID:5UuGIiF+]
- 地球を救う正義の味方、今こそ参上!!
seiginomikata.xxxxxxxx.jp/
- 633 名前:login:Penguin mailto:sage [2008/02/14(木) 01:22:24 ID:AMxoEq8N]
- >>624 そんなあなたに ttp://www.blue.sky.or.jp/grass/doc_ja.html
- 634 名前:login:Penguin mailto:sage [2008/02/14(木) 05:16:55 ID:vPDIK5xn]
- HTTP on TCP on IP on Ethernet
- 635 名前:login:Penguin mailto:sage [2008/02/14(木) 10:46:16 ID:yt/o7Lpq]
- UDPはTCPじゃないおねw
- 636 名前:login:Penguin mailto:sage [2008/02/22(金) 11:00:23 ID:G/AgynaC]
- 自分が開いているファイルポインタを監視して,
ほかのプロセスから見られているかどうかをチェックする方法ってありますかね?
- 637 名前:login:Penguin mailto:sage [2008/02/23(土) 18:26:40 ID:fMtbJMPF]
- inotify...でできたようなできなかったような。
- 638 名前:login:Penguin [2008/02/24(日) 23:17:29 ID:BrtZUi2N]
- streaming.linux-magazin.de/en/program_fosdem.htm
cmakeについてのリアルタイム講演が聞けるそうな
- 639 名前:login:Penguin mailto:sage [2008/02/25(月) 17:29:44 ID:gh7YVSGk]
- gdbってスレッドの中まで追跡してくれないよね?
今開発しているプログラムが生成したスレッドの中で何かおかしなことを やってるみたいなのだが再現性が100%にならず困っている. gdbでlistとかやっても表示されるのはスレッドを生成してる 関数のところが表示される. せめてどこで落ちてるのか分かればいいんだが...
- 640 名前:login:Penguin mailto:sage [2008/02/25(月) 17:56:48 ID:cSNR/6sC]
- マルチコア環境上で、指定したスレッドを実行しているCPU番号を取得する
方法はないでしょうか? ちょうど、RTLinuxでいうrtl_getcpuid()のようなものを探しています。 # sched_setaffinity() を利用したCPU括り付けでのマルチスレッドの動作確認を しようと思っています。
- 641 名前:login:Penguin mailto:sage [2008/02/25(月) 18:39:00 ID:/pUYRVYK]
- info threads
thread thread_no
- 642 名前:login:Penguin mailto:sage [2008/02/26(火) 22:09:55 ID:Gzm7dZQg]
- >>640
CPU番号を取得するのがカーネル空間なのかユーザ空間なのかで違う。 カーネル空間ならthread_infoのcpuを読めばいい。 ユーザ空間ならthread_infoのcpuを読むようなカーネルモジュールを作って システムコールで呼ぶしかない。ただ、システムコールのためにカーネル空間に入って 戻ってきたときには別のCPUに切り替えられているかもしれないので使い物にならない。
- 643 名前:login:Penguin mailto:sage [2008/02/26(火) 22:12:32 ID:Gzm7dZQg]
- >>636
fuserでも呼べば?
- 644 名前:login:Penguin [2008/02/27(水) 01:24:58 ID:YHDpNSRs]
- >>639
スレッドの本を読んで勉強するほうが早い
- 645 名前:login:Penguin mailto:sage [2008/02/27(水) 02:36:14 ID:s4UfhcJi]
- >>639
>>641のコマンドをgdbで実行すれば追跡できるけど? gdbはVer.5辺りからスレッドに対応してるよ。
- 646 名前:login:Penguin mailto:sage [2008/03/04(火) 05:37:01 ID:hH79PlpS]
- Linuxではディレクトリをopenしてファイルディスクリプタを
得ることはできないのでしょうか?
- 647 名前:login:Penguin mailto:sage [2008/03/04(火) 06:57:58 ID:YiS1gKTk]
- >>646
opendir?
- 648 名前:login:Penguin mailto:sage [2008/03/04(火) 11:16:05 ID:c6KWa7j/]
- ファイルディスクリプタが欲しいんですよ。
ディレクトリのディスクリプタに対してlockfしたらどうなるか試したかったもので。
- 649 名前:login:Penguin mailto:sage [2008/03/04(火) 11:18:58 ID:f138xmmP]
- man open
O_DIRECTORY
- 650 名前:login:Penguin mailto:sage [2008/03/05(水) 21:11:41 ID:DSOAwXvG]
- (引数+環境変数)の長さはARG_MAXで制限されると見たのですが、実験してみると
ARG_MAXをはるかに超えて環境変数を保存できるようです。 これはそういう仕様と理解していいのでしょうか?ポインタでも示していただけると幸いです。 Linux ru 2.6.22-14-generic #1 SMP Tue Feb 12 07:42:25 UTC 2008 i686 GNU/Linux #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> int main(int argc, char *argv[]) { char* str; int i; int size = 10000*1024; str = malloc(size); fprintf(stderr, "ARG_MAX=%d\n", sysconf(_SC_ARG_MAX)); memset(str, 'a', size); memcpy(str, "hoge=", 5); putenv(str); printf("%s", getenv("hoge")); free(str); return 0; }
- 651 名前:login:Penguin mailto:sage [2008/03/06(木) 20:49:10 ID:xYqhiEhk]
- >>650
仕様かどうかは知らんが、free(str)の前にsystem("ls");といれて、 straceつきで実行してみればARG_MAXがどこに効いているかわかるんじゃね?
- 652 名前:login:Penguin mailto:sage [2008/03/07(金) 02:06:25 ID:6CTqh5eF]
- 650じゃないけどやってみた。
現在の環境変数hogeの5文字目を読むプログラムenvcをsystem()で実行。 execve("/bin/sh", ["sh"..., "-c"..., "./envc"...], ["other-env=.....", "hoge=aaaaabaaaaaaaaaaaaaaaaaaaaa"...]) = -1 E2BIG (Argument list too long) exit_group(127) = ? で失敗するよう。 自プロセス内のputenv,getenvは単にアドレスを保存しているだけみたいな感じ。
- 653 名前:login:Penguin mailto:sage [2008/03/07(金) 08:22:54 ID:UMdAZxi/]
- Linuxでどうやってるのか知らないけど、古典的なUnixだとputenvしたときには
書く場所がなければmallocして場所を作るしなあ
- 654 名前:650 mailto:sage [2008/03/07(金) 18:57:12 ID:WLDLR5XW]
- ありがとうございます。
そういえば FreeBSD の putenv も malloc していたような記憶があります。
- 655 名前:login:Penguin mailto:sage [2008/03/09(日) 22:25:35 ID:OicC4WBL]
- kernel 2.6.22でnetdevice.hのnet_deviceに
なぜstruct net_device *next消えてるの? linux-sourceにはあるが linux-headerには無い なぜ?
- 656 名前:login:Penguin mailto:sage [2008/03/09(日) 23:46:44 ID:8q2J0afq]
- >>655
linux-(source|header)にある/ないは知らんが、struct net_device::next が消えた理由は以下らしいよ。 ttp://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.22.y.git;a=commit;h=7562f876cd93800f2f8c89445f2a563590b24e09
- 657 名前:login:Penguin mailto:sage [2008/03/11(火) 01:36:58 ID:Rs8OmFO7]
- >>655
なるほど解ったどもね 今snullベースで 仮想Ethernetデバイスを作ってるんだけど たとえばeth0がすでに登録されてて eth0のパケットをsnull0で送受信したい場合って initの中で dev_get_by_name("eth0); でeth0のnet_devicはとって来れるけどこいつを どうやって料理すればいいんだ? なーんにも思いつかないw
- 658 名前:login:Penguin [2008/03/15(土) 18:03:02 ID:NRAbwdcX]
- /usr/include/pgsql/server/postgres.h と /usr/include/wand/MagickWand.h を
一緒に #include すると、コンパイル時に以下の警告が出るのですが、 これってどうにかならないもんしょうか? /usr/include/pgsql/server/pg_config.h:14 から include されたファイル中, /usr/include/pgsql/server/c.h:53 から, /usr/include/pgsql/server/postgres.h:48 から, main.c:9 から: /usr/include/pgsql/server/pg_config_x86_64.h:571:1: 警告: "PACKAGE_BUGREPORT" が再定義されました /usr/include/wand/wand-config.h:10 から include されたファイル中, /usr/include/wand/MagickWand.h:29 から, main.c:8 から: /usr/include/wand/wand-config-64.h:491:1: 警告: ここが以前の宣言がある位置です 以下が重複しているようです。 PACKAGE_BUGREPORT PACKAGE_NAME PACKAGE_STRING PACKAGE_TARNAME PACKAGE_VERSION ググっても分からなかったので、せめてヒントでももらえると助かります。 環境はCentOS 5、postgresql-8.2.5-2PGDG、ImageMagick-6.2.8.0-3.el5.4 です。 コンパイルコマンドは以下のような感じです。 gcc main.c -m64 -I/usr/include/pgsql/server -lpq -lWand
- 659 名前:login:Penguin mailto:sage [2008/03/15(土) 20:05:58 ID:f5+YWLcF]
- >>658
そのヘッダの中身見てないけど、警告がでないようにするなら、 1. postgres.h,MagickWand.hを#includeしている間に#undef PACKAGE_* を入れる。 2. main.cから、postgres.hが必要な部分とMagickWand.hが必要な部分を 別々のファイルに関数として切り出して、それぞれのファイルでは postgres.hかMagickWand.hのどちらかのみ#includeする。 のいずれかでどうよ?
- 660 名前:login:Penguin mailto:sage [2008/03/15(土) 20:50:51 ID:NRAbwdcX]
- >>659
やっぱそうするしかないよねー。 前者の方法でやってみるー。ありー。
- 661 名前:login:Penguin mailto:sage [2008/03/15(土) 21:36:12 ID:O4AlaY1A]
- ABが特に詳しく日本外務省について暴露しています
福田が尖閣諸島を中国に売り渡そうとしている! 外務省と福田政権が日本を中国に売り渡す・・・ 青山繁晴氏が実際に見てきた日本の癌 @ www.youtube.com/watch?v=hZ5tOzAXtkc A www.youtube.com/watch?v=Rl1vV_53KnU B www.youtube.com/watch?v=sR9CpB7FgHo
- 662 名前:login:Penguin mailto:sage [2008/03/15(土) 22:23:04 ID:iDC6xMbb]
- kernel空間でキューを作ってmmapで参照させたいんだけど
余計な処理が込み入ってないサンプルってありますか? ドライバの形式はなんでもかまいません。
- 663 名前:login:Penguin [2008/03/17(月) 00:43:36 ID:nawcmHh0]
- >>662
お前K社か?
- 664 名前:login:Penguin [2008/03/17(月) 12:33:53 ID:nScJcaBW]
- 自動停止してくれません。判りますでしょうか?
前提条件:テスト用に/root/test_stop.sh に、 プロセス停止のシェルプログラム作成。 (ちゃんと停止しないとファイルが壊れるため) 1:/etc/rc.d/init.d/test_stop として、下記を作成 ----------------------------- #!/bin/bash # Stop /root/test_stop.sh ----------------------------- 2:/etc/rc.d/init.d/test_stop に 実行権をつける 3:リンクの作成 ln -s /etc/rc.d/init.d/test_stop /etc/rc.d/rc3.d/K99test_stop コマンドラインで /root/test_stop.sh /etc/rc.d/init.d/test_stop と打ち込むと実行(正常に停止して)されますが、 サーバーを再起動しても動いて(正常に停止して)くれません。(涙
- 665 名前:伊藤 mailto:sage [2008/03/17(月) 15:29:49 ID:CWhG8eFa]
- >>664
エスパーのオレが回答する。 パスが通っていない。 init.dの下にある他のファイルを参考にパスを通しなさい /bin,/sbin/usr/bin/usr/sbin くらいは通さないと駄目かと。 >>666 お前アホだろw
- 666 名前:664 mailto:sage [2008/03/17(月) 15:49:11 ID:nScJcaBW]
- ??
パスですか? 他のファイルをみてますが、、今ひとつ??
- 667 名前:login:Penguin mailto:sage [2008/03/17(月) 17:01:34 ID:oHIFzbD+]
- uClinuxでpthreadって使えるでしょうか
全く調べてないですけど
- 668 名前:login:Penguin mailto:sage [2008/03/17(月) 21:40:09 ID:hxyCMaK/]
- >>664
直接ln -sなんてやってるのもまずいし、そもそもディストロが何か書いていない 時点で、rc.d以下がどういう挙動をするのかということがRHELやらSLESやら ディストロによって違うということが分かってないだろ。
- 669 名前:login:Penguin mailto:sage [2008/03/17(月) 21:49:58 ID:hxyCMaK/]
- つーか、どういう動作を期待していたのか、何を試してどうなったのかも分からんが、
スクリプトの書き方からして根本的に駄目だ。 他のスクリプトをひとつでも見れば、どうしようもなく間違ってることくらい すぐに気づくはずなんだが。
- 670 名前:login:Penguin mailto:sage [2008/03/17(月) 22:06:58 ID:e/wCVwfQ]
- >>669
じゃあ手本見せてやれよ 分からない分からないばかり言ってないでさ
- 671 名前:login:Penguin mailto:sage [2008/03/17(月) 22:21:17 ID:YyeBPwCr]
- 手本は多数インストールされてるだろが。それを見れ。
- 672 名前:login:Penguin mailto:sage [2008/03/17(月) 22:41:19 ID:6m6H6SB/]
- >>663
Kってどこだぉ?
- 673 名前:login:Penguin mailto:sage [2008/03/17(月) 23:18:23 ID:EaiHugoC]
- >>672
Kentucky Fried Chicken に決まってるじゃないの
- 674 名前:login:Penguin mailto:sage [2008/03/17(月) 23:20:52 ID:+R0hndtT]
- >>664
runlevel 3は再起動じゃなかったりするわけだが。 /etc/inittabに説明が書いてないか? ついでにK99じゃ遅すぎて、呼ばれる前にkill -TERMくらうと思うわけで。 >>667 使えるはず。 kernelじゃなくてuClibc側が対応してなかったりする可能性もあるが。
- 675 名前:login:Penguin mailto:sage [2008/03/17(月) 23:46:58 ID:s0icvwwX]
- >>673
カーネルサンダースかw
- 676 名前:login:Penguin mailto:sage [2008/03/17(月) 23:58:03 ID:Rzp2mBZf]
- >>674
667ですが使えました。 あろがとうございました。
- 677 名前:login:Penguin mailto:sage [2008/03/17(月) 23:58:28 ID:Rzp2mBZf]
- ありがとうございました!
- 678 名前:login:Penguin mailto:sage [2008/03/18(火) 00:45:47 ID:pdz2c3Ck]
- KFCか
- 679 名前:login:Penguin mailto:sage [2008/03/18(火) 23:52:30 ID:pdz2c3Ck]
- 24時間で誤差1ミリsec以内に
時間を調節したいんだけど NTPだけじゃどうにもならん こうゆうときどうするの?
- 680 名前:login:Penguin mailto:sage [2008/03/18(火) 23:55:57 ID:owXiyD5i]
- >>679
KFCか、あきらめるんじゃないか?
- 681 名前:login:Penguin mailto:sage [2008/03/19(水) 00:00:57 ID:mZKM+MPD]
- GPSから受信するのがいいんじゃないか?
- 682 名前:login:Penguin mailto:sage [2008/03/19(水) 00:34:49 ID:jmy0fpSq]
- 受信機からシリアルで送ってもらうと、1msくらい余裕でぶれそうな
気がするでよ。 システムクロックをTCXOで作ればどうにかなりますかねえ。 そもそも何でそこまでの精度が必要なのか気になりますな。
- 683 名前:login:Penguin [2008/03/19(水) 01:52:51 ID:Dy7hJrHZ]
- >>679
さすがに1日1秒もずれねーよなー っていう前提の下に、1分に1回時刻合わせする
- 684 名前:login:Penguin mailto:sage [2008/03/19(水) 01:59:47 ID:hI6xFIVz]
- で、肝心のNTPサーバが他人様の物で、毎分の御アクセス
ありがとうございます。というメールとともにアク禁にされると。
- 685 名前:login:Penguin mailto:sage [2008/03/21(金) 10:51:26 ID:GPURSs20]
- puttyなターミナルから入った最近のLinuxで、ncursesw使ってutf-8を表示しようとしたのだけど、
mvprintw(1, 0, "※"); mvprintw(1, 1, " "); mvprintw(1, 2, "※"); mvprintw(1, 1, "☆"); なら期待どおり ※☆※ になるのに、 mvprintw(1, 0, "※"); mvprintw(1, 1, " "); mvprintw(1, 2, "※"); mvprintw(1, 1, "あ"); と最後の☆を変えただけで ※あ に表示が崩れるのは、どこに原因があるのでしょうか?
- 686 名前:login:Penguin mailto:sage [2008/03/21(金) 23:04:14 ID:08/5PZeA]
- IMEの入力モードを変換するAPIってあるんでしょうか?
- 687 名前:login:Penguin mailto:sage [2008/03/26(水) 01:52:22 ID:cX9Hm6ZW]
- Linuxで各スレッドが何回Mutexかけて
失敗したとか統計情報ってどこにあるの?
- 688 名前:login:Penguin mailto:sage [2008/03/26(水) 21:37:02 ID:3c6tutxx]
- >>687
はっはっは 無いよ
- 689 名前:login:Penguin mailto:sage [2008/03/27(木) 02:27:08 ID:PiHD4Bq/]
- ねーのか
腐ってるんだな本当に windowsがやっぱ最強だな
- 690 名前:login:Penguin mailto:sage [2008/03/27(木) 23:02:19 ID:vcJKwHhP]
- WindowsはMutexかけ損なった統計があるのか
スゴイな。どうやったら取れるんだい?
- 691 名前:login:Penguin [2008/03/28(金) 11:01:02 ID:HvPMQUTZ]
- イベントログじゃね?
ところで、質問です。 iconvの使い方、サンプルコードがあれば、教えてください。 やりたいことは >SJIS 文字列と UTF8 文字列を相互に変換する ことです
- 692 名前:login:Penguin mailto:sage [2008/03/28(金) 13:32:01 ID:i9tqqt3j]
- iconv -f SJIS -t UTF-8
iconv -t SJIS -f UTF-8
- 693 名前:login:Penguin mailto:sage [2008/03/28(金) 15:51:47 ID:HvPMQUTZ]
- ありがとうございます。
プログラムから使う場合も教えてくださいorz
- 694 名前:login:Penguin mailto:sage [2008/03/28(金) 15:56:36 ID:s6QtoqP9]
- system()
- 695 名前:login:Penguin mailto:sage [2008/03/28(金) 17:40:02 ID:5TgcLqfx]
- シェルスクリプトからそのまま使え。
C99(UTF-8->SJIS) char *instr = "文字列"; char *i = instr; size_t i_len = strlen(i); char out[256]; char *o = out; size_t o_len = sizeof(out); iconv_t cd = iconv_open("SJIS", "UTF-8"); int r = iconv(cd, &i, &i_len, &o, &o_len); iconv_close(cd); iconvの引数は、普通cd以外全部書き換わるから、元のアドレスはどっかに取っとけ。
- 696 名前:login:Penguin mailto:sage [2008/03/28(金) 18:06:35 ID:HvPMQUTZ]
- 詳説サンクス>>695
ところで、現在の文字コードはどうやってとりますか? 環境変数のLANGですか? ttp://q.hatena.ne.jp/1136691036
- 697 名前:login:Penguin mailto:sage [2008/03/28(金) 18:11:06 ID:s6QtoqP9]
- pc11.2ch.net/test/read.cgi/unix/1127388574/202-205n
の人?
- 698 名前:login:Penguin mailto:sage [2008/03/28(金) 18:12:36 ID:HvPMQUTZ]
- 当たり!
これが解決すれば、もう無問題なんですが。
- 699 名前:login:Penguin mailto:sage [2008/03/28(金) 18:13:37 ID:5TgcLqfx]
- pc11.2ch.net/test/read.cgi/tech/1205795434/26 は?
- 700 名前:login:Penguin mailto:sage [2008/03/28(金) 18:14:29 ID:s6QtoqP9]
- >>698
なら板違い。
- 701 名前:login:Penguin mailto:sage [2008/03/28(金) 21:23:25 ID:s9WZiFsz]
- 環境変数は
・プロセス毎に持つものである。 ・どの環境変数をどう使うかは各プロセスに自由に任されている。OSは関知しない。 以上を踏まえて自分の目的が達成出来るか否か検討するよろし。
- 702 名前:login:Penguin mailto:sage [2008/03/31(月) 13:16:40 ID:psA1qVjr]
- 黒タイツの暗黒シュシュトリアン
- 703 名前:login:Penguin mailto:sage [2008/04/07(月) 09:04:17 ID:tYWKZpa/]
- C/C++でHDDの使用量を取得したいのですがどのようにすればよいのでしょうか?
- 704 名前:login:Penguin mailto:sage [2008/04/07(月) 10:52:59 ID:YCXHql+C]
- dfのソースでも読んでみれば
- 705 名前:login:Penguin mailto:sage [2008/04/07(月) 10:54:35 ID:eTKSmIvZ]
- ・kernel様にお伺いする。
・アプリからI/Oポートを直接操作する。 かな。
- 706 名前:login:Penguin mailto:sage [2008/04/07(月) 13:33:34 ID:HanpYLz1]
- >>703
statfsを呼べばおk 続きはmanで
- 707 名前:login:Penguin [2008/04/07(月) 16:33:38 ID:K3aneVtn]
- 次期C++ではinline fortranが可能に!
pc11.2ch.net/test/read.cgi/tech/1207109859/ 仕様肥大化しすぎ
- 708 名前:login:Penguin mailto:sage [2008/04/07(月) 18:02:15 ID:voVdLXCc]
- C++好きだけどいい加減自重してほしいとは思うな
- 709 名前:login:Penguin mailto:sage [2008/04/07(月) 20:42:31 ID:ky4RCRjO]
- 正直ワロタ。もはやネタの域にきとるな。次はinline C#とかw
- 710 名前:login:Penguin mailto:sage [2008/04/08(火) 14:18:36 ID:xYr9GeEI]
- スレッド間の排他について質問です。
現在、共有資源の内容を変更(新規追加・内容変更・削除)を行うスレッドが1つと 共有資源の参照のみを行うスレッドがN(N>=2)の構成のアプリケーションを開発 しています。 今まで、どちらのスレッドもアクセスするには同じMutexによる排他を行っていた のですが、どうにもスループットが出ないので、参照のみを行うスレッド間を並列に 動かせるようにするための方法を探していたところ、読み書きロック(正式には 何と呼ぶのでしょうか?)を発見しました。そこで、 変更するスレッド:変更前後で pthread_rwlock_wrlock() / pthread_rwlock_unlock() 参照するスレッド:参照前後で pthread_rwlock_rdlock() / pthread_rwlock_unlock() というようにして試験したところ、劇的にスループットが向上しました。 これはこれで良かったんですが、となるとMutexの存在意義について疑問が出てきました。 今後、あらゆるMutexを使用している場面で、読み書きロックを使用し、Mutexの出番は ない!と断言してしまって良いのでしょうか?
- 711 名前:login:Penguin mailto:sage [2008/04/08(火) 21:42:30 ID:VGg353lI]
- 常識的に考えれば、この世にロックの手法がいくつもあるからには、
それぞれ向き不向きがあるのではないかと思うだろ。 常識で分からなければソースコード読んでみれ。pthread_rwlock_rdlock()で やっている処理があらゆる場面で常に必要なのかどうか。
- 712 名前:login:Penguin mailto:sage [2008/04/08(火) 23:57:33 ID:weWUMveG]
- なんで参照でロックすんの?
- 713 名前:login:Penguin mailto:sage [2008/04/09(水) 00:19:39 ID:72MInrbZ]
- アトミック書き込み関数とかがPOSIXにはないから、かなー。
あとは、アレ、読み取り一貫性?そういうのを確保しないと、 これからはCPUコア数の増えていくからネ
- 714 名前:login:Penguin mailto:sage [2008/04/09(水) 01:48:54 ID:MHOGD1vi]
- つーと、具体的には変更スレッドと(参照スレッド)の同時発行時に参照スレッド側が遅延した場合とか考えてるのかな?
だとすると、Mutexを利用して変更スレッド側の優先度をごにょごにょしたりするつーことなの?
- 715 名前:login:Penguin mailto:sage [2008/04/09(水) 12:36:11 ID:oZETFFXK]
- カーネル2.4の環境で、共有メモリを使用したプロセス間通信を行っているのですが、
プロセスが停止(終了ではなく一時停止)します。 ・AとBの2プロセスが動作しています。 ・AはBへメールを送信(msgsnd)します。 ・Bはメールを受信するとTCP/IP接続されたサーバに情報を送信し、 送信したことをAプロセスへメールで通知します。 これを繰り返していると、たまにBプロセスの関数途中でAプロセス側へCPUが スイッチされそのままBプロセスへ制御が戻らなくなります。 (システムコール等でブロッキングされているわけではありません) ※メール送信時の共有メモリは、メール送信毎に作成し、受信側で破棄する作りです。 ※今のところTCP/IP通信を行わないと発生しません。(ドライバは標準の物) ※一時停止したプロセスはコンソールへの入力等(H/W割り込み?)を行うと再開します。 このような現象にあった方はいないでしょうか?(長々とすみません)
- 716 名前:login:Penguin mailto:sage [2008/04/09(水) 12:56:09 ID:KQOYg6Em]
- 送信側にディレイを入れてみるとか?
- 717 名前:715 mailto:sage [2008/04/09(水) 15:05:40 ID:7C+zl+CD]
- すみません、情報が漏れていました。
AプロセスはBプロセスのTCP送信が終わるまで、次のメールは送信しません。 その為メールボックス一杯や、メモリ枯渇も無いはずです。
- 718 名前:login:Penguin mailto:sage [2008/04/09(水) 15:07:43 ID:KQOYg6Em]
- straceで調べてみるとか?
- 719 名前:login:Penguin mailto:sage [2008/04/09(水) 21:33:10 ID:miANdZt+]
- pthread_rwlock_wrlock()とか
遅いし使う価値ないじゃん 全部pthread_mutexの方が安全だし
- 720 名前:login:Penguin [2008/04/10(木) 17:20:05 ID:hC2NJA9B]
- 時間について教えて頂けないでしょうか?
1) 時間の取得(文字でなくて数値) 2) 時間のローカルタイム化 3) 夏時間の演算(tm_isdstの使い方が答?) を順番に行うコードもしくは関数を教えて頂けないでしょうか?
- 721 名前:720 mailto:sage [2008/04/10(木) 17:30:23 ID:hC2NJA9B]
- >1) 時間の取得(文字でなくて数値)
については、gettimeofdayがあるみたいですね。 その後がよくわからなくてorz
- 722 名前:login:Penguin mailto:sage [2008/04/10(木) 17:33:38 ID:f9Jb/+FW]
- ? www.linux.or.jp/JM/html/LDP_man-pages/man2/gettimeofday.2.html
- 723 名前:720 mailto:sage [2008/04/10(木) 18:06:20 ID:hC2NJA9B]
- >>722
有難う。 1のgettimeofdayについては、分りましたが。。。
- 724 名前:login:Penguin mailto:sage [2008/04/10(木) 18:09:09 ID:f9Jb/+FW]
- >>723
そのページしか観賞しないの?
- 725 名前:login:Penguin mailto:sage [2008/04/10(木) 18:23:14 ID:hC2NJA9B]
- 分らないから聞いてるんですけど。
正直言って、 >>722 のリンクは書き込む前に読んでます。
- 726 名前:login:Penguin mailto:sage [2008/04/10(木) 18:24:02 ID:f9Jb/+FW]
- >>725
学生くん?
- 727 名前:login:Penguin mailto:sage [2008/04/10(木) 18:25:22 ID:hC2NJA9B]
- >>726
おまい、ウザさ極限。 消えてお願い。
- 728 名前:login:Penguin mailto:sage [2008/04/10(木) 18:26:26 ID:kK61Qe8m]
- >>725
ttp://www.google.com/
- 729 名前:login:Penguin mailto:sage [2008/04/10(木) 18:26:36 ID:xKGUAbUV]
- 時間と時刻の使いわけ
ものをたずねるときの態度 終わってるな
- 730 名前:login:Penguin mailto:sage [2008/04/10(木) 18:53:32 ID:hC2NJA9B]
- おまいら、クズだな。
こういう回答を待ってたんだよ : ttp://www.ne.jp/asahi/hishidama/home/tech/lang/date.html
- 731 名前:login:Penguin mailto:sage [2008/04/10(木) 18:56:49 ID:f9Jb/+FW]
- LINUXの固有の質問じゃないのに、聞く場所間違ってる。
だだのCの標準関数の使い方だろ?
- 732 名前:login:Penguin mailto:sage [2008/04/10(木) 19:31:12 ID:hC2NJA9B]
- >>731
おまいはクズなだけじゃなく、チ●カス野郎だな。 おまいの出したPOSIXのヘルプ読んでみろよ。 今は使うべきでないものから、BSD拡張まで書いてあるからwww
- 733 名前:login:Penguin mailto:sage [2008/04/10(木) 19:32:46 ID:f9Jb/+FW]
- 職業プログラマ?
- 734 名前:login:Penguin mailto:sage [2008/04/10(木) 19:56:43 ID:kK61Qe8m]
- 中学生か高校生でしょ。関わらない方がいいよ。
- 735 名前:login:Penguin mailto:sage [2008/04/10(木) 20:33:34 ID:qQFVgABP]
- >>720
time_t t=time(); puts(ctime(&t); で出来るよ。夏時間は廃止されました。 ttp://www.linux.or.jp/JM/html/LDP_man-pages/man3/ctime.3.html
- 736 名前:login:Penguin mailto:sage [2008/04/10(木) 21:28:17 ID:1AAfwdH6]
- 低スキル職業プログラマでしょ。
で、誰かに知恵をつけてもらって必死でやり返そうとしてるんだろ。
- 737 名前:login:Penguin mailto:sage [2008/04/10(木) 23:15:29 ID:JcKcidtB]
- これは酷いわ
- 738 名前:login:Penguin mailto:sage [2008/04/11(金) 10:13:35 ID:Dl1bvkA3]
- >>735
>夏時間は廃止されました。 本当ですか??? 本当ならどれだけうれしいか。 ところで、>>720 の演算を順番に行うコードも知りたいです。
- 739 名前:login:Penguin mailto:sage [2008/04/11(金) 11:48:41 ID:sYNmn6Lb]
- >>738
>>735がそのコードです。
- 740 名前:login:Penguin mailto:sage [2008/04/11(金) 12:29:22 ID:Dl1bvkA3]
- なるほどサンクス。
time(); ・・・UTC(もしくはGMT) ctime()・・・ローカルタイム化+文字列化 ですか。
- 741 名前:login:Penguin mailto:sage [2008/04/12(土) 01:40:35 ID:aMk0av0+]
- ていうか、「ありがとう」は?
- 742 名前:login:Penguin mailto:sage [2008/04/12(土) 08:56:08 ID:GsTcWvnq]
- サンクスって書いてあるじゃん
- 743 名前:login:Penguin [2008/04/12(土) 09:17:33 ID:H1hJd2mx]
- 以下のプログラム
fd = iconv_open("EUCJP", "SJIS"); iconv(fd, (char **)&inptr, (size_t*)$size, (char **)&outptr, (size_t*)$size); iconv_close(fd); Valgrind --leak-check=yes でチェックすると、iconv_open()で Invalid read size of 4 Address xxxxxxx is 48 bytes inside a block of size 49 alloc'd とエラーを出すんですがiconv()を使っていて問題を起こしてる方いませんか? iconvの出力は正常なんですが
- 744 名前:login:Penguin mailto:sage [2008/04/12(土) 13:41:44 ID:2bOSym+8]
- iconvは危険だから使ってはいけない
- 745 名前:login:Penguin mailto:sage [2008/04/12(土) 13:45:36 ID:yzi8k0zU]
- 時代は酢昆布
- 746 名前:login:Penguin mailto:sage [2008/04/12(土) 15:09:02 ID:H1hJd2mx]
- >>744
アプリを書き換えることにしました。ありがとうございます。 >>745 そうだったんですか?初めて知りました。もっと勉強します。
- 747 名前:login:Penguin mailto:sage [2008/04/12(土) 17:16:01 ID:zeB3ARgq]
- そのドル記号は何だw
- 748 名前:login:Penguin mailto:sage [2008/04/18(金) 04:34:40 ID:fBS7BtR5]
- ログ出力の際にファイルロックが必要かどうか実験していたのですが、
ちょっと不思議な現象に出くわしました。 以下のプログラムを100プロセス同時に実行すると、hoge.logの一部で「wwritten」と なってしまう箇所があります。 fprintfでなくwrite(2)を使うと再現しないのでglibc(2.6.1)のせいだと思うのですが、 これはどういう原理なのでしょうか? #include <sys/file.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main(int argc, char *argv[]) { int i; FILE* fp = NULL; int fd; int pid = getpid(); fp = fopen("hoge.log", "a"); if (!fp) { exit(1); } fd = fileno(fp); for (i=0; i<10000; i++) { flock(fd, LOCK_EX); fprintf(fp, "written by pid %d\n", pid); flock(fd, LOCK_UN); usleep(1000); } fclose(fp); return 0; }
- 749 名前:login:Penguin mailto:sage [2008/04/18(金) 06:27:36 ID:cYJ/Gams]
- >>748
flock(fd, LOCK_EX); fprintf(fp, "written by pid %d\n", pid); + fflush(fp); flock(fd, LOCK_UN); まあglibcのせいと言えなくもないが…
- 750 名前:login:Penguin mailto:sage [2008/04/18(金) 07:27:29 ID:twxhbmPg]
- いや、「glibcのせい」と言ってはマズイじゃろ。「Cのせい」だよな。
つーか、この内容ならロックを取らずにアトミックに書き出せばええやん。
- 751 名前:748 mailto:sage [2008/04/18(金) 13:21:14 ID:3NdGmVsA]
- fflushとはすっかり忘れていました。
ついでにお聞きしますが、ログ追記の定石というのはあるのでしょうか? ・ロックは不要か ・1行書くたびにfflushではパフォーマンスが気にならないか ・クラッシュしたときのためatexitでfcloseするべきか とりあえずlog4cではflushもロックもしていないようでしたが。
- 752 名前:login:Penguin mailto:sage [2008/04/18(金) 17:28:29 ID:PjXu6NLk]
- 要件による。
- 753 名前:login:Penguin mailto:sage [2008/04/18(金) 20:38:56 ID:5dGB6yjX]
- 複数のプロセスからひとつのファイルに書き込むなら、
open(2)にO_APPENDをつけてファイルを開いておき、 write(2)で書き込むのが常道だろう。 ディスク表面への同期を行うべきか否かについては ケースバイケースだな。
- 754 名前:login:Penguin [2008/04/18(金) 21:48:41 ID:BhtI3++S]
- こなあああああああああああああああああああああああああああ
- 755 名前:login:Penguin mailto:sage [2008/04/18(金) 22:22:47 ID:gtZqIZ8N]
- / | / ̄/__ / ̄ ̄/ __ / / /_ 〃
/ | /_/ _/ _/ /_/ / /\___/ヽ (.`ヽ(`> 、 /'''''' ''''''::::::\ `'<`ゝr'フ\ + |(●), 、(●)、.:| + ⊂コ二Lフ^´ ノ, /⌒) | ,,,ノ(、_, )ヽ、,, .::::| ⊂l二L7_ / -ゝ-')´ + | `-=ニ=- ' .:::::::| + \_ 、__,.イ\ + \ `ニニ´ .:::/ + (T__ノ Tヽ , -r'⌒! ̄ `":::7ヽ.`- 、 ./| ヽ¬. / ノ`ー-、ヘ<ー1´| ヽ | :::::::::::::ト、 \ ( ./ヽ \l__,./ i l.ヽ! | .| ::::::::::::::l ヽ `7ー.、‐'´ |\-、 int main() { char* str="Hello World\n"; printf("Hello World\n"); return 0; }
- 756 名前:login:Penguin mailto:sage [2008/04/18(金) 22:48:41 ID:twxhbmPg]
- >>755
www.gnu.org/software/hello/hello.html
- 757 名前:login:Penguin mailto:sage [2008/04/19(土) 00:19:45 ID:764YM5Ap]
- >>756
apt-get install hello
- 758 名前:login:Penguin mailto:sage [2008/04/19(土) 01:01:26 ID:FPfrqFBy]
- 用意したデータをそのままIPのペイロードとして(IPのヘッダだけをつけて)送り出したいのですが、
具体的な方法を教えていただけないでしょうか。 できるだけ自分でプログラムを書かず、 既存のものを利用して実現したいと思っています。
- 759 名前:login:Penguin mailto:sage [2008/04/19(土) 01:52:35 ID:764YM5Ap]
- >>758
libnet
- 760 名前:login:Penguin [2008/04/19(土) 02:08:23 ID:+tIgJ88f]
- >>755 elisp で書いてみて
- 761 名前:login:Penguin mailto:sage [2008/04/19(土) 09:33:24 ID:FPfrqFBy]
- >>759
ありがとうございます。 これから調べてみます。
- 762 名前:login:Penguin [2008/04/24(木) 13:01:17 ID:Eon8tTkZ]
- libcのprintfってスレッドセーフなん?
出力が混じるくらいは目をつぶるとして
- 763 名前:login:Penguin [2008/04/24(木) 13:17:50 ID:8jColJMw]
- これもしかして俺が作ったスレ?
違ったっけ?
- 764 名前:login:Penguin [2008/04/24(木) 14:41:36 ID:8jColJMw]
- なぁおまえら。
char* ch; というような宣言があったとして、chはcharポインタ型と言って しまっていいんかな?
- 765 名前:login:Penguin mailto:sage [2008/04/24(木) 14:44:23 ID:j6EvvzSE]
- キャラクター型ポインタ、略して きゃらぽ
- 766 名前:login:Penguin [2008/04/24(木) 14:52:04 ID:8jColJMw]
- >>765
だよなぁ。 ttp://slashdot.jp/developers/comments.pl?sid=395832&cid=1323420 ここら辺見ててちょっと疑問に思ったんだ。 きゃらぽか。 使わせてもらうぜ。
- 767 名前:login:Penguin mailto:sage [2008/04/24(木) 14:58:21 ID:uGjCjb2u]
- Cの宣言の解釈順に読むとchはpointer to char
chはcharへのポインター
- 768 名前:login:Penguin mailto:sage [2008/04/24(木) 23:11:14 ID:Py8lS3wT]
- >>762
ちゃんと見てないが考慮はしてるようだ@2.7 書く所で排他制御してりゃ混ざらんとは思うが。
- 769 名前:login:Penguin mailto:sage [2008/04/25(金) 12:46:43 ID:ZR+Ag5j0]
- 何かのポインタ本読んだときに
ポインタは英語で読めってのは結構良かった 以来、>>767と同様、一度英語にしてから読んでいる
- 770 名前:login:Penguin mailto:sage [2008/04/26(土) 18:14:13 ID:VSA6Tw/p]
- 俺は複雑な宣言だと、英語の訳し方があやしいから
cdeclコマンドを使って確認かな。 cdecl> explain char *(*(*hoge[10])())() declare hoge as array 10 of pointer to function returning pointer to function returning pointer to char
- 771 名前:login:Penguin mailto:sage [2008/04/26(土) 18:43:45 ID:SnvFIl5v]
- right to leftの原則で自力で嫁
- 772 名前:login:Penguin mailto:sage [2008/05/01(木) 00:31:02 ID:scTgaskf]
- msgctlに必要な権限ってrootだけなんでしょうか?
- 773 名前:login:Penguin mailto:sage [2008/05/07(水) 19:15:08 ID:a19YHgic]
- >764へ
おまえ 読み方は、さておき 一般的に char* ch; ってコードがあったら何を連想する?
- 774 名前:login:Penguin mailto:sage [2008/05/07(水) 23:32:30 ID:cSvceTAy]
- スレッドの生成(pthread_create)を実施する関数のテストをしています。
スレッド生成が失敗した場合のケースをテストしたいんですが、意図的に pthread_createを失敗させる方法が分かりません。 PTHREAD_THREADS_MAX をいじっても当然無意味(そもそも、コメントアウトされている)で、 /proc/sys/kernel/threads_max はマシン全体にわたるパラメータなので、 他の使用者(共通端末上で開発しています)に迷惑がかかってしまいます。 プロセス毎の生成可能スレッド数を動的にいじることができれば理想です。 どなたか、妙案をご存知の方いませんでしょうか?
- 775 名前:login:Penguin mailto:sage [2008/05/07(水) 23:58:46 ID:pHDw0dkU]
- >>774
ulimitコマンドとかどうよ
- 776 名前:login:Penguin mailto:sage [2008/05/08(木) 00:54:12 ID:Zr8j43HW]
- $ ulimit -u
32752 $ ulimit -u 3 3 $ ls bash: fork: Resource temporarily unavailable $ ulimit -u 32752 bash: ulimit: max user processes: cannot modify limit: Operation not permitted ひエエエええええええええ
- 777 名前:login:Penguin mailto:sage [2008/05/08(木) 01:03:51 ID:y2WVcfdv]
- >>776
おいおいw
- 778 名前:login:Penguin mailto:sage [2008/05/08(木) 04:42:09 ID:jTb0scH/]
- これってどう直すんだw
execで置換もforkが前段に入るから無理?
- 779 名前:login:Penguin mailto:sage [2008/05/08(木) 07:40:35 ID:67SUhF1P]
- あきらめてログアウトすれ。
ちゃんとman page読んでから試せよ…
- 780 名前:login:Penguin mailto:sage [2008/05/09(金) 17:52:15 ID:NYmc9yfk]
- マソパゲ
- 781 名前:login:Penguin mailto:sage [2008/05/10(土) 14:29:04 ID:QmEn1LiA]
- dlopenや共有ライブラリのプロファイル情報を
取りたいのですがどうすればいいの? 普通に-pgでコンパイルしても gmon.outにmain1個だけしか出てこないw
- 782 名前:login:Penguin mailto:sage [2008/05/10(土) 19:29:59 ID:s9qAIz4p]
- 実験でゲームサーバーを構築したいのですが
クライアント側からのキー入力をTCP/IPプロトコルで、サーバーに送信する技術ってやっぱり socketを用いるのが吉?
- 783 名前:login:Penguin mailto:sage [2008/05/10(土) 19:38:32 ID:iYMWpnHw]
- ソケット以外の何でTCP/IPするというのだろうか・・・
- 784 名前:login:Penguin mailto:sage [2008/05/10(土) 19:44:22 ID:s9qAIz4p]
- >>783
linuxや通信関係の実装は、一回もやったことが無いので、確認させてもらいマスタ 元々C++使いなので、Cはわかるのですが、linuxのプログラミングに関して Cの情報は多いけど、C++の情報が少ないのが残念デツ 車輪の再発明はしたく無いので、C++のsocketのライブラリィーとか知っていたら教えてもらえマツカ オナガイシマスエロイヒト
- 785 名前:login:Penguin mailto:sage [2008/05/10(土) 20:34:18 ID:/xnxdJoy]
- >>782
クライアント側が BSD socket インタフェース持ってるんだったらそれが吉 もっと便利なライブラリがあるんだったらそれを使う方が、おそらく、もっと吉 そうでなければ使ってる OS の流儀に従うしかねぇんじゃねぇの?
- 786 名前:782 mailto:sage [2008/05/10(土) 20:52:57 ID:s9qAIz4p]
- >>785thx
何となくですが、輪郭が見えてきました WindowsのクライアントはMFCの中に多分berkley socket関連のライブラリがあると思うので それを使います、問題はlinuxでの実装になります、いろんなシステムコールが準備されているみたいですが 早速つまづいています(^^; dstSocket = accept(srcSocket, (struct sockaddr *) &dstAddr, &dstAddrSize); accept()システムコールでこんなエラーが出ます error: invalid conversion from \342\200\230int*\342\200\231 to \342\200\231 socklen_t\342\200\231 型変換が違うとコンパイラは言ってると思うのですが、引数の型は accept(int,(struct sockaddr *) arg1, arg2); なので正しいと思うのですが・・・・・?
- 787 名前:login:Penguin mailto:sage [2008/05/10(土) 21:06:13 ID:i6s1t4ei]
- >>786
こっちの方がいいと思うよ ネットワークプログラミング相談室 Port21 pc11.2ch.net/test/read.cgi/tech/1204287577/
- 788 名前:login:Penguin mailto:sage [2008/05/10(土) 21:09:29 ID:fPB8nF+C]
- 型がおかしいって言われてるのにどの型を使ってるか書かないのは釣りなのか?
- 789 名前:782 mailto:sage [2008/05/10(土) 21:15:38 ID:s9qAIz4p]
- >>787
>>788 thx ネットワークプログラミング相談室 Port21 pc11.2ch.net/test/read.cgi/tech/1204287577/ へ移動します
- 790 名前:login:Penguin [2008/05/22(木) 14:41:47 ID:NBp9AMHO]
- すみませぬ。
規則性を持って空のファイルを作る場合にCPUやメモリに負荷を あまり掛けないで作る方法ありますか? gccと標準的なシステムコールでお願いします。 open文で作ってますが、ファイルI/Oは、結構な仕事 なので、少しでも軽くしたいです。 規則はN文字のaaa(N=3)というファイルを作成 aab aac aad aba zaa .. zzz のように作ります。 規則性は、あまり関係ないですけど。 結構な大量ファイルを作成する必要があります。
- 791 名前:login:Penguin [2008/05/22(木) 14:50:27 ID:WyDCfVht]
- すみませぬ。
LUNAXにプログラムにおいて 20という数字をターミナルに入力したら、 それを読み取り、30という数字を表示する プログラムの作り方がわからない為、教えて頂けませんか??
- 792 名前:login:Penguin mailto:sage [2008/05/22(木) 14:51:55 ID:It4hntbe]
- 日本語でおk
- 793 名前:login:Penguin mailto:sage [2008/05/22(木) 15:02:39 ID:K3H4Ah9R]
- read; echo 30
- 794 名前:login:Penguin mailto:sage [2008/05/22(木) 15:05:22 ID:K3H4Ah9R]
- >>791
マルチか。 pc11.2ch.net/test/read.cgi/linux/1195282255/435
- 795 名前:login:Penguin mailto:sage [2008/05/22(木) 15:34:55 ID:gmG2tmnb]
- >>790
open/creat呼び出しはどうにもならんだろう。 FS側でジャーナリング止めるとか…
- 796 名前:login:Penguin mailto:sage [2008/05/22(木) 16:09:36 ID:cM6TBq1G]
- >>791
突っ込み所満載だから誰も突っ込んでないけど、LUNAXって何だよ・・・
- 797 名前:login:Penguin mailto:sage [2008/05/22(木) 22:32:21 ID:azKjZoxE]
- >>795
この場合、ext3のジャーナリングがオーバーヘッドとして比重が相当に 大きくなってそうですな。
- 798 名前:login:Penguin mailto:sage [2008/05/23(金) 00:22:04 ID:xL+nAK0I]
- メモリ上にあるデータのmd5sumを取得(計算)したいんですが、
GNU coreutilsのmd5sum.cから貰ってくる以外に簡単な方法は 無いでしょうか。
- 799 名前:login:Penguin mailto:sage [2008/05/23(金) 00:45:45 ID:nmi3RI3q]
- >>798
RFC1321のAppendixを丸写しする
- 800 名前:login:Penguin [2008/05/24(土) 01:18:02 ID:QlwIdcZn]
- カーネルが持ってるのをどうにか持ってくる。
- 801 名前:login:Penguin mailto:sage [2008/05/24(土) 01:27:20 ID:QlwIdcZn]
- Cryptographic APIってユーザーランドから使う方法ないんだっけ?
- 802 名前:login:Penguin mailto:sage [2008/05/24(土) 13:30:43 ID:jv/eFsuY]
- パイプでmd5sumに流し込めば?
- 803 名前:login:Penguin mailto:sage [2008/05/24(土) 14:15:42 ID:AYrBRDvb]
- 正直、LinuxよりLunaxの方がかっこいいと思った
- 804 名前:login:Penguin mailto:sage [2008/05/24(土) 17:32:54 ID:8/0PspEJ]
- >>798
やったことねーけど、そういうライブラリがあるんじゃね?
- 805 名前:login:Penguin mailto:sage [2008/05/26(月) 15:21:05 ID:fXE9sIkN]
- opensslが入ってるなら、EVP_md5
- 806 名前:790 [2008/05/28(水) 14:15:25 ID:7atgnQdI]
- すみません。
open以外に空ファイルを作る、CPUやメモリに負荷を掛けない 方法ありますか?
- 807 名前:あいちゃん mailto:sage [2008/05/28(水) 14:44:30 ID:u23B6L4S]
- どうにかしてプラッタに刻む
- 808 名前:login:Penguin [2008/05/28(水) 21:51:43 ID:hyFpgWYw]
- ドライブに負荷を掛けにくい方法ならある
cpuとメモリの負荷を減らしDMA転送も出来る。 が、負荷を かけない ってのは無理
- 809 名前:login:Penguin [2008/05/28(水) 22:21:06 ID:6Rl9Qb5b]
- >>806
システムコールを使いたくないなら、次のようにするしかないんじゃないかな? 1. ext3ドライバのソースを読んで空ファイルの作り方を調べる。 2. 直接HDDを操作して空ファイルを大量発生させるプログラムを作る
- 810 名前:login:Penguin mailto:sage [2008/05/28(水) 22:37:58 ID:tp55Dea8]
- あらかじめファイルが格納された状態のファイルシステムのイメージを用意して、
raw I/Oなりddなりでビットマップやinode領域等を書き込めば軽いだろ。 ファイルシステムを破壊するけどなw
- 811 名前:login:Penguin [2008/05/28(水) 23:36:20 ID:7atgnQdI]
- >>809
システムコールがだめってわけじゃないけど touchやcpのソース(coreutil)とか調べて負荷が低いのを探してた。 ext3のソースは未だ調べてない。調べて見る。 >>808 はい、より負荷を掛けない方法を模索してます。 >>810 考えてたけど、排他がマンドクセーと思ったので、未だやってないっす
- 812 名前:798 mailto:sage [2008/05/29(木) 02:30:49 ID:rITSsBYp]
- >>799-805
皆さんありがとうございます。 返事が遅れたことをお詫びします。 >>805さんのレスを見て、opensslを調べたところ www.openssl.org/docs/crypto/md5.html ここにMD5()という「まさに」な関数があって、 無事動きました。 色々知恵を絞っていただき、本当にありがとうございました。
- 813 名前:login:Penguin mailto:sage [2008/06/03(火) 14:19:26 ID:KXye7tRy]
- >>811
superblockいじっちゃいなよ。
- 814 名前:login:Penguin mailto:sage [2008/06/16(月) 22:07:27 ID:hghHQ/gK]
- write()でファイルに書き込んだあと
close()しても、すぐにはディスクには同期されていなくて、 タイムラグがあるそうなのですが、 close()した直後に別のプログラムから同じファイルを open()してread()しようとしたら、どうなるのでしょうか? その前にwriteした内容はちゃんと読み込まれるのでしょうか?
- 815 名前:login:Penguin mailto:sage [2008/06/16(月) 22:47:57 ID:B5/Uz4Q9]
- >>814
ちゃんと読み込まれる。バッファ統合されているから。 バッファ統合前の、昔のUnixではその点の保証がなかったが、 いまどきのUnix系OSはみんな統合されている。
- 816 名前:login:Penguin mailto:sage [2008/06/19(木) 00:29:34 ID:DwSvGKMg]
- ダーティーなデータの読み取りって昔は出来なかったの?
- 817 名前:login:Penguin mailto:sage [2008/06/19(木) 08:16:32 ID:B2b558bH]
- 読み込みに使うキャッシュと書き込みで使うバッファとが別々だったから
ダーティ・ページもクリーン・ページもない。
- 818 名前:login:Penguin mailto:sage [2008/06/19(木) 14:22:38 ID:qCoUXFkj]
- おお。なるほど。知らなかった。
ページキャッシュとバッファキャッシュの統合とか言う前の段階か。
- 819 名前:login:Penguin mailto:sage [2008/06/30(月) 22:13:50 ID:j7UJtdfw]
- 今日ソフトバンクから出た
デバドラの本最強すぎます バイブルの域に入ります
- 820 名前:login:Penguin mailto:sage [2008/06/30(月) 22:18:50 ID:haG/mU8k]
- 本の題名を詳しく
- 821 名前:login:Penguin mailto:sage [2008/06/30(月) 22:34:08 ID:j7UJtdfw]
- Linux デバイスドライバプログラミング
- 822 名前:login:Penguin mailto:sage [2008/07/01(火) 00:18:07 ID:jjjb16mB]
- >>821
目次見る限り、買う価値はありそうな気がするね。 までも、オライリーのドライバ本読んだら、カーネル解説書読んで とっととソース読めって気もするが。
- 823 名前:login:Penguin mailto:sage [2008/07/01(火) 00:19:23 ID:jjjb16mB]
- といいつつ、Amazonで1click購入してしまた
- 824 名前:login:Penguin mailto:sage [2008/07/01(火) 00:22:32 ID:u/xfrfGj]
- >>822
でもソース読んでも どうしても解らないことがる mmapでユーザに領域明け渡してpollで データ通知するのはいいんだけど ユーザが書いてきたデータをkernelに通知 させるのがよく解らん 馬にはそんなこと1行も記述されていないし
- 825 名前:login:Penguin mailto:sage [2008/07/01(火) 00:33:15 ID:jjjb16mB]
- >>824
>ユーザが書いてきたデータをkernelに通知 >させるのがよく解らん なんでもioctlしてしまえばOK
- 826 名前:login:Penguin mailto:sage [2008/07/01(火) 00:41:24 ID:u/xfrfGj]
- >>825
それ昔海外のBBSいったら ふるぼっこにされたんだけど?
- 827 名前:login:Penguin mailto:sage [2008/07/01(火) 00:45:03 ID:jjjb16mB]
- >>826
ちらねっっっっっw
- 828 名前:login:Penguin mailto:sage [2008/07/01(火) 00:51:09 ID:jjjb16mB]
- もうさ、read, writeなくしちまって、open, close, ioctlだけでいい気がするのだけど
どうなんだろう。read, write, SIGIOとか、柔軟性ないし。最低、引数付きシグナル は必要。
- 829 名前:login:Penguin mailto:sage [2008/07/01(火) 13:53:54 ID:JO6lQKf2]
- >>828
「ケンシロウ、ioctlはいいぞ」 という声が聞こえてきました。 read,writeは シェルからでも使えるようにするための種もみです。
- 830 名前:login:Penguin mailto:sage [2008/07/05(土) 11:02:49 ID:ouwQp4GB]
- スレッドチューニング用のプロファイラってありませんかね?
- 831 名前:login:Penguin mailto:sage [2008/07/05(土) 12:39:14 ID:GSKLgaHv]
- ありません
- 832 名前:login:Penguin mailto:sage [2008/07/05(土) 13:05:00 ID:ouwQp4GB]
- ズコー
- 833 名前:login:Penguin mailto:sage [2008/07/12(土) 13:14:06 ID:j34+JRvX]
- ubuntu 8.04-64bitで
bfd_minisymbol_to_symbol使うと問答無用で segるんだけど何が原因なんすかね?
- 834 名前:login:Penguin mailto:sage [2008/07/16(水) 02:13:51 ID:5DOmporE]
- PC/AT機のI/Oポートを操作するような時に、outb_pと(普通の)outを使い分ける
条件ってどうなってるんでしょうか? 『I/O操作の遅いデバイス』と『I/O操作の早いデバイス』で使い分ければよいのでしょうか?
- 835 名前:login:Penguin mailto:sage [2008/07/16(水) 08:46:59 ID:IjcD5fhK]
- >>834
まあそんな感じでよろしいのではないかと。 コマンド書いてから動き始める間で時間かかりますなんてのは、 outb_pでつつくのがよいです。
- 836 名前:login:Penguin [2008/08/15(金) 23:35:52 ID:Dq4dt+Vm]
- 質問させてください。
デバドラからアプリケーションにイベント通知したいときって どういう風に実装するのがフツウなんでしょうか。 よろしくお願いしますm(_ _)m
- 837 名前:login:Penguin mailto:sage [2008/08/16(土) 08:28:54 ID:DPUB+UTd]
- >>836
アプリケーションがioctlを呼んで、その呼び先のデバイスドライバで イベントが無かったら寝る。デバイスドライバでなんかイベントがあったら、 寝てるやつを起こす。って実装しときゃいいんじゃない?
- 838 名前:login:Penguin mailto:sage [2008/08/16(土) 09:07:36 ID:Xdxhavca]
- それならpollの方がよいのではないかと。
- 839 名前:login:Penguin mailto:sage [2008/08/16(土) 13:28:44 ID:KgWh2K36]
- read, write, pollいらねーんじゃね。ioctlでなんでもできるし、シグナルも不要。
- 840 名前:login:Penguin [2008/08/17(日) 04:15:45 ID:RamYD2Yk]
- >>837>>838>>839
レスありがとうございます! システムコール内で待つのが常套手段みたいですね。 ところで、 教えていただいた情報をもとに調べていくうちに、 デバドライベントを複数同時待ちしたいという新たな欲望が生まれてしまいました。 pollを実装すれば要件をみたせるようなので、 今回はpollを使うことにします。 ありがとうございました!!
- 841 名前:login:Penguin mailto:sage [2008/08/22(金) 18:32:31 ID:r1fvTloB]
- LinuxのカーネルモジュールをC++で作りたいんだけど無理?
とりあえずCで書いた本体の.oとg++で吐いた.oをリンクして、モジュールをビルドしたら.koは出来るんだけど、シンボル解決出来ずinsmodに失敗した。
- 842 名前:login:Penguin mailto:sage [2008/08/22(金) 20:40:29 ID:EJDA2Uuj]
- C++ シグネチャでググレ
- 843 名前:login:Penguin mailto:sage [2008/08/24(日) 07:51:45 ID:T31yXksn]
- Tcl/Tk
最近のものは、けっこう強力になったし、スピードも上がってるようだが、 あまり流行ってないのか? Linux, FreeBSD, MacOS X, Windowsと、殆んど同じコードが使えて便利なようなのだが…
- 844 名前:login:Penguin [2008/08/24(日) 13:24:24 ID:WgO6gp39]
- >>843
gtk+やwxWidgetsと比較してどうなの? 興味がわいたのでTkだけ使ってみたいのだけど おすすめ解説ページとかあったら教えてください。 特に画面遷移とかC/C++との連携方法とか・・・
- 845 名前:login:Penguin mailto:sage [2008/08/24(日) 13:36:45 ID:s1lwltE0]
- tkはともかく、tclを使ってる所なんてここ何年も見たこともない
- 846 名前:login:Penguin mailto:sage [2008/08/24(日) 15:41:43 ID:IEvm07Rz]
- EDA関係ではまだ多いんじゃないの?
- 847 名前:login:Penguin mailto:sage [2008/08/24(日) 18:03:42 ID:n5RJcPI7]
- 淘汰されたのに昔に戻してくれるなよ
- 848 名前:login:Penguin mailto:sage [2008/08/25(月) 08:28:43 ID:LUi0Re9e]
- 日経からムック『すばりわかる!Tcl/Tk』出ないかなあ。
『ゼロから学ぶgtk+』でもいい。
- 849 名前:login:Penguin mailto:sage [2008/08/25(月) 23:41:00 ID:/KPpX7xT]
- >>845
ネットワーク業界ではテストツールを書くのにがんがん使われている。
- 850 名前:login:Penguin mailto:sage [2008/08/26(火) 01:48:59 ID:QgHqFXA9]
- Tcl/Tkの日本語情報があまりにも少なすぎる。
- 851 名前:login:Penguin mailto:sage [2008/08/26(火) 07:48:19 ID:B+1DI1fl]
- >>850
確かに、Tcl/Tkの情報が少ないよね、そこそこ使われてるような気がするんだけど。 >>844 さんが言ってる c/c++ /Tk の情報は、殆んど皆無だもんね。 最近、山森さんがチョッピリ書いてるのはあるけども… ttp://journal.mycom.co.jp/column/helloworld/013/index.html
- 852 名前:login:Penguin mailto:sage [2008/09/03(水) 13:10:00 ID:nxPN9M20]
- gtkmm使ってこんなの作ってみました
www.vector.co.jp/soft/winnt/game/se461309.html これからQt4・gtkmmのどちらを使っていくか迷ってるんですが QTはGUIからネットワーク・サウンドなど様々な分野に対応したライブラリ gtkmmはGUIのみのライブラリだがウィジェットの生成・消去の処理はこちらのほうが早い 処理時間は優先させたいがいろんな機能が統合されている魅力も捨てがたい... どちらを使うべきでしょうか
- 853 名前:login:Penguin mailto:sage [2008/09/04(木) 02:03:16 ID:yL02FzIi]
- 両方
- 854 名前:login:Penguin mailto:sage [2008/09/04(木) 19:25:48 ID:kxSlZy+f]
- Qt4を少しだけ触ってみたんですがgtkmmにくらべ,ウィジェットの生成・消去にかかる処理時間が2〜3倍
さらに2D描画の処理時間が1.5〜2倍くらいかかりました. これって仕様?
- 855 名前:login:Penguin mailto:sage [2008/09/04(木) 21:34:53 ID:5liswdaD]
- gtkmmはCだろうけど、QtはC++だからしょうがないんじゃね。
GUIみたいなやつだと
- 856 名前:login:Penguin mailto:sage [2008/09/04(木) 22:58:04 ID:kxSlZy+f]
- gtkmmはGTK+のC++バインディングですよ
それにC++とC言語でも処理時間はさしてかわらないはず Debian使ってGNOMEデスクトップでQT4インストールしてやってるんですが 同じ言語で処理速度に2〜3倍の差が出るとかありえるんでしょうか
- 857 名前:login:Penguin mailto:sage [2008/09/04(木) 23:35:03 ID:5liswdaD]
- 速度差が気になるなら、プロファイル取って原因調べるなり
なんなりする。調査結果貼り付けたら、喜ぶ人もいる。 俺は、めんどいから調べないがw
- 858 名前:login:Penguin mailto:sage [2008/09/04(木) 23:55:48 ID:kxSlZy+f]
- とりあえず処理速度gtkmm>Qt4と結論づけて
Qt5出るまでgtkmm使うことにします GTK枯れてるのであまり使う気は引けるのですが... 本屋なんかでQt4の本とかはよく見かけるのに GTKの本なんかは絶版しててAmazonで全国5冊とかそんなのばかり...
- 859 名前:login:Penguin mailto:sage [2008/09/05(金) 00:20:36 ID:yJYLbrdu]
- gnome上でQTは時間かかるでしょ、逆も真なり。
- 860 名前:login:Penguin mailto:sage [2008/09/05(金) 00:24:58 ID:uvh8bhuM]
- Qtは時間かかんないよ。
KDEアプリはDCOPサーバ立ち上げるのに時間かかるけど。 GTKもKDE上で特に時間がかかるような事はない。
- 861 名前:login:Penguin mailto:sage [2008/09/05(金) 02:26:52 ID:B9KHGXh3]
- ここは一つGASで…
- 862 名前:login:Penguin mailto:sage [2008/09/05(金) 02:52:39 ID:vjYSyV9j]
- 軽くてシンプルなツールキットを自分で作っちゃえば?
- 863 名前:login:Penguin [2008/09/09(火) 23:40:53 ID:YosnVhH1]
- Xtで十分
- 864 名前:login:Penguin mailto:sage [2008/09/10(水) 19:47:10 ID:8bQJIIgG]
- GAMBASってやっぱ人気ねーのな。
- 865 名前:login:Penguin [2008/09/24(水) 15:06:15 ID:OEqJ5D76]
- wxWidgets、機能面は申し分ないけど
小さいアプリでもなんかもっさりするな。
- 866 名前:login:Penguin mailto:sage [2008/09/26(金) 20:03:57 ID:w561g39v]
- selectでファイルを監視していて、selectが帰る度に前回からの経過時間を取得したい
ntpdが動いていてる環境なんですけど、10ms精度で取得する方法はありませんか?
- 867 名前:login:Penguin mailto:sage [2008/09/26(金) 20:23:15 ID:QxRUqolh]
- >>866
clock_gettime(3) でいいんじゃね?
- 868 名前:login:Penguin mailto:sage [2008/09/26(金) 21:20:06 ID:w561g39v]
- >>867
ありがとうございます。
- 869 名前:login:Penguin mailto:sage [2008/09/28(日) 11:24:17 ID:p6UHPaTd]
- GTKのプログラミングの本ってどれおぬぬめデスか_?
- 870 名前:login:Penguin mailto:sage [2008/09/28(日) 15:20:53 ID:xpXgBPBo]
- いくつもないんだし
全部読め
- 871 名前:login:Penguin mailto:sage [2008/09/28(日) 15:44:21 ID:p6UHPaTd]
- どれあるんすか?
- 872 名前:login:Penguin mailto:sage [2008/09/28(日) 15:57:29 ID:CeAQTKB8]
- >>871
ttp://www.gtk.org/documentation.html#Books
- 873 名前:login:Penguin mailto:sage [2008/09/28(日) 16:02:40 ID:p6UHPaTd]
- やっぱり勉強やめた
英語無理
- 874 名前:login:Penguin mailto:sage [2008/09/28(日) 16:05:02 ID:IgG6wSSR]
- www.iim.ics.tut.ac.jp/~sugaya/wiki/wiki/
- 875 名前:login:Penguin mailto:sage [2008/10/15(水) 14:17:07 ID:eYzFomnv]
- ttp://www.gnome.gr.jp/docs/gtk+-1.2.x-refs/gtk/index.html
ttp://www.gnome.gr.jp/docs/gtk+-2.0.x-tut/gtk-tut.html ttp://www.gnome.gr.jp/docs/gtk+-1.2.x-refs/gdk/index.html 日本語のGTKマニュアルだとこれくらい ぐぐればほかにもあるかもしれんけど 市販の本もあるらしいが入手はほぼ不可 学びやすさではQtか... ただモジュールが膨大なせいか GTKより仕様が複雑
- 876 名前:login:Penguin mailto:sage [2008/10/16(木) 11:54:52 ID:0uol2Q5Z]
- >>873
1年前は俺もそう思ってたよ。 ところが仕事でやるようになって、 解らなくても必死に調べてたらそのうち解るようになってきた。 結論としては解らなくても続けていればなんとかなる。 ただ一人じゃつらいから仲間は必要だな。 Qtなら多少説明できるが、GTK+は未経験。 でもQtはWindowsと考え方はたいして変わらなかった。 やりたい人がいるんなら、プログラミングサークルwでもつくる?
- 877 名前:login:Penguin mailto:sage [2008/10/18(土) 12:10:00 ID:KYR9fNBQ]
- >>876
とりあえず、飽きるのに耐えつつ 昨日届いたFoundations of GTK+ Development を読んでいる。
- 878 名前:login:Penguin mailto:sage [2008/10/20(月) 03:11:00 ID:kADyao8b]
- >>877
乙
- 879 名前:login:Penguin mailto:sage [2008/10/25(土) 02:32:58 ID:qRPC/mBT]
- 結局wine入れてWin32API使うのが楽
すなわちWindows使うのが一番楽
- 880 名前:login:Penguin mailto:sage [2008/10/25(土) 06:24:50 ID:wJ7HZZJn]
- 素のWin32APIは…
VCLがお手軽で良かったのう。
- 881 名前:login:Penguin mailto:sage [2008/10/25(土) 19:40:27 ID:IwBjdQTZ]
- つまりLinuxデスクトップがWineで構成されているディストリビューションがリリースされればいいのか...
- 882 名前:login:Penguin mailto:sage [2008/10/28(火) 00:43:16 ID:AhwFq0EP]
- Lindows再び みたいなのがそのうち出るんだろうね。
Mono2.0では.NETアプリケーションの45%は修正なしでいくらしい。
- 883 名前:login:Penguin mailto:sage [2008/10/28(火) 00:48:56 ID:r3ekrN11]
- VBやDelphiみたいなのが出ればWindowsのサンデープログラマーが移行しやすいと思うね。
あとは開発ドキュメントの日本語化。
- 884 名前:login:Penguin mailto:sage [2008/10/28(火) 08:01:42 ID:DXJuo0mx]
- もう過去に失敗してるけどね
まあ何度でもトライすればいいとは思うが
- 885 名前:login:Penguin mailto:sage [2008/10/28(火) 21:59:26 ID:Vec0SHgw]
- perl python rubyあたりのスクリプト言語と適当なGUIライブラリで
十分だろ。趣味なら。
- 886 名前:login:Penguin mailto:sage [2008/10/28(火) 22:24:22 ID:Z2Jy68nM]
- なんでGTKでのGUI開発って
宗教的儀式作法としか考えられんほど糞なコーディング強いるの?
- 887 名前:login:Penguin mailto:sage [2008/10/28(火) 22:33:00 ID:HPnu13IO]
- 例えば?
- 888 名前:login:Penguin mailto:sage [2008/10/28(火) 22:47:25 ID:Z2Jy68nM]
- イベントとかもう嫌だ
.NETみたいに書きたい
- 889 名前:login:Penguin mailto:sage [2008/10/28(火) 23:55:06 ID:YSiYH+k9]
- 慣れの問題
どのGUIにも特有の決まりごとはあるもの やってることはそれほどかわらない
- 890 名前:login:Penguin mailto:sage [2008/10/29(水) 00:35:27 ID:opRkkW0G]
- あのなあ、そりゃGTKしかないなら慣れるしかないだろうけど、
実際には「学ばない」という選択肢があるから慣れようがないんだよ。 他とやってることがそれほど変わらないのなら、 簡単で合理的な「他」を選ぶだろうがバカめ。
- 891 名前:login:Penguin mailto:sage [2008/10/29(水) 00:58:37 ID:G+yEkmy9]
- というかGTKはOSXかWindowsどっちかと
機能と仕様統一すべきだろ GTKって生産性低いんだよ
- 892 名前:login:Penguin mailto:sage [2008/10/29(水) 00:59:10 ID:x4cHnl0M]
- 馬鹿宣言乙
- 893 名前:login:Penguin mailto:sage [2008/10/29(水) 01:01:25 ID:G+yEkmy9]
- そもそも.NETやCocoaだと5分で作れるようなことが
まずソースコード読もうとかアホな次元から始まる GTKは本当にありえない
- 894 名前:login:Penguin mailto:sage [2008/10/29(水) 03:13:54 ID:9ojY5vRp]
- >>893
それは言える
- 895 名前:login:Penguin mailto:sage [2008/10/29(水) 03:19:59 ID:F4yRCIO7]
- 実例をあげろ
- 896 名前:login:Penguin mailto:sage [2008/10/29(水) 03:20:53 ID:XWWc8vU1]
- ラーメンタイマーはもういいからw
- 897 名前:login:Penguin mailto:sage [2008/10/29(水) 03:28:18 ID:CAHVmB1i]
- ワロタ
- 898 名前:login:Penguin mailto:sage [2008/10/29(水) 08:02:53 ID:KASNM7qI]
- まあ.NETやCocoaは実質有料だからなあ。
- 899 名前:login:Penguin mailto:sage [2008/10/29(水) 11:53:31 ID:aVUXk04O]
- GTKやってる奴って趣味で(好きで)やってんだろうからどうでもいいが
俺専用なら、俺はまずGUIなんて作らんし大抵はスクリプトで終了だよ ゲームならどのみちGTKとか使わんだろ >>898 一般人はWindowsがプレインストールされているPCを買うし NETフレームワークもVisual Studio 2008EEもタダで手に入って ポトペタRADが利用できるわけで
- 900 名前:login:Penguin mailto:sage [2008/10/29(水) 12:44:13 ID:wwkxgPCl]
- 主流のXPには.NET入ってねぇだろ。
あれはWindowsUpdateのカスタムで「除外」するのが 企業なんかじゃあたりまえだぞ。 セキュリティ部門が運用で面倒くさくなるかならな。 VSが失速しタダみたいになったのは.NETになって 非.NETアプリの需要がまだあるのに非.NETアプリを 簡単に作るのが面倒になったらからだと思う。 .NETアプリっーつのは、ユーザーに別個に.NETのインストールを 指示する必要があるから面倒なんだよ。 (ATIのビデオドライバなんかがそうなっているね) 一般企業的価値感では.NETを利用するなら 旧開発環境で非.NETにするか、どうしてもフレームワークを使うなら javaにいくと思う。 周辺機器なんかの付属ソフトなんかもたいがいそうだよね。
- 901 名前:login:Penguin mailto:sage [2008/10/29(水) 12:50:14 ID:aVUXk04O]
- >>900
> 主流のXPには.NET入ってねぇだろ。 > あれはWindowsUpdateのカスタムで「除外」するのが > 企業なんかじゃあたりまえだぞ。 > セキュリティ部門が運用で面倒くさくなるかならな。 デフォで入ってなくともタダで入れられるし。 Linuxデスクトップなんて趣味丸出しの世界と 業務で使ってて好きに弄れない端末(非開発機)を同列に論じてるのも意味不明だな。
- 902 名前:login:Penguin mailto:sage [2008/10/29(水) 12:53:13 ID:aVUXk04O]
- 一応確認するが、
まさか.NETランタイムも入れられない環境に LinuxやWin用GTKランタイムは入れられるとか寝言言ってんじゃねえよな?w 知らんようだから教えてやるが、 .NETは思いっきり仕事でも使われてるよ
- 903 名前:login:Penguin mailto:sage [2008/10/29(水) 13:02:27 ID:wwkxgPCl]
- なんでそんなに必死なの?
ひょっとして仕事で.NET関係の開発してる? そりゃ大変だよね〜、VISTAがもっと流行ればいいね〜 (ちょっと無理っぽいが、計算狂ったんだろうなぁとは思う)
- 904 名前:login:Penguin mailto:sage [2008/10/29(水) 13:28:52 ID:aVUXk04O]
- >>903
お前さんが知ってる「世間」が狭すぎる上に主張が意味不明だから 突っ込んだだけだが 「Javaならいい」ってのも意味不明だしな JREはノーカウントかw
- 905 名前:login:Penguin mailto:sage [2008/10/29(水) 17:27:23 ID:ULIKBty7]
- >>904
必死さはよく伝わったよ。一応903とは違う者なので
- 906 名前:login:Penguin mailto:sage [2008/10/29(水) 21:51:45 ID:lCe1Ktii]
- こういう場合、何一つ具体的な反論をしていないほうが分が悪い
どちらだかは言うまでもないな?
- 907 名前:login:Penguin mailto:sage [2008/10/29(水) 22:36:46 ID:G+yEkmy9]
- GTK用のRADツールでまともなもん
無いの?なんで作らないの? リーナス馬鹿だから? 犯罪者排出したから?
- 908 名前:login:Penguin mailto:sage [2008/10/29(水) 23:40:02 ID:QzNzlvxl]
- リーナス関係ないじゃん。
と釣られてみる。
- 909 名前:login:Penguin mailto:sage [2008/10/30(木) 02:01:37 ID:4ykSSJQZ]
- あんなお絵かきツールいらんw
どんなGUIにもたいていついてるけどw できるソース最悪だしまともなもの作れるとは到底思えない 特にあの子供のお絵かき的な操作はやっててむなしくなってくるw 間に合わせではなくいいものを作りたいなら 普通にコーディングしたほうがいい
- 910 名前:login:Penguin mailto:sage [2008/10/31(金) 00:04:39 ID:rGwLY2DF]
- RADは簡単なGUIをすばやく、簡単に作るもので
時間がないのでGUIを手早く・・・ GUIはあまり重要でないので適当に・・・ という場合に(仕方なく)使用するツール にも関わらずこれら以外の場合で喜々として使用したいような方は RPGツ○ールえっくすぴーでもいじってた方が効率的 なにも理解してないゆとりの時代の子供が 無理にプログラマーの真似事をする必要はありません
- 911 名前:login:Penguin mailto:sage [2008/10/31(金) 12:21:08 ID:JojG8LTd]
- >>910
> なにも理解してないゆとりの時代の子供が > 無理にプログラマーの真似事をする必要はありません 吹いたw VBにしろAccessにしろ.NETにしろDelphiにしろNetBeansにしろ 思いっきり業務で使われている/いたわけだが…… パッケージソフトにしろ、ダイアログを作成するのにリソースエディタの一つも 使わないというのはあり得ない
- 912 名前:login:Penguin mailto:sage [2008/10/31(金) 13:27:24 ID:zn3zHzQB]
- GTKはかなり昔に少しやっただけなので黙っていたのだが、
gladeとRuby/GTKあたりでやるのが楽だと思うよ。
- 913 名前:login:Penguin mailto:sage [2008/10/31(金) 16:31:34 ID:NTOX3eWD]
- ちなみに
grade usamimi.info/~linux/d/up/up0282.png gradeでgtkmmとか面倒ならrubyとかpythonてのが成道な気がしないでもない。 どうしてもVBだろう、どうしてもVBっぽいのじゃなきゃダメって厨な君にはこんなのもある。 FPC+Lazarus usamimi.info/~linux/d/up/up0283.png Delphiクローンだな。(pascal) 残念ながらVBはない。当然だが。 素直におとなしくeclipse+javaでもやってて欲しい。
- 914 名前:login:Penguin mailto:sage [2008/10/31(金) 19:48:07 ID:BAdSZswW]
- つーかLinuxのGUIはWindowsかOSX遵守しろよ
違法コピーOSのくせに
- 915 名前:login:Penguin mailto:sage [2008/10/31(金) 20:23:23 ID:BAGbDsrX]
- イミフ
- 916 名前:login:Penguin mailto:sage [2008/10/31(金) 21:04:14 ID:SNC34/H2]
- アプリケーション間でショートカットキーくらいは統一してほしいところ
あとウィンドウマネージャはクリップボードの機能をもっと強化すべき WindowsやMacOSはそういうところが尋常じゃなくしっかりしてる
- 917 名前:login:Penguin mailto:sage [2008/10/31(金) 21:52:10 ID:NTOX3eWD]
- すでに文句言うために文句言ってるというw
- 918 名前:login:Penguin mailto:sage [2008/10/31(金) 22:33:57 ID:rGwLY2DF]
- >>911
パッケージで堂々とRADとはサスガですね?
- 919 名前:login:Penguin mailto:sage [2008/11/01(土) 00:07:00 ID:7aGvguWk]
- >>918
Windows自身VC++で作られてるわけだが
- 920 名前:login:Penguin mailto:sage [2008/11/01(土) 01:48:23 ID:DmScaBwx]
- それがなにか?
OS自身をRADで作るとでも? 私にはあなたがソリューション系の仕事を転々としてきた派遣の人に見えます 知ったかぶりは後々弱目になるので気をつけたほうがいいですよ?
- 921 名前:login:Penguin mailto:sage [2008/11/01(土) 02:05:41 ID:jzmmikh+]
- >>920
弱いものいじめはやめろ!
- 922 名前:login:Penguin mailto:sage [2008/11/01(土) 02:34:34 ID:7aGvguWk]
- 話が変な具合にねじれてるな
VC++をRADと定義するかどうかのズレか? 普通はVC++をRADとは言わんと思うが 知っての通りVC++にはリソースエディタがついており、 コードの自動生成やクラスライブラリとの連携機能があり、 VC++は事実上Windowsの標準開発環境として広く利用されているわけだが パッケージならむしろVC++を用いていないもののほうが稀だろ 無論kernelコードなら「リソースエディタ」なんぞは関係ない話だが 「Windows」というOSに関しては、GUIデスクトップ環境まで含まれるからな
- 923 名前:login:Penguin mailto:sage [2008/11/01(土) 05:55:37 ID:dSD0sBZG]
- 知らないものは当然のように馬鹿にする無教養な人間ってだけだろ。
カーネルとシェルとemacsとgdbだけで生きてる人間にGUIなんぞわからんよ。 デスクトップだけで生きてる人間がttyをわからんのと同じでね。
- 924 名前:login:Penguin mailto:sage [2008/11/01(土) 09:54:59 ID:DePXsKwk]
- すまんがここはプログラミングスレ。コードで語ってくれ。
グチやウンチク語りたいなら他所いってくれ。
- 925 名前:login:Penguin mailto:sage [2008/11/01(土) 10:16:34 ID:iBkJuz12]
- つまりLinuxではGUIプログラミングは無理なので
やめた方がいいということです
- 926 名前:login:Penguin mailto:sage [2008/11/01(土) 11:39:50 ID:DePXsKwk]
- そうそう君には無理だ、諦めてね。
- 927 名前:login:Penguin mailto:sage [2008/11/01(土) 12:53:44 ID:iBkJuz12]
- Linuxのプログラミングって宗教だよね
草加みたいできもい
- 928 名前:login:Penguin mailto:sage [2008/11/01(土) 14:25:18 ID:xlEaV2TM]
- 草加草加
- 929 名前:login:Penguin mailto:sage [2008/11/02(日) 12:58:36 ID:5tkGURGg]
- 結局wine入れてWin32API使うのが楽
すなわちWindows使うのが一番楽
- 930 名前:login:Penguin [2008/11/02(日) 13:46:53 ID:P/zWxESO]
- やっぱり
GUIエディタが弱いのと、 ライブラリごとにドキュメントが分散してることが linuxプログラミングの2大障害かなあ。 その点、.NETとかだと 普段linuxやってて知識0でもさくさくコーディングできる。 自分と逆の立場の人は大変だろうな。
- 931 名前:login:Penguin mailto:sage [2008/11/02(日) 13:53:32 ID:dpUTivXt]
- ドキュメント整備だけはマイクロソフトえらいと思うわ。
- 932 名前:login:Penguin mailto:sage [2008/11/02(日) 15:16:18 ID:OBdbkshV]
- やはりいいものはいいと認めるべきだな
ドキュメント整備からはじめよう
- 933 名前:login:Penguin [2008/11/02(日) 15:21:46 ID:J1BSkb6i]
- real programmerにドキュメントは必要ない。
ドキュメントが必要なプログラマはプログラマでは無い。 従って、M$プラットフォームを利用するプログラマはプログラマとは言えない。 Linuxプログラマこそが真のプログラマであり、唯一のプログラマである。
- 934 名前:login:Penguin mailto:sage [2008/11/02(日) 15:30:37 ID:tR7tCxCk]
- かんじーざいぼーさー
かんじーざいぼーさー かんじーざいぼーさー
- 935 名前:login:Penguin mailto:sage [2008/11/02(日) 16:45:59 ID:X530WAxg]
- real programmerにドキュメントは必要ない。
ドキュメントが必要なプログラマはプログラマでは無い。 従って、M$プラットフォームを利用するプログラマはプログラマとは言えない。 Linuxプログラマこそが真のプログラマであり、唯一のプログラマである。 こういうアホがいるのはLinuxだけなんだよなぁ
- 936 名前:login:Penguin mailto:sage [2008/11/02(日) 17:18:20 ID:8LwLmm0R]
- まだまだ、趣味でのんびり付き合える人向けだよね、Linuxは。
- 937 名前:login:Penguin mailto:sage [2008/11/02(日) 19:36:54 ID:Je+DXZ+s]
- >>935
この手の話題は、犬糞が出来る前から海胆糞業界では、 「ソース読め」で終了してたわけだが…
- 938 名前:login:Penguin mailto:sage [2008/11/02(日) 21:34:26 ID:OBdbkshV]
- >>937
今はそんなアホなこと言う人もだいぶ減ったよね だいたいソースコードは成果物であって仕様では無いんだが そこんとこわかって無い人多すぎ
- 939 名前:login:Penguin mailto:sage [2008/11/02(日) 23:52:34 ID:Brx7IrCw]
- ソースがドキュメントってのはハッカーの自虐ジョークなんだが
真に受ける馬鹿な素人が多すぎるんだよな Unixはベル研の昔からman整備してるしGNUもinfoがある 難を言えば、分かってる人間にしか読みこなせないあたりかね MSも事情はかわらんが、オンラインの検索能力がゴミなのと、 日本誤訳が問題を更に悪化させてるのがな・・ないよりマシだが
- 940 名前:login:Penguin mailto:sage [2008/11/03(月) 15:33:01 ID:Bwqrem+6]
- >>939
ここ数年のMSのドキュメントへの力の入れようはパネェよマジで。 「○○の翻訳おかしいぞ直せゴルァ」とメールすると翌週には直ってる。
- 941 名前:login:Penguin mailto:sage [2008/11/03(月) 20:26:32 ID:nh8VBUM4]
- >>938
仕様を仕様として確定するまではソースコードが正義だよ IETFあたりでは、いまだに………
- 942 名前:login:Penguin mailto:sage [2008/11/06(木) 01:14:42 ID:k9eRLDW1]
- >>941
IETFは「動かない仕様なんて意味が無い」と現実の動作を重んじてるだけで、 ただの一言も「ソースが仕様です。ソース嫁」なんてレベル低いことは言ってない。
- 943 名前:login:Penguin mailto:sage [2008/11/07(金) 07:26:54 ID:tYBykSxo]
- 仕様は先に決めるものだからなぁ。
ソースが仕様通りになっていないとバグになるわけなんだが、 ソースが仕様書だというと、おかしなことになる。
- 944 名前:login:Penguin mailto:sage [2008/11/07(金) 08:03:44 ID:StSVOsMY]
- 出来ちゃったバイナリが仕様書はよくあること
- 945 名前:login:Penguin mailto:sage [2008/11/07(金) 09:24:45 ID:vBU34iHj]
- オープンソースの醍醐味
- 946 名前:login:Penguin mailto:sage [2008/11/12(水) 01:14:39 ID:DnV7yufO]
- ptyにつながってるstdinて書き込んでも怒られんのですね。
しばらく悩んだ。
- 947 名前:login:Penguin [2008/11/15(土) 16:35:52 ID:FFNCNb8R]
- >>934
なんじゃそりゃ?
- 948 名前:login:Penguin [2008/11/15(土) 16:59:06 ID:szPmAnhd]
- 他にも「…従ってGDIプリンタは真のプリンタとは呼べず、PSプリンターのみが
唯一のプリンターである」とか「…従ってWinモデムは真のモデムとは呼べず…」 とか色んなバージョンがあったよね。 もちろんジョークじゃなくて本気なんだよw
- 949 名前:login:Penguin mailto:sage [2008/11/15(土) 21:45:43 ID:2pWVzft0]
- 次は、「ソフトウェア無線」は真の無線デバイスとは呼べず・・・か?
行き着くところはFPGAは真のチップとは呼べず、だな。
- 950 名前:login:Penguin [2008/11/16(日) 06:07:00 ID:m6bvpmnq]
- >>949
Linuxで動かない者の代表格といえば、最近では動画関連かね。 LDPの文書で真の動画とかあったっけ?
- 951 名前:login:Penguin mailto:sage [2008/11/22(土) 02:02:03 ID:L+j6rchq]
- LinuxでVRAM直書きってできますでしょうか?
- 952 名前:login:Penguin mailto:sage [2008/11/22(土) 02:16:52 ID:Dm8VSHjY]
- できる
- 953 名前:login:Penguin mailto:sage [2008/11/22(土) 18:46:07 ID:5NRRI6OS]
- Xwindowで特定のアプリケーションだけキーリピートOFFにできますか?
- 954 名前:login:Penguin [2008/11/25(火) 00:51:06 ID:pyfm2t6k]
- わざわざLinuxのプログラミングスレまできて
布教活動を行うWindows信者たちをみたとき
- 955 名前:login:Penguin mailto:sage [2008/11/25(火) 02:08:39 ID:z6DtBm5L]
- Windows信者はわざわざ布教する必要ないだろ。
あれだけ広まってるのだから。
- 956 名前:login:Penguin [2008/11/25(火) 03:41:10 ID:pyfm2t6k]
- それでもどこでもWindows賛美したがるのが
Windows信者の習性らしい Linux板まできてなにやってんだか
- 957 名前:login:Penguin mailto:sage [2008/11/25(火) 13:24:22 ID:rXHSEQCo]
- きっとM$ピラミッドのいちばん最下層で飯を食いつないでいる人でしょう。
彼らは必死なのです。分かって大目に見て上げましょう。
- 958 名前:login:Penguin mailto:sage [2008/11/25(火) 19:10:39 ID:J51efRsC]
- スレ違い
- 959 名前:login:Penguin mailto:sage [2008/11/27(木) 14:02:47 ID:0oeBKDV7]
- 史的唯物論によれば、歴史的事実からして、ルンペンプロレタリアートは反革命的利害の持ち主だったらしいです。
なぜなら彼らはブルジョアジーの利益のおこぼれにあずかって生き延びてきた社会階層であったからだそうです。
- 960 名前:login:Penguin mailto:sage [2008/11/27(木) 14:04:31 ID:0oeBKDV7]
- ごめん。ブルジョアジーではなくその時代の支配階層(その当時は貴族階層?)の間違いでした。
- 961 名前:login:Penguin mailto:sage [2008/12/02(火) 00:37:26 ID:aevZSzey]
- ラージページってどうやってとればいいのですか?
Kernel2.6.22ぐらいなら対応してそうだと思うのですが うーん
- 962 名前:login:Penguin mailto:sage [2008/12/02(火) 18:40:37 ID:/6v5cHNF]
- >>961
ラージページってヒュージページのことなのか? そうなら、Documentation/vm/hugetlbpage.txt に設定からサンプルコードまで載ってるけど。
- 963 名前:login:Penguin mailto:sage [2008/12/09(火) 05:10:44 ID:7UYxA9g8]
- >>930
Eclipseはけっこういいよ。
- 964 名前:login:Penguin mailto:sage [2008/12/09(火) 07:02:20 ID:oUX7FPuZ]
- Eclipse非常に良いんだが環境によっては重くて・・・
誰かC++かなんかで書き直してくれないかな。。
- 965 名前:login:Penguin mailto:sage [2008/12/09(火) 13:33:26 ID:zBRlTPr4]
- Objective-Cで
- 966 名前:login:Penguin mailto:age [2008/12/22(月) 00:10:53 ID:e1d/p3MW]
- unix domain socketで接続している相手のプロセスIDって取得できますか?
- 967 名前:login:Penguin mailto:sage [2008/12/25(木) 10:49:51 ID:tWCimKvF]
- >>966
回りくどいことすれば取得できる
- 968 名前:login:Penguin mailto:sage [2008/12/25(木) 11:37:27 ID:JoYrC3EW]
- ルートキット一発!
- 969 名前:966 mailto:sage [2008/12/25(木) 16:50:01 ID:YLVoSR1u]
- >>967
lsofみたいに/proc見るとか? 便利な関数はないと考えてよいでしょうか。
- 970 名前:login:Penguin mailto:sage [2008/12/26(金) 01:21:46 ID:J6rqLCsP]
- >>969
はい
- 971 名前:login:Penguin [2009/01/04(日) 15:13:41 ID:+pbzPaSy]
- デバッガのようなものを作っています。
ブレークポイントでブレークしたときに、デバッギプロセスのバックトレースを 取りたいのですが、これはどうやったら実現できるのでしょうか? 同一プロセスならば、glibのbacktrace関数で取得できることは分かっているのですが、 他プロセスに対応させる方法がわかりません。
- 972 名前:login:Penguin mailto:sage [2009/01/04(日) 15:40:40 ID:kuD2oS5t]
- >>971
GETREGSでspもらってきて、頑張ってそこからたぐる。
- 973 名前:login:Penguin mailto:sage [2009/01/04(日) 16:05:25 ID:+pbzPaSy]
- >>972
マジすか。フレームポインターの有無などを考えると、 逆汗が必須になるような気がするのですが、そういうものなのですか。
- 974 名前:login:Penguin mailto:sage [2009/01/04(日) 17:38:36 ID:XjZJ56+3]
- >>973
フレームポインタ云々より、逆汗無しのデバッガって…
- 975 名前:login:Penguin mailto:sage [2009/01/05(月) 02:47:28 ID:6ZtmY4qM]
- >>973
そういうのです。 デバッグ情報が使えればそこにスタックフレームの使われ方が書いてあるけど、 ダメなら力業で解析するしかない。 gdbにもそういうコードが入ってる。
- 976 名前:login:Penguin mailto:sage [2009/01/10(土) 09:29:17 ID:8wtLHioo]
- ユーザ空間で使えるspinlockって無いですか?
- 977 名前:login:Penguin mailto:sage [2009/01/13(火) 13:31:25 ID:UMzYTyeo]
- 自分でCAS(x86ならcmpxchg等)で実装する
- 978 名前:login:Penguin mailto:sage [2009/01/15(木) 00:43:11 ID:DlEX9Fn8]
- >>977
自由に使えるデータ構造もないし 全部自分で実装かぁ
- 979 名前:login:Penguin mailto:sage [2009/01/15(木) 11:32:08 ID:/IjFWv27]
- 単純なspinlockだけならint値と操作関数だけでよくね?
まあpthread_spin_lock使えば?
- 980 名前:login:Penguin mailto:sage [2009/01/16(金) 02:11:25 ID:ePdupyOX]
- そういえばpthread_rwlockってmutexより良い感じ?
|

|