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


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

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



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/


267 名前:デフォルトの名無しさん mailto:sage [05/02/19 11:05:40 ]
>>266
今さら言い直しですかw
お 前 L v 低 す ぎ で す

268 名前:デフォルトの名無しさん mailto:sage [05/02/19 12:01:37 ]
>>262
うん、対応してるよ。
もっとも俺は RedHat のことを指して商用UNIX とは
呼ばないけどなあ。商用UNIXクローンと呼ぶならまあ
分かるけど。

269 名前:デフォルトの名無しさん mailto:sage [05/02/19 12:04:14 ]
「商用UNIX」の定義議論はスルーの方向で。

270 名前:デフォルトの名無しさん [05/02/19 12:27:53 ]
BSDのstruct procはLinuxだと何に相当するんですか?

271 名前:デフォルトの名無しさん mailto:sage [05/02/19 12:37:13 ]
商用UNIXってどういう定義なの?
MacOSXは商用UNIXに含まれますか?

272 名前:デフォルトの名無しさん mailto:sage [05/02/19 12:46:04 ]
板から言って、ユーザ空間から/proc関係をいじる時だよね?
libproc(procps)の<proc/readproc.h>にあるproc_t辺りでどう?

273 名前:デフォルトの名無しさん mailto:sage [05/02/19 12:57:15 ]
>>268
RedHatLinuxを商用と呼べない、というのには納得がいかないな。
事実上商用として使われているメジャーOSのひとつだろ。
単なるオープンソース寄せ集めじゃなくて、コードのメンテナが付いてて
しかも24時間サポートもやってるわけじゃん。その分カネもかかるけど。

これを商用UNIXと呼ばないで何を商用UNIXと呼ぶの?
まさかコードの由来がどうのとかツマンナイこと言わないよね?

274 名前:デフォルトの名無しさん mailto:sage [05/02/19 14:54:14 ]
プログラミングに関係ないことは他所でおねがいします。

275 名前:デフォルトの名無しさん [05/02/19 14:54:58 ]
>>271
売り物



276 名前:デフォルトの名無しさん [05/02/19 14:56:18 ]
>>273
268はUNIXと呼びたくないだけじゃないの?

277 名前:デフォルトの名無しさん mailto:sage [05/02/19 15:27:19 ]
lockingについては結局のところOS依存?

278 名前:デフォルトの名無しさん mailto:sage [05/02/19 15:59:55 ]
なわけねー

279 名前:デフォルトの名無しさん mailto:sage [05/02/19 16:14:08 ]
>>272
カーネル内のデータ構造体だとどれになりますか?

280 名前:デフォルトの名無しさん mailto:sage [05/02/19 16:21:38 ]
>>279
カーネル依存

281 名前:デフォルトの名無しさん mailto:sage [05/02/19 17:02:58 ]
struct task_structとstruct thread_infoってありますよね。

