[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 09:49 / Filesize : 207 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

UNIXプログラミング質問すれ Part6



1 名前:デフォルトの名無しさん mailto:sage [2005/05/24(火) 13:14:50 ]
UNIXおよびUNIX clone環境一般のプログラミングに関する質問スレッド

前スレ
Part5 pc8.2ch.net/test/read.cgi/tech/1105723117/
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使っている人いますか? その14 (UNIX板)
pc8.2ch.net/test/read.cgi/unix/1107587275/
Cygwin使っている人いますか? 3 (Windows板)
pc8.2ch.net/test/read.cgi/win/1090131123/


関連板
pc8.2ch.net/unix/
pc8.2ch.net/linux/

802 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 16:33:09 ]
>>801
プロセスって実行ファイルに結びついてるもんなの?

803 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 16:53:34 ]
>>802
forkしたプロセスを実行ファイルと結びついてると解釈できるかどうかによるな

804 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 16:55:54 ]
料理とレシピ

805 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 17:02:44 ]
クラスとインスタンスとか

806 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 20:43:59 ]
pid 1の実行ウファルって何?

807 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 20:48:40 ]
うちのに限って言えば /sbin/init

808 名前:デフォルトの名無しさん mailto:sage [2005/09/02(金) 23:44:58 ]
実行した後すぐ削除って出来る?
なんか怒られるときがあるけど

58.156.48.133/data/katsuaki/futarietti28/078.jpg

809 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 00:53:10 ]
↑ エロ注意

810 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 01:54:07 ]
>>808
Cygwinでなければunlinkによる削除はできる
上書きはEBUSYエラーでできない



811 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 01:57:59 ]
>>810は嘘

812 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 03:36:31 ]
>>808
削除(unlink)はできる。unlinkしてもディレクトリからウファル実体への
参照が消えるだけで、実行中プロセスがウファルを参照しているので、
ウファル実体はまだウファルシステムからは消えない。
実行プロセスが終了して他にそのウファルを参照しているプロセスも
なくなったら、ウファル実体は参照数ゼロになるので消滅する。

cp等による上書き(単にオープンして書き込む)はウファル実体を
変更することになるので、エラーになる。
(OSによってはエラーにならないが実行中のプロセスに致命的な結果を生じる)

ウファルをインストールするときにcpでなくinstallコマンドを使うのは
一つにはこのためで、まずunlinkしてからウファルを作成するようになっている。



813 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 08:51:21 ]
ウファルてなに?


814 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 09:15:56 ]
ウファル の検索結果 約 458 件中 1 - 10 件目 (0.39 秒)

白髪染めクリームらしい

815 名前:デフォルトの名無しさん [2005/09/03(土) 09:39:09 ]
あるテキストファイルを複数のプログラムから同時にアクセスする可能性があるのですが、ファイルロックの方法を教えてくだされ。
また、書き込みブロックされた際に、ロックが解放されるまで待つようにするにはどのようにするのがよいでしょうか?

816 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 09:40:29 ]
flock

817 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 09:50:47 ]
>>816
よりによってflockかよ…

lockf(3)かfctrl(2)を。
fctrlはF_GETLK, F_SETLK, F_SETLKW

818 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 09:54:06 ]
いっそファイル名を変えてしまえ。

819 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 10:22:14 ]
fctrl(笑)

820 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 10:31:28 ]
man 笑 fctrl



821 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 12:00:02 ]
fcuk

822 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 13:49:04 ]
>>812
サンクスコ

実行中でのウファルの振る舞いが完全理解できたよ

823 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 14:18:22 ]
完全に理解(笑)

824 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 14:24:28 ]
もはや(w)はなんとも思わなくなったけど、
逆に(笑)がけっこうムカツクことに気づいた。
時代は変わったということだな。

825 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 14:36:50 ]
そういえばpsで見える実行ウファルのパスはどうやって調べてるんだ?
argv[0]なの?

826 名前:デフォルトの名無しさん [2005/09/03(土) 14:38:43 ]
>>817
そうは言うが、ではしつこく残ってるflockの存在意義って何よ?

