1 名前:名無し募集中。。。 [05/01/15 02:18:37] UNIXおよびUNIX clone環境一般のプログラミングに関する質問スレッド 前スレ Part4 pc5.2ch.net/test/read.cgi/tech/1095843584/ Part3 pc5.2ch.net/test/read.cgi/tech/1085930894/ Part2 pc5.2ch.net/test/read.cgi/tech/1055110889/ Part1 pc2.2ch.net/tech/kako/992/992057422.html Part3のミラー makimo.to/2ch/pc5_tech/1085/1085930894.html Part2のミラー makimo.to/2ch/pc5_tech/1055/1055110889.html 関連スレ Cygwin使っている人いますか? その13 (UNIX板) pc5.2ch.net/test/read.cgi/unix/1099157755/ Cygwin使っている人いますか? 3 (Windows板) pc5.2ch.net/test/read.cgi/win/1090131123/ 関連板 pc5.2ch.net/unix/ pc5.2ch.net/linux/
803 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 00:54:40 ] >>798 ×エラッタ ○イレイタ ○エラータ
804 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 03:53:51 ] もはやカタカナ表記はエラッタでいいんじゃないの? UNIXをユニックスと書くやつはいてもユーニクスとは誰も書かないのと同じで。 803は現代日本で生きるのは大変そうだな。 明治時代なら好きな読みを押し付けられたのに。
805 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 03:59:28 ] >>804 はアイロンとか使えないんだよ。
806 名前:デフォルトの名無しさん [2005/05/02(月) 04:20:02 ] 急速にスレの質が低下してまいりました
807 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 19:52:24 ] いや、最初からこんな感じだったよ
808 名前:デフォルトの名無しさん mailto:sage [2005/05/02(月) 19:56:03 ] バケラッタ
809 名前:デフォルトの名無しさん [2005/05/04(水) 16:07:05 ] c++(gcc)での実行ファイル名(つまり自分自身のファイル名)の取得方法を教えてください
810 名前:デフォルトの名無しさん mailto:sage [2005/05/04(水) 16:07:46 ] argv[0]
811 名前:デフォルトの名無しさん mailto:sage [2005/05/04(水) 16:12:01 ] このスレにあったような。
812 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 23:01:54 ] 質問です。 fork/execして生まれた子が親の死を感知する方法で一般的な 方法はあるのでしょうか?(initに引き取られると困る) 調べると「システムによってはSIGHUPが...」とかという記述で 一般的な方法は見つかりませんでした。 もちろん、「そんな親プログラムを作るな」というのは承知しているのですが...
813 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 23:17:20 ] ないんじゃないでしょうか。 どうしても知りたければお爺さんプロセスから教えてもらうようにするとか。 ちなみにSIGHUPは親プロセスの死とは直接関係ないですよ。
814 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 23:38:01 ] ncursesを使ったソースでなるべくシンプルなものってないでしょうか お手本にしたいのですが
815 名前:デフォルトの名無しさん mailto:sage [2005/05/05(木) 23:43:53 ] $ cd ncurses-5.4/test $ ls Makefile.in README aclocal.m4 background.c blue.c bs.6 bs.c cardfile.c cardfile.dat color_set.c configure* configure.in demo_defkey.c demo_forms.c demo_keyok.c demo_menus.c demo_panels.c ditto.c dots.c edit_field.c edit_field.h filter.c firework.c firstlast.c gdc.6 gdc.c hanoi.c hashtest.c ins_wide.c inserts.c keynames.c knight.c listused.sh* lrtest.c modules ncurses.c ncurses_tst.hin newdemo.c railroad.c rain.c tclock.c test.priv.h testaddch.c testcurs.c testscanw.c tracemunch* view.c worm.c xmas.c
816 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 00:17:10 ] >>812 親のみが書き手、子が読み手のpipeを用意する。 親が死んだら子によるread(2)の返り値が0になるはず。 とか。一般的かどうかは知らない。
817 名前:812 [2005/05/06(金) 00:35:30 ] >>813 >>816 レスありがとうございます。やはり一般的な方法はないですか・・・ パイプとかPID監視とかの代替案を使うことにします。
818 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 01:09:12 ] >>812 > (initに引き取られると困る) ここが引っ掛かっていてスルーしていたんだけど、 これどういう意味なの? 何が困るの? pollingでいいなら、IPCのセマフォ使うとか。
819 名前:デフォルトの名無しさん [2005/05/06(金) 01:17:25 ] p231.net220148094.tnc.ne.jp/ wwwwwwっwwwwwwっうぇwwwwwwwwwwww wwwうぇwwwうはっwwwっ おkwww wwwwwwwwwwwwwwwwwwwwwwwwwwwwww
820 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 03:26:12 ] >>812 kqueue/keventがあるOSなら任意のpidのexitしたのがわかる。
821 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 06:08:03 ] >>812 適当にシグナル投げてみるとかは?
822 名前:デフォルトの名無しさん mailto:sage [2005/05/06(金) 06:24:26 ] >>821 能動的にアクション起こしていいんなら getppid()!=1 で十分だろう
823 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 02:48:42 ] wchar_t wb[] = L"ほげ"; printf("%S",wb); や wchar_t wb[20]; initscr(); getn_wstr(wb, 20); printw("%S",wb); は問題なし wchar_t wb[] = L"ほげ"; initscr(); printw("%S",wb); は ^[$B$[$2^[(B こんな風に表示されてしまう setlocale(LC_ALL, "");してみても変化無し 何が足りないんでしょう
824 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 03:05:39 ] シェルで日本語出すように設定してないだけじゃねーの?
825 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 07:14:54 ] 出力はISO-2022-JPに見える。 ターミナルのlocaleはそれでいいのか?
826 名前:デフォルトの名無しさん mailto:sage [2005/05/07(土) 18:29:50 ] >>822 getppidなんてはじめて知った おくがふかいなぁ
827 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 07:09:50 ] プロセス間でデータをやりとりするにはどうしたらよいのでしょうか? WindowsにおけるWM_COPYDATAのような方法を探しているのですが。
828 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 08:35:35 ] 親子、あるいは親戚関係にあればpipe(2)、 そうでなければmmap(2)、IPC共有メモリなど。
829 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 16:03:44 ] Xwindowで動作するプログラムを作りたいのですが、どこから勉強していけばよいのでしょうか? C++でコマンドラインプログラムは書けます。
830 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 17:30:24 ] 今さらXlibでもあるまいから、まずは使うGUIツールキットを決めなされ。 多分GTK+かQtのどちらかになると思うけど。決まったらそのスレへgo!
831 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 20:00:24 ] widestudio とかもあるよ
832 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 20:02:45 ] 最近良く見かけるが、WideStudio の中の人は 2ch で宣伝する方針なのか?
833 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 20:26:28 ] Motifを忘れているよ。 UNIXなら標準だし、ついでにXlibにも詳しくなる。
834 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 20:30:23 ] いつのまに標準になってたのか
835 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 20:46:32 ] Motifはどさ回りの仕事量が増えるけどねぇ。 ツールキットとしては古くて資料も色々あるけど。 それにしても、関数名が長いし。 #XmToggleButtonGadgetGetState()とかw
836 名前:デフォルトの名無しさん mailto:sage [2005/05/10(火) 20:59:48 ] >>833 >ついでにXlibにも詳しくなる。 詳しくないと使えないっつーか だから避けられるんだっつーか …折れ線グラフひとつ書くのも一苦労でしたよ、ええ。
837 名前:デフォルトの名無しさん mailto:sage [2005/05/11(水) 00:27:26 ] C++だからQtかgtk--のどちらかだろう。 俺としてはmoc拡張の必要のないgtk--を推奨。 www.geocities.com/SiliconValley/Vista/7184/guitool.html ↑を眺めてみるのもよし
838 名前:デフォルトの名無しさん mailto:sage [2005/05/12(木) 23:46:19 ] おれならまずXでGUIアプリなんて作らないな
839 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 03:01:37 ] あるプロセスIDのプログラムが実行中かそれとももう終了したのかを確認するにはどうしたらよいのでしょうか?
840 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 03:31:32 ] 詳解Unixプログラミングを読むのが一番早い。
841 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 04:19:01 ] それくらいならFAQにも出てたと思う。
842 名前:839 mailto:sage [2005/05/14(土) 04:48:27 ] /procディレクトリの中のPIDと同じファイルが存在すれば、実行中であると判断しても問題ないでしょうか? 実行が終了すれば必ず消えるものなのでしょうか?
843 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 06:18:25 ] kill 839
844 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 06:20:14 ] >>839 kill(pid, 0)
845 名前:デフォルトの名無しさん mailto:sage FAQ読め、書いてあるから [2005/05/14(土) 06:20:43 ] 間違えた。 kill(839, 0)
846 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 06:36:23 ] まあ、FAQによれば killよりも/procの方が確実に判定できるケースがあるとのことだから そのやり方について聞いているんだろう。 実装(環境)依存としか答えようがなさそうだけど。 関係ないけど、「実行中である」という確実な判定は不可能だな。 なんらかの呼び出しから制御が戻る前に終了する可能性がある。 PIDの唯一性(再割り当てされないこと)が保証されていれば 「終了した」ということは判定できるだろうけど。
847 名前:デフォルトの名無しさん [2005/05/14(土) 06:39:19 ] fork() 関数で子プロセスを生成しました。 親プロセスは、一秒に一回ぐらいの間隔で、子プロセスが終了してるかどうかを確認したいのです。 その間、親では while(1){ 子プロセスの終了してるか監視 終了してれば、処理を抜ける メータ表示 } などのプログラムを動かしたいと思っています。 いろいろ調べたんですがwait()関数なるものが子プロセス終了まで待ちつづけるというものでしたので、子プロセスが動いている間 メータを動かすという処理が出来ませんでした。 子プロセスは、system関数で、別のプログラムを実行しています。 その間、親プロセスで、メータを増やす処理をしたいのですが、子プロセスが終了?してるか調べるwait関数に変わるものは何かあるのでしょうか? ps -aux で確認したところ、子プロセスの処理が終わったらゾンビプロセスになってました;
848 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 06:56:45 ] おまえはタイトルも>>1 も読まないだけでなく 最近の10レスも読まないのな
849 名前:デフォルトの名無しさん [2005/05/14(土) 07:41:43 ] >848 別のスレでもご迷惑をかけました 勝手に書き込んで荒らしてしまって、 すみませんでした自分で調べてみます。 申し訳ありませんでした。 >おまえはタイトルも>>1 も読まないだけでなく >最近の10レスも読まないのな これからは、すべて読んでから書き込みます。 すいませんでした。
850 名前:デフォルトの名無しさん [2005/05/14(土) 07:43:25 ] なんで伝統伝説のUNIX板に聞かないの?
851 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 08:16:29 ] UNIX板気持ち悪いので
852 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 09:54:10 ] >>847 wait3(2)かwait4(2)で、WNOHANG
853 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 13:02:59 ] busy loopなんかするな馬鹿
854 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 21:11:45 ] >>847 なんだそれは?その子プロセスは直接の子では無いではないか。 素直にAPUEを嫁
855 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 21:15:06 ] メータって。プログレスバーじゃねぇの?
856 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 22:40:27 ] sleepをミリ秒単位で実行する方法を教えてください
857 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 22:59:42 ] >>856 usleep
858 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 23:03:30 ] >>857 ありがとう
859 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 23:09:50 ] >>856 nanosleep
860 名前:デフォルトの名無しさん mailto:sage [2005/05/14(土) 23:57:59 ] select
861 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 11:17:57 ] 社のUNIX遣いの口癖が「だからぁ、子を先に殺すんだよw」なんです。いつも半笑いで。 通報したほうがいいですか?
862 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 12:15:06 ] つまらん。勝手にすれば。
863 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 13:05:55 ] あひゃひゃ
864 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 13:33:11 ] CPUの個数を取得する方法を教えてください
865 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 15:41:24 ] ケースの蓋を開けて目視で確認してください
866 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 15:52:40 ] 最近は目視じゃ不十分だな
867 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 15:54:26 ] BSD系だと sysctl でわかったりする。 Linuxは知らないけど /proc の下あたりになんかあるんじゃ? いずれにしても移植性はないと思う。
868 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 16:58:19 BE:50674853- ] /proc/cpuinfo
869 名前:デフォルトの名無しさん mailto:sage [2005/05/15(日) 17:16:43 ] HTだとわからんな
870 名前:デフォルトの名無しさん mailto:sage [2005/05/16(月) 01:38:20 ] HTでも/proc/cpuinfoに出るぞ
871 名前:デフォルトの名無しさん mailto:sage [2005/05/16(月) 02:05:21 ] UNIXでWindowsのDLLの動的ロードのようなことはどのようにやるのでしょうか?
872 名前:デフォルトの名無しさん mailto:sage [2005/05/16(月) 02:13:11 ] >>871 dlopenとかの事?
873 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 02:49:38 ] UNIXでWindowsのDLLのDllMainのようなことはどのようにやるのでしょうか?
874 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 02:52:05 ] どういう挙動を望んでいるのかをなぜ自分で説明しないのだろうか?
875 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 07:14:10 ] man dlopenすれば馬鹿でも分かるように書いてある。
876 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 07:33:33 ] dll自体はどのように書けばよいのでしょうか?
877 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:04:37 ] www.linux.or.jp/JM/html/LDP_man-pages/man3/dlopen.3.html
878 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:07:35 ] www.linux.or.jp/JF/JFdocs/Program-Library-HOWTO/index.html
879 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:18:47 ] リンクをはるだけならバカでもできますが何か。
880 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 08:29:00 ] おー、ここから来たのかと思っちゃったよ。 ex10.2ch.net/test/read.cgi/news4vip/1116266649/
881 名前:デフォルトの名無しさん mailto:sage [2005/05/17(火) 23:47:58 ] ↑典型的なUNIX脳
882 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 10:48:05 ] CPU使用率の取得方法を教えてください
883 名前:デフォルトの名無しさん [2005/05/18(水) 14:57:59 ] >>882 getloadavg(3)
884 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 15:01:00 ] sshでリモートコンピュータにログインして、コマンドを実行するにはどのようにしたらよいのでしょう?
885 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 15:08:33 ] >>882 使っているCPUの数 ÷ 所有しているCPUの数 × 100
886 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 16:30:45 ] >>883 どうやってそういうの見つけるの?
887 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 16:33:08 ] >>886 経験を積む
888 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 17:39:04 ] マニュアルを読む。 kmem, /proc関係 $ cat /proc/loadavg
889 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 20:29:09 ] getloadavgは一部のOSにしか実装されていないはず。 HP-UXだったら、pstat(2)(pstat_getdynamic(2)だったかな)。 Tru64 UNIXだったら、table(2)。
890 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 21:37:02 ] >>886 header を grep すれば大抵ポインタが見つかる
891 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 22:41:24 ] コマンド名もわからないのにヒットするわけねーじゃんヴォケ
892 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 22:47:00 ] 何のコマンド名だよ
893 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 22:57:33 ] Excelの表を印刷するコマンドありますか?
894 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 22:59:47 ] Mac かな? 要件が良く分からんが、スレチガイかと
895 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 23:45:45 ] >>886 同じことを実現しているコマンドを探すor思い出す→wとかuptime→ wのソースを見る→該当部分を探す→getloadavg発見→manで確認 >>889 どうせこんなくだらない質問するやつは犬厨あたりだろうから getloadavgが無いシステムのことは考えなかった。補足サンクスコ
896 名前:デフォルトの名無しさん mailto:sage [2005/05/18(水) 23:54:54 ] 使用環境によって発想が変わって来るようだね
897 名前:? [2005/05/18(水) 23:59:55 ] ソースはイカリ
898 名前:ヽ(´ー`)ノ ◆.ogCuANUcE mailto:sage [2005/05/19(木) 00:01:41 ] >>886 $ man -k 'load average' getloadavg (3) - get system load averages # (゚Д゚)! tload (1) - graphic representation of system load average xload (1x) - system load average display for X
899 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 01:11:50 ] load averageってCPU使用率のことだったんだ ふーん
900 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 02:23:37 ] wcolor_set()で背景色と文字の色をセットしても再描画した部分しか適用されないみたいなんですが うまく背景色で塗りつぶす方法って何かないでしょうか?
901 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 02:42:57 ] man redrawwin
902 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 08:00:00 ] redrawwinしてからリフレッシュしても文字を表示してる部分しか背景色が変わらないです やり方がまずいんでしょうか
903 名前:デフォルトの名無しさん mailto:sage [2005/05/19(木) 09:27:27 ] man touchwin