struct task_struct {
....
unsigned long flags; /* per process flags, defined below */

#define PF_ALIGNWARN0x00000001/* Print alignment warning msgs */
#define PF_STARTING0x00000002/* being created */
#define PF_EXITING0x00000004/* getting shut down */
#define PF_DEAD0x00000008/* Dead */

これってどういう意味ですか?
task_structってのはBSDのproc構造体とは違うんですか?

282 名前:デフォルトの名無しさん mailto:sage [05/02/19 18:16:00 ]
どのOSの話だよ。
まあ知ってはいるが、ちゃんと書け。バージョンもな。

あとここよりLinux板のカーネルなんちゃらスレの方が適切。


283 名前:デフォルトの名無しさん mailto:sage [05/02/20 06:17:43 ]
パーミッションをいじらないとmandatory lockをかけられないよな?

284 名前:デフォルトの名無しさん mailto:sage [05/02/20 15:49:27 ]
>>283
別に何の問題もないでしょ。
ファイルをロックする権限があるのに、パーミッションを変更
する権限がない状況なんてありえないんだから。

逆に、advisory と mandatory を切替えるのにプログラム側の
対処が全く必要ないっていうのは、大きなメリット。
開発サイドとはまったく関係なく、運用サイドだけで対応でき
るからね。


285 名前:デフォルトの名無しさん [05/02/20 20:32:46 ]
質問です。

fcntl (sock, F_SETOWN, getpid () );
fcntl (sock, F_SETFL, O_ASYNC);

でSIGIOを受けるようにした後で、
SIGIOが発生しないように、fcntlで設定をするにはどうしたらいいでしょうか?




286 名前:デフォルトの名無しさん mailto:sage [05/02/21 00:51:18 ]
O_ASYNC←→O_SYNC

287 名前:デフォルトの名無しさん [05/02/21 01:22:29 ]
>>286
ありがとうございました。

288 名前:デフォルトの名無しさん mailto:sage [05/02/21 10:41:42 ]
>>273
> これを商用UNIXと呼ばないで何を商用UNIXと呼ぶの?
RedHat が Open Group の conformance test 通ったら
商用 UNIX と呼んであげよう。


289 名前:デフォルトの名無しさん mailto:sage [05/02/21 10:57:14 ]
Linux is not Unix.

290 名前:デフォルトの名無しさん mailto:sage [05/02/21 11:08:50 ]
くだらね

291 名前:デフォルトの名無しさん mailto:sage [05/02/21 11:15:51 ]
>>290
チョー有名な再帰型定義だろ。今さら反応すんな。

292 名前:デフォルトの名無しさん mailto:sage [05/02/21 21:39:52 ]
>>288
それはcompatibleかどうかの定義であって
商用かどうかの定義とは異なるのでは?

293 名前:デフォルトの名無しさん mailto:sage [05/02/21 21:43:39 ]
商用Linuxという事でええやんか

294 名前:デフォルトの名無しさん mailto:sage [05/02/22 01:06:42 ]
だから商用UNIXというのはマシンとの抱き合わせ商法だってば
HP-UXとかSolarisとか
OSだけなんて商売にならねーって
M$でさえPCとのバンドルで儲けてるのに

295 名前:デフォルトの名無しさん mailto:sage [05/02/22 01:13:12 ]
だからさー、なんで抱き合わせだとかconoformance testに通ったかどうか
なんてのが「商用」になるのさ。
抱き合わせは、特定ハードウェア用の、という意味だろ?
全然商用と関係ないやん。



296 名前:デフォルトの名無しさん mailto:sage [05/02/22 01:13:34 ]
>>294
は?

297 名前:デフォルトの名無しさん mailto:sage [05/02/22 01:35:08 ]
>>295
だ〜か〜ら〜、「商用」の部分に文句をつけてる奴は
誰もいないんだってば。

「商用UNIX」ではなく「商用Linux」
OK?

298 名前:デフォルトの名無しさん mailto:sage [05/02/22 01:57:30 ]
は?商用UNIXという言葉の定義が不明瞭だという話では?

299 名前:デフォルトの名無しさん mailto:sage [05/02/22 03:49:24 ]
このスレのレベルが下がりつつあります。

300 名前:デフォルトの名無しさん mailto:sage [05/02/22 09:29:25 ]
>>292
通んなきゃ、少なくとも商標としての UNIX は名乗れんぞ。


301 名前:デフォルトの名無しさん mailto:sage [05/02/22 09:41:07 ]
Linuxのどのあたりがテストにひっかかるの?

302 名前:デフォルトの名無しさん mailto:sage [05/02/22 09:42:13 ]
そもそもLinuxはUNIXを名乗るつもりは毛頭無い

303 名前:デフォルトの名無しさん mailto:sage [05/02/22 10:46:15 ]
>>301
ttp://www.opengroup.org/ を自分で調べれ。

>>302
そらそうだ。


304 名前:デフォルトの名無しさん mailto:sage [05/02/22 11:42:37 ]
1 名前:名無し募集中。。。 投稿日:05/01/15 02:18:37
UNIXおよびUNIX clone環境一般のプログラミングに関する質問スレッド

305 名前:デフォルトの名無しさん mailto:sage [05/02/22 13:34:24 ]
UNIXと名乗るにはライセンシーが必要。
当然、金がかかる。



306 名前:デフォルトの名無しさん mailto:sage [05/02/22 13:46:31 ]
JEDIと名乗るにはライトセイバーが必要。
金がかかるかどうかは知らない。

307 名前:デフォルトの名無しさん mailto:sage [05/02/22 14:38:08 ]
Linuxってスレッドに別のアドレス空間を割り当てることもできるの?

308 名前:デフォルトの名無しさん mailto:sage [05/02/22 15:04:04 ]
それスレッドとは言わない。


309 名前:デフォルトの名無しさん mailto:sage [05/02/22 15:38:55 ]
それはスッドレだな。

310 名前:デフォルトの名無しさん mailto:sage [05/02/22 17:41:25 ]
別に不可能ではないだろう

311 名前:デフォルトの名無しさん mailto:sage [05/02/22 18:52:10 ]
UNIXにRead/WriteProcessMemoryみたいなのありませんか?
プロセスのメモリ覗きたい

312 名前:デフォルトの名無しさん mailto:sage [05/02/22 19:09:09 ]
よく分らんけどptraceとか?

313 名前:デフォルトの名無しさん mailto:sage [05/02/22 20:11:34 ]
それであってる。

314 名前:デフォルトの名無しさん [05/02/25 01:14:14 ]
314げっち

315 名前:デフォルトの名無しさん mailto:sage [05/02/25 01:41:10 ]
時間を指定して 指定時間後に
XCloseDisplay
exit
したいのですが、その指定時間までの間にもXNextEvent の処理を受けたいのですが
この場合は どのように書くのでしょうか?
XNextEvent をループでまわして そのループの中でtimeで計算して指定時間後に抜けようと思ったのですが
XNextEvent は、イベントが起きるまでそこで止まってしまうのでループでまわすことができません
すいませんが、教えていただけると幸です



316 名前:デフォルトの名無しさん mailto:sage [05/02/25 03:14:38 ]
>>315
イントリンシックスにタイマーなかったっけ?
それなら時間になれば勝手にコールバックが呼ばれると思うが。

317 名前:デフォルトの名無しさん mailto:sage [05/02/25 05:24:04 ]
XtAddInput() だな。Xt 使ってるならそれでOK。

Xlib しか使ってないなら ConnectionNumber() で
ファイルディスクリプタを求めて、poll(2) かな。


318 名前:317 mailto:sage [05/02/25 07:25:27 ]
なに寝惚けてるんだ俺は。
s/XtAddInput/XtAddTimeout/

319 名前:デフォルトの名無しさん mailto:sage [05/02/25 17:21:07 ]
>>282
2.6のkernel/fork.cのdo_fork関数とcopy_process関数を読んだら分りました。
しかしこのネーミングなんとかならないですかね。もう手遅れかな。

320 名前:デフォルトの名無しさん mailto:sage [05/02/25 19:47:09 ]
>>319
Hurdを待て

321 名前:315 mailto:sage [05/02/25 23:16:31 ]
>>317
ありがとうございます
Xtはつかっていず、 Xlibだけです
ConnectionNumberとpollを調べてみたのですが
プログラミングを始めたばかりでよくわかりません
poll の第3引数にタイムアウトまでの時間を指定すると
言うことしかわかりませんでした・・・
すいませんが、 簡単にサンプルを書いていただけませんでしょうか?
すいませんが、 よろしくおねがいします

322 名前:デフォルトの名無しさん mailto:sage [05/02/25 23:51:46 ]
>>321
っていうかググれ!

323 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:17:03 ]
俺、納品作業中で逃避したい気分だから答えちゃう。
たぶん、こんな感じ。


324 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:17:39 ]
*** piyo.c.org  Fri Feb 25 23:51:21 2005
--- piyo.c      Sat Feb 26 00:07:42 2005
***************
*** 1,6 ****
--- 1,10 ----
  #include <stdio.h>
  #include <X11/Xlib.h>
  #include <X11/Xutil.h>
+ #include <sys/types.h>
+ #include <poll.h>
+ #include <time.h>
+ #include <errno.h>
  
  #define STRING        "Hello, world"
  #define BORDER        1
***************
*** 49,54 ****
--- 53,59 ----
      XSizeHints xsh;
      char *geomSpec;
      XSetWindowAttributes xswa;
+     time_t deadline = 0;
  
      if ((dpy = XOpenDisplay(NULL)) == NULL) {
        fprintf(stderr, "%s: can't open %s\n", argv[0], XDisplayName(NULL));

325 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:18:49 ]
***************
      XMapWindow(dpy, win);
  
      for (;;) {
+       time_t now;
+       struct pollfd fd;
+       int rv;
+
+       if (deadline != 0 && !XPending(dpy)) {
+           time(&now);
+           if (deadline <= now)
+               break;
+           fd.fd = ConnectionNumber(dpy);
+           fd.events = POLLIN;
+           rv = poll(&fd, 1, (deadline - now) * 1000);
+           if (rv == -1) {
+               if (rv == EINTR)
+                   continue;
+               perror("poll");
+               exit(1);
+           }
+           if (rv == 0) /* timer expired */
+               break;
+       }
        XNextEvent(dpy, &event);




326 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:20:40 ]
deadline が 0 だったら終了しない。
deadline に、終了時刻 (UNIX Epoch からの秒数) を入れておくと、
そのタイミングで終わる。


327 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:28:51 ]
あ、すまんちょっと間違えた。
if (rv == EINTR)
は、
if (errno == EINTR)
が正しい。


328 名前:デフォルトの名無しさん mailto:sage [05/02/26 00:34:01 ]
piyo.cってなんだよww

329 名前:デフォルトの名無しさん mailto:sage [05/02/27 10:26:19 ]
しかも何故にpatchなのかw

330 名前:デフォルトの名無しさん mailto:sage [05/02/28 04:59:34 ]
セキュリティ対策です

331 名前:デフォルトの名無しさん mailto:sage [05/02/28 05:06:12 ]
ワロス

332 名前:117 = 124 mailto:sage [05/02/28 13:57:11 ]
>>325
for 分の、
(;;) ← が、なんかモサモサしててカワイー

333 名前:デフォルトの名無しさん mailto:sage [05/02/28 13:57:44 ]
↑ for 文の、

334 名前:デフォルトの名無しさん [05/03/01 09:26:59 ]


335 名前:デフォルトの名無しさん mailto:sage [05/03/01 16:53:14 ]
C, C++(gcc)で任意の文字コードをEUCやUTF-8に変換したいのですが,
良いライブラリがあったらお教えください。

ちょっと探してみたんですがシンプルで使いやすそうなのが見つかりませんでした。



336 名前:デフォルトの名無しさん mailto:sage [05/03/01 17:00:59 ]
www.gnu.org/software/libiconv/

337 名前:デフォルトの名無しさん mailto:sage [05/03/01 17:33:15 ]
ふつー、iconv(3C) くらいあるでしょ。

338 名前:デフォルトの名無しさん mailto:sage [05/03/01 17:39:49 ]
>336

iconvだと変換元の文字コードを指定しなきゃいけないですよね。
それは仕方ないのかな…
PerlのJcode.pmみたいにお手軽に使えるのはないんですかね?

sylpheedってMUAのソースにあるcodeconvあたりを流用するのが良いような気がしてるんですけど。

やっぱ定番はiconvなんですか?

339 名前:デフォルトの名無しさん mailto:sage [05/03/01 17:43:45 ]
iconv なんてよんでる?
私はあいこんぶ

340 名前:335 [05/03/01 17:47:07 ]
>>337
あります。

>>339
同じく"あいこんぶ"です。

酢昆布も好きです。

341 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:19:30 ]
>>338
あー、なるほど。自動判別「も」したい、と。
そういうのって、用途 (というか、入力がどこまで
限定できるか) に拠って全然違ってくるからねぇ…

342 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:35:36 ]
UNIXてどこで役に立つですか?
このスレよんでたら眠くなってきた。

343 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:41:13 ]
任意の文字コードの自動判別って可能なのかね?

344 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:44:02 ]
もちろん、完全にやるのは不可能。
文字コードを自動判別しないといけない時点で負け。


345 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:44:52 ]
>>342
なんか最近は自作自演で回ってるみたい。
俺も眠たくなってきた。



346 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:45:41 ]
nkf

347 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:49:49 ]
ELFフォーマットってUNIX共通ですか?
実行ファイルに細工したいので
UNIXの実行ファイルのフォーマットを教えてください。

348 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:53:34 ]
1年くらい前にも見たな。ウィルスでも作るのか?

349 名前:デフォルトの名無しさん mailto:sage [05/03/01 18:55:37 ]
Windowsのリソースの真似事がしたいのです。
わかりますか?リソース

350 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:00:04 ]
過去ログでsharとか言ってた人がいますが、
セキュリティの減ったくれもないので使いたくありません。
WindowsでいうPEへのセクション追加ぐらいの手間で解決したいのです。

351 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:01:33 ]
アーキテクチャに依存しないデータは、あまりバイナリの中には入れないよねUNIXの場合。

352 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:03:07 ]
コメント領域があったと思うけど勝手に使えば

353 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:04:59 ]
こたえる気がないなら答えなきゃいいのに。

354 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:05:58 ]
>>349
リンカでつなげば?

355 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:07:58 ]
>>354
何言ってんの?このタコは



356 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:11:10 ]
リソースってようするに初期済みのデータだろ?

357 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:18:15 ]
>>351
だから何ですか?
一般論を聞きたいのではなく、
入れたい場合が出てきたということです。

>>352
詳しく教えてください。

>>354
リンカでどうやって繋ぐのでしょうか?

>>356
初期済みのデータが初期化済みデータのことならその通りです。

358 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:31:03 ]
そういえばX Windowってリソース管理どうなってんの?
アイコンとかって外部ファイル?
もしかしていちいちパス指定で取ってきてる?
パス管理複雑にならない?

359 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:31:28 ]
Cで初期化された大域変数をリンクするのと同じということでは?
ELFの話はLinkers & Loadersていう本にそれなりに載ってる気がする。



360 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:31:52 ]
X or X Window System

361 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:38:33 ]
つまんねー揚げ足すんなよ
おまえ、つまんねー奴って言われるだろ

362 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:39:22 ]
>>359
そういうことでしたら
既存の実行ファイルに対して追加したいので
リンカを使う方法は無理です。

363 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:40:35 ]
>>357
>だから何ですか?
漏れは351じゃないけど、別に多少関連した雑談や世間話くらいしても良いと思うんだけど・・・
質問と回答以外はスレ違い、っていう立場もあるのかもしれないけど。

>リンカでどうやって繋ぐのでしょうか?
テキトーなバイナリなりXMLなり文字列なりをソースとして、
const unsigned char appResourceHoge[] = { 0x11, 0x22, .............. };
みたいなソースファイルを出力するスクリプトなんかを使う。
Xのコードとか書いたことがあればイメージできると思う。
実行ファイルに細工したい(ソース無しでリソースだけ変更したい)って用途には向かない。

なんだから偉そうな質問者様に対してこんな返事しかできなくてごめんね。

364 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:40:43 ]
なあ、俺もUNIXでトロイ作りたいんだけど、
実行ファイルのフォーマット教えてくれよ

365 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:41:29 ]
>>362
ん?既存の実行ファイルを弄らないなら埋め込んでも意味ないだろ?
埋め込んだ上でそれを使うように修正しないと



366 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:41:56 ]
>>363
うわ、そんなことできるならはじめからやってるだよ

367 名前:デフォルトの名無しさん mailto:sage [05/03/01 19:42:53 ]
どうやらここのUNIX使い様はリソースって概念がわからんらしい






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

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

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