827 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 14:41:58 ]
>>826
backward compatiblityってやつじゃないの。

828 名前:デフォルトの名無しさん mailto:sage [2005/09/03(土) 18:54:51 ]
>>826
flock(2)は*BSDで独自の発展をとげているし、(4.2BSDの頃から仕様が変わっている)
POSIX等で標準化されてないから、OSを超えたポータビリティはないと思ってくれ。
ロックしたファイルをclose(2)したり、dup(2)したり、
プロセスが終了したり、fork(2)したり、execve(2)したりした時の振る舞い。

FreeBSDのマニュアルは、POSIX fcntl(2)のロックの意味を、
stupidと言っているが、標準であることの意味は大きい。
問題とされているところを、回避するような実装を行えばいいだけだから。
www.freebsd.org/cgi/man.cgi?query=fcntl&apropos=0&sektion=0&manpath=FreeBSD+4.5-RELEASE&format=html

FreeBSDはflock(2)がefficientであると言っているから、
#ifdef FreeBSD
#error "....."
#endif
なソースでflock(2)するのは、いい場合もあるんじゃないかと思うが。

829 名前:デフォルトの名無しさん mailto:sage [2005/09/04(日) 00:11:21 ]
fcntlの振る舞いは本当にstupidだと思う

830 名前:デフォルトの名無しさん mailto:sage [2005/09/04(日) 01:18:15 ]
なにそのunix会話



831 名前:デフォルトの名無しさん mailto:sage [2005/09/04(日) 08:41:32 ]
flock()はBSD系で、lockf()/fcntl()はSysV系
両方使える人は好きなほう使えばいいじゃん。ってことっしょ

832 名前:デフォルトの名無しさん mailto:sage [2005/09/04(日) 11:20:29 ]
BSDって、もしかしてUNIXの足引っ張ってる?

833 名前:デフォルトの名無しさん mailto:sage [2005/09/04(日) 12:20:24 ]
はい

834 名前:デフォルトの名無しさん mailto:sage [2005/09/04(日) 19:57:15 ]
はいじゃないが

835 名前:デフォルトの名無しさん mailto:sage [2005/09/05(月) 10:53:20 ]
>>832
唯我独尊&孤立無援状態

836 名前:デフォルトの名無しさん [2005/09/05(月) 15:07:32 ]
自分自身のnice値の取得方法を教えてください

837 名前:デフォルトの名無しさん mailto:sage [2005/09/05(月) 15:56:29 ]
getrusage(RUSAGE_SELF, &ru)

838 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 07:00:57 ]
www.linux.or.jp/JM/html/LDP_man-pages/man2/getrusage.2.html
これを見てみたのですが、どれがnice値に相当するのでしょうか?よろしくお願いします。

839 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 07:30:26 ]
人に教えれるほど知識無いけど
ググったらgetpriorityが見つかったけど違う?

840 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 08:35:10 ]
>>837は間違い。
>>839は正しい。



841 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 18:36:04 ]
調べしないででスミマセンが、ワードがまったく検討がつかないのでお願いします。。

普通Windowsアプリケーションは、
Win32APIやDirectXのAPI郡などのMSが提供している関数を用いて作ってるのですが。
主にFedoraCoreやVineではこれらと同じような、もしくは頑張れば表現可能なAPI郡は存在するのでしょうか?



842 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 18:39:24 ]
てかすぐ出てきちゃいましたΛllΛ

Gtk+なるSDKがあるのですね、、
ちと勉強してきます

843 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 20:23:35 ]
>>842

WindowsっていうOSは、ウィンドウシステムも含んでリリースされています。
でも、一般的にUNIX系のOSは、ウィンドウシステムは含まれていません。

使いたい人が使いたいウィンドウシステムを使えばいいという考え方です。
(とは言え、X以外のウィンドウシステムってあんまり聞きませんが。)

ゆえに、ウィンドウシステムに対するAPIも1つではなく、さまざまな種類が
存在しています。(XというウィンドウシステムのAPI:ツールキットも様々な
種類があります。)
Gtk+もその一つにすぎません。

と言うことを念頭においておかないと、せっかく覚えたのに、数年後には
だれもつかっていない過去の遺物となってしまうかも知れません。


844 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 20:37:07 ]
GTK+はダメだよ
Xtを使うのが普通

845 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 21:03:19 ]
gtk+で問題なし。ただ

> Win32APIやDirectXのAPI群

に相当するものではないけど。

846 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 21:21:33 ]
>>821
X自体がセキュリティもアクセラレータもなんもない地雷環境なので、
世にある窓マネージャは例外なくスナップショットの画像で誤魔化してます。
Gtk+もその1つで、実際の動作を見るとその醜さに驚かされるでしょう。

>>844
UNIXでGUIなんてダメだよ
Windowsを使うのが普通

847 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 21:27:53 ]
さくら、それを言っちゃあお仕舞いよ。

848 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 21:44:10 ]
GNUStep最強

849 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 21:57:05 ]
>>846
DRI じゃダメなのか?

850 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 21:58:29 ]
>>846
> X自体がセキュリティもアクセラレータもなんもない地雷環境なので、

無知蒙昧だな。




851 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 22:25:24 ]
そこでlg3dの出番ですよ。

852 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 22:39:55 ]
Xのセキュリティはxhost, xauthがあるし、
アクセラレーションなら MIT SHM拡張があるし

853 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 22:46:51 ]
xhostwwwwwwww


854 名前:デフォルトの名無しさん mailto:sage [2005/09/06(火) 22:53:13 ]
>>852
acceleration つったら普通は h/w acceleration じゃない?
↓ここが参考になるかも。

Xの描画が一番速いグラフィックカードってどれ?
pc8.2ch.net/test/read.cgi/linux/1005144431/

855 名前:デフォルトの名無しさん [2005/09/07(水) 01:54:38 ]
詳解UNIXプログラミングって本買ったんですけど、
C言語で組むのとどう違うのか、本質が理解できません。
目の覚めるようなご教授をお願いします。

なるほどー、というようなやつで。

856 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 02:00:03 ]
Cしたい

857 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 02:09:51 ]
>>855
おまえには無理

858 名前:デフォルトの名無しさん [2005/09/07(水) 02:12:34 ]
そういう受け答えは飽きたので、レスするのは本当の答えを知っている人だけで結構ですから。

859 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 02:15:09 ]
質問の意味が理解できないからそんな人はいないかと(笑)

860 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 02:41:17 ]
C言語云々は ANSI C のみでという事か?
自分の居場所を説明出来ないヤツに道案内するのはしんどいからパスだな。



861 名前:マイク ◆yrBrqfF1Ew mailto:sage [2005/09/07(水) 02:41:37 ]
ハードウェアは変更しづらいから
遅いけど変更しやすいソフトウェアがあるはずだが
そのソフトウェアに合わせてハードを選ぶのは本末転倒だよな?

862 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 03:38:01 ]
>>855
違わないと何か困るの?

>>861
日本語不自由なんだね。ちゃんと勉強しないと高校行けないよ。

863 名前:デフォルトの名無しさん [2005/09/07(水) 03:46:25 ]
ファイルがすでに存在するかどうかを確認するにはどのようにしたらよいのでしょうか?

864 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 03:50:35 ]
目視で確認すればいいだけじゃん

865 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 03:54:31 ]
ワロタ

866 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 04:06:25 ]
目視は疲れるからなあ。俺なら人に訊くね。

867 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 04:16:29 ]
プログラムからコマンド例えばlsを発行してその結果をプログラムに取り込む方法を教えてくだすれ

868 名前:マイク ◆yrBrqfF1Ew mailto:sage [2005/09/07(水) 04:26:50 ]
よく知らんがパイプとか標準出力等をdupったりすんじゃないのか。

869 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 04:27:55 ]
よくしらないのにレスするな

870 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 04:28:26 ]
system とか popen とか



871 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 04:51:03 ]
APUEをちゃんと嫁

872 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 04:58:20 ]
open(2)してみれば分かる。
なければ、エラーか、新規作成かは第二引数で選ぶことができる。


873 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 11:46:11 ]
>>867
よくしらんが、GUIならコピー&ペーストという手がある。

874 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 12:07:11 ]
>>873
どんなプログラム書けばいいんですか?

875 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 12:11:53 ]
teratermでログインすりゃログ取れるでしょ
それと同じようにすればいい

876 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 12:17:53 ]
>>875
詳しく

877 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 12:38:00 ]
結論:>>863 に見合った方法など ない

878 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:12:09 ]
>>877
いや、>>872だから。

>>867は、>>870のpopen(3)。


879 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:44:51 ]
UNIXはまともなファイラーがない時点でクライアントとして終わってる
emacs使ってるキモイ奴は困らないだろうけど
fdcloneの入ってない環境はクソ

880 名前:デフォルトの名無しさん [2005/09/07(水) 13:45:57 ]
>>879
ワラタ



881 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:47:03 ]
emacs持ち出すまでもなく、お好きなシェルでええやん(笑)

882 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:52:20 ]
>>881
おまえ、タイプ量考えろよ
おれはファイル選択はカーソルキー以外使いたくないの

883 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:57:23 ]
UNIXは唯一telnetとかでリモート操作できるのは評価してやるが
GUIはクソ
コピペもまともにできないXサーバーなんて入れるかっつーの
おれはteratermで十分
けどCUIのファイラーがfdcloneしかないのはマジでクソ

884 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:58:47 ]
>>883
ファイラって便利?

885 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 13:59:03 ]
シェルはDOSよりずっとまともなワイルドカード使えるし
正規表現つかえるツールもいっぱいあるやん。
肌に合わないなら無理してUnix使うなよ(笑)

886 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 14:02:00 ]
PIP.COMがないと話にならん。
今でも8インチ片単に入れて持ち歩いている。

887 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 14:03:39 ]
海胆糞板逝け

888 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 14:06:09 ]
うむ、PIPはけっこう良かった。

889 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 18:42:10 ]
>>882
指の本数足りない人は大変だね

890 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 21:23:50 ]
じゃぁ俺、秀吉。



891 名前:デフォルトの名無しさん mailto:sage [2005/09/07(水) 21:35:07 ]
>>890
大杉。

892 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 11:18:54 ]
vimのようにスクリーン全体を書き変えるようなプログラムの画面出力を得るにはどうしたらよいのでしょうか?

893 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 11:52:01 ]
vram上のデータをファイルに書きだせばいい。

894 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 11:55:49 ]
>>892
・画面のイメージが欲しい。
・画面全体を文字列として取得したい。
・vimの出力するコントロールシーケンスを取得した。
どれ?

895 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 12:17:45 ]
>>894
二番目か三番目です。そのへんも良くわからないもので…

896 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 12:20:00 ]
>>894
> ・画面全体を文字列として取得したい。

端末エミュレータでcut&paste

> ・vimの出力するコントロールシーケンスを取得した。

script(1)


897 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 12:21:02 ]
あれ? 自分の書いたプログラムで、
自分の書いた画面を知りたいと言うこと?
curses(3)を使って画面を書けばあ?

898 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 12:24:47 ]
>>896
おお、ありがとうございます!scriptを使ってみます。

899 名前:892=895=898 mailto:sage [2005/09/08(木) 12:27:09 ]
>>893
vramって何か分かりません…
>>897
自分の書いたプログラムから他のプログラムを呼びだして、その画面出力が得られないかと思ったのですが…。

900 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 12:30:59 ]
>>899
scriptはそういう使い方じゃないなあ。
cursesの方が良さそう。>>687>>683




901 名前:892 mailto:sage [2005/09/08(木) 12:40:48 ]
>>900
そうなんですか。。cursesで調べてみます。ありがとうございます!

902 名前:デフォルトの名無しさん mailto:sage [2005/09/08(木) 13:13:26 ]
>>901
騙されるなキミが調べるべきものは pty だ。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<207KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef