2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :unco ◆manko/yek. :2011/04/18(月) 17:06:36.77
UNIXおよびUNIX clone環境一般のプログラミングに関する質問スレッド 

前スレ 
Part9 http://hibari.2ch.net/test/read.cgi/tech/1205795434/
Part8 http://pc11.2ch.net/test/read.cgi/tech/1147946176/ 
Part7 http://pc8.2ch.net/test/read.cgi/tech/1127373405/ 
Part6 http://pc8.2ch.net/test/read.cgi/tech/1116908090/ 
Part5 http://pc8.2ch.net/test/read.cgi/tech/1105723117/ 
Part4 http://pc5.2ch.net/test/read.cgi/tech/1095843584/ 
Part3 http://pc5.2ch.net/test/read.cgi/tech/1085930894/ 
Part2 http://pc5.2ch.net/test/read.cgi/tech/1055110889/ 
Part1 http://pc2.2ch.net/tech/kako/992/992057422.html 


Part3のミラー 
http://makimo.to/2ch/pc5_tech/1085/1085930894.html 
Part2のミラー 
http://makimo.to/2ch/pc5_tech/1055/1055110889.html 

2 :デフォルトの名無しさん:2011/04/19(火) 17:01:07.44
2

3 : 忍法帖【Lv=11,xxxPT】 :2011/04/19(火) 19:17:34.89
CPU使用率を取得する方法を教えてください。

4 :デフォルトの名無しさん:2011/04/20(水) 02:18:25.36
>>3
Solaris なら kstat を使う

http://alexeremin.blogspot.com/2009_02_01_archive.html

5 : 忍法帖【Lv=11,xxxPT】 :2011/04/20(水) 04:09:18.29
>>4
早速の回答ありがとうございます。
Linuxの場合はどうすればよいのでしょうか?

6 :デフォルトの名無しさん:2011/04/20(水) 13:43:31.57
>>5
/proc/stat


7 :デフォルトの名無しさん:2011/04/25(月) 00:26:08.55
cursesで文字列でないワイド文字を1文字出力する関数を教えてください

8 :デフォルトの名無しさん:2011/04/25(月) 00:38:35.81
unix板にも、linux板にも、同じスレが有るんだな
これが


9 :デフォルトの名無しさん:2011/04/25(月) 12:19:13.04
>>7
ncursesのmanpageのncurseswの項目を読んでください。

10 : 忍法帖【Lv=16,xxxPT】 :2011/04/27(水) 17:45:17.96
>>6
早速の返信ありがとうございます。
そのファイルを読み込むと言うことでしょうか?
ファイルを開く操作は重い操作なので、できれば何か関数で取得できるとよいのですが

11 :デフォルトの名無しさん:2011/04/28(木) 01:20:58.11
お前が読め

12 :デフォルトの名無しさん:2011/05/04(水) 02:32:26.37
XLibを使ったプログラムを作ってるんだけど、
RootWindowでルートの画面を取得して縦横のサイズを見ると、
0になるんですが、スクリーンのサイズを取得する方法を教えて下さい。

13 :デフォルトの名無しさん:2011/05/04(水) 02:58:50.47
取得できました。

14 :デフォルトの名無しさん:2011/05/04(水) 17:26:56.21
どうやって?


15 :デフォルトの名無しさん:2011/05/05(木) 02:52:29.69
>>14
該当箇所を消してしまったので、覚えてませんが、XGetWindowAttributes
の引数にルートを渡すと、スクリーンのサイズが取得出来ました。

ところで、リモートのXにログインする方法を教えて下さい。
VNCモドキを作ってるのですが、そもそもXの認証を行う方法が分かりません。。

16 :デフォルトの名無しさん:2011/05/06(金) 12:55:34.62
xauth関連のコード読んで。
ただ独自接続管理ならsshのX forwardingを参考にしたほうがいいかもしれないが。

17 :デフォルトの名無しさん:2011/05/09(月) 20:23:31.51
>>16
XCBのソースを見ると書いてありますね。

18 :デフォルトの名無しさん:2011/05/11(水) 09:22:26.52
コマンドラインプログラムでタイマーを使って割り込み処理をする方法はありませんか?

19 :デフォルトの名無しさん:2011/05/11(水) 10:03:30.90
コマンドラインでプログラムできるシェルっていうと、N-BASICとかそっち方面ですかね。
UNIXには無いけど、インタラクティブなLL使えば出来るんじゃないかな。

20 :デフォルトの名無しさん:2011/05/11(水) 12:40:49.47
>>18

タイマーの関数自体、guiとかcuiとか関係ないと思うんだが


21 :デフォルトの名無しさん:2011/05/11(水) 17:36:07.11
alarm(3)

22 :デフォルトの名無しさん:2011/05/12(木) 22:29:01.57
libeventはやってるみたいだけど
libevとかもあるよね?
結局
select,poll,epoll,libent,libevどれがいいの?
でやっぱりサーバとしては、マルチスレッド使うよりいいわけ?

23 :デフォルトの名無しさん:2011/05/12(木) 22:45:58.40
今どきシングルコアしか使えないサーバプログラムなんて寂しいから、
シングルスレッドにするなら、クラスタリングの仕組みを用意して
負荷分散する等の余計な手間が必要になる様な・・・

一方、マルチスレッドで作っておけば、スレッド間のデータの受け渡しも
簡単だし、コンテクストスイッチも軽いし、プロセスの管理も簡単。
C の標準ライブラリにマルチスレッドの関数が入る時代だしね。

ただマルチプロセス前提なら、ノードを跨いだスケールアップを
狙えるのはメリットかも。

24 :デフォルトの名無しさん:2011/05/12(木) 23:17:46.96
>>23
ちょ、ちょっとまって。マルチスレッドを気に入ってるみたいだけど
ちょっとおまえのスキルを確認させて。
C10K問題のテキスト(英文でも訳文でもいいから)読んでみた?
最近(でもないか。)mixiがおちたmemcashedのとらぶる知ってる?
あ、そもそもmemcashedのlibeventのトラブルはしってる?
libeventとかのベンチマークテストとかやってみてるの?
スティーブンスンは読んだことあるよね?
「オンラインゲームを支える技術」は読んだ?あそこにかいてある内容はどう思う?

25 :デフォルトの名無しさん:2011/05/12(木) 23:25:56.05
>>24
何だか一行目から勘違いしてるみたいだけど、マジレスした方が良いの?

26 :デフォルトの名無しさん:2011/05/12(木) 23:49:30.80
>>23
> 一方、マルチスレッドで作っておけば、(略)
> コンテクストスイッチも軽いし、

pgr

27 :デフォルトの名無しさん:2011/05/12(木) 23:52:54.47
自分の意見も言えないのに突撃してくるのは鬱陶しいから勘弁してくれ
君は議論してるつもりかもしれないけど・・・

28 :デフォルトの名無しさん:2011/05/13(金) 02:28:56.84
>>25
遅くなりました。マジレスお願いいたします。

29 :デフォルトの名無しさん:2011/05/13(金) 20:04:57.12
>>28
結局マルチコアマシンに対応しないといけないから、
ロードバランシングする方法を考えておくか、
最初からマルチスレッドで作っておくしかないよ
という話なんだが・・・

>>22 が何のサーバを想定しているのか知らないけど、
例えばウェブサーバだとこんな感じかな?

nginx : load balancing + worker thread
lightty : multi process (http://redmine.lighttpd.net/wiki/1/Docs:MultiProcessor)
node.js : no feature => 普通はロードバランサーを手前に置くよね

至極普通の話をしているだけなのに >>24 みたいな人が
湧いてくるのが理解出来んわ。C10K って何十年前から
言われてると思ってるんだろうね。。。

30 :デフォルトの名無しさん:2011/05/13(金) 22:13:45.61
>>29
c10問題は知ってる口調だけど原文は読んだのか?
そこではマルチスレッドはもはやこの問題に対応できるように設計されてないとかいてあるだろうに。
そこでシングルスレッド、ノンブロッキング、イベントドリブンが今の潮流なんでしょ?

31 :デフォルトの名無しさん:2011/05/13(金) 22:19:05.81
そんな潮流はマルチコアプロセッサが登場する以前の話でしょ?

32 :デフォルトの名無しさん:2011/05/14(土) 00:36:46.15
>>31
http://smpl.seesaa.net/article/72182431.html


33 :デフォルトの名無しさん:2011/05/14(土) 00:41:49.31
>>32
それ、返事になってないし
結局、マルチコアとの相性については見なかった事にするか、マルチプロセスか
マルチスレッドかロードバランサーか、選ぶしか無いんですよ


それが今の潮流



34 :デフォルトの名無しさん:2011/05/14(土) 00:42:15.61
>>31
OSのマルチスレッドが一般化してからの一頃は1クライアントに1スレッドを
割り当てるサーバも多く書かれたが、C10Kの状況ではこのモデルは破綻する。大抵のOSは少なくとも以前はそのような非常に多数のスレッドを扱う状況を
あまり想定していなかった

35 :デフォルトの名無しさん:2011/05/14(土) 00:45:16.07
大抵の OS って Linux 2.2 とかだろ

36 :デフォルトの名無しさん:2011/05/14(土) 00:53:10.16
>>33
すごい自信だけど、実績があっていっている?それともお勉強しましたレベル。
実績があるならどんなサーバの実績でどのくらいのクライアントをさばいたか教えてください。

37 :デフォルトの名無しさん:2011/05/14(土) 00:53:53.81
>>36
you, go first.

38 :デフォルトの名無しさん:2011/05/14(土) 16:21:54.86
>>29
何も知らない人なんだなw

39 :デフォルトの名無しさん:2011/05/14(土) 17:42:16.31
かわいそうだからそっとしといてあげなよ


40 :デフォルトの名無しさん:2011/05/14(土) 17:42:54.82
かわいそうだからそっとしといてあげなよ


41 :デフォルトの名無しさん:2011/05/14(土) 19:38:50.22
過疎スレあげ

42 :デフォルトの名無しさん:2011/05/15(日) 03:06:26.86
わんわん

43 :デフォルトの名無しさん:2011/05/15(日) 18:15:10.31
かわいそうだからそっとしといてあげなよ

44 :デフォルトの名無しさん:2011/05/18(水) 05:01:47.06
計算が終了したら、Twitterに自動的にtweetするようにしたいのですが、一番簡単な方法を教えてください。

45 :デフォルトの名無しさん:2011/05/18(水) 07:18:45.84
何故ここに…?
TwitterだったらPHPとかPerlとかPythonとかRubyとかの
いわゆるWeb系言語のスレとか、それかWebProg辺りになるんじゃないのか…?

46 :デフォルトの名無しさん:2011/05/18(水) 09:20:05.10
>>45
UNIX上で動作するアプリケーションが終了したときに、Webアプリケーションにポストしたいんでしょ。
適当にググったら、こんなのでてきたぞ。
http://bazaar.launchpad.net/~gabrielcain/twitter-cmdline/trunk/files

47 :デフォルトの名無しさん:2011/05/18(水) 09:22:55.10
つうか、 command line twitter client でググったらぞろぞろでてきたぞ。
http://www.google.co.jp/search?q=command+line+twitter+client


48 :デフォルトの名無しさん:2011/05/18(水) 11:42:13.18
>>46
ああ、そういうことか
すまぬ>>45

49 :デフォルトの名無しさん:2011/05/19(木) 22:30:53.13
大容量のファイルに対して、read()システムコール:ssize_t read(int fdesc, void *buf, size_t nbytes)
をしてみた所、失敗してerrno=22(EINVAL)が返るのね。ちなみに、movファイルでサイズは7GBぐらい。

なんで失敗するのかご教授ください。

50 :デフォルトの名無しさん:2011/05/19(木) 22:38:59.90
どこの馬の骨かわからない奴に教授する気はない。

51 :デフォルトの名無しさん:2011/05/19(木) 23:49:56.04
そうだよな。どこのだれぐらい言わないとな

52 :デフォルトの名無しさん:2011/05/20(金) 01:26:59.39
>>49
教えて欲しければ、もう少し詳細に書けよ。
あと、man readくらいは読んだか?

53 :デフォルトの名無しさん:2011/05/20(金) 03:44:58.42
CPUの詳細情報は/proc/cpuで取得できますがGPUの詳細情報はどこで取得できるのでしょうか?

54 :デフォルトの名無しさん:2011/05/20(金) 06:45:35.26
popen/pclose系とシェルコマンドの連動(やりたいことは例えばls . | grep "hoge")で分かりやすいサイト(英語可)を教えてください。
言語は何でもいいですが、できればC言語ではなく、RubyやPythonで簡略化されたものがいいです。
ていうか、こういうCS以外の学科で教えなさそうな話は、本とかで勉強したほうがいいのでしょうか?

55 :デフォルトの名無しさん:2011/05/20(金) 09:21:56.15
>>49
引数渡し間違えてる。ファイルが大きすぎるとEFBIGになる。
>>53
/proc/cpuに相当する「詳細な」情報かどうかは分からないが、
/sys/devices/
の下でGPUの種類などは分かる。
lspci, lspci -nを参考にしてくれ。
>>54
http://docs.python.org/library/subprocess.html

56 :デフォルトの名無しさん:2011/05/29(日) 04:34:19.21
X Window Systemのアプリ作りたい
gccで作れるの?

57 :デフォルトの名無しさん:2011/05/29(日) 09:25:04.48
gcc 以前に、そんなこと聞いてる奴には難しいと思う。

58 :デフォルトの名無しさん:2011/05/29(日) 14:01:16.83
>>56
作れるよ

59 :デフォルトの名無しさん:2011/05/30(月) 02:39:39.57
>>57-58
レスありがとう
作れるけど難しいのか
やりがいがありそう

60 :デフォルトの名無しさん:2011/05/30(月) 09:37:06.71
どこまでも能天気な奴だ

61 :デフォルトの名無しさん:2011/05/30(月) 17:10:59.80
最初から簡単に作れる奴なんか居ない
誰でもHello Worldからステップアップするもんだ

62 :デフォルトの名無しさん:2011/05/30(月) 18:08:03.00
gnome javascriptだとこんなかんじ
http://git.gnome.org/browse/gjs/tree/examples/gtk.js

63 :デフォルトの名無しさん:2011/05/30(月) 19:48:16.75
誰も聞いてない


64 :デフォルトの名無しさん:2011/05/30(月) 20:11:42.38
>>62
へー、Gtk+ に JavaScript バインディングなんてあったんだ
見た感じ簡単そうで良さげだね

知らんかった

65 :デフォルトの名無しさん:2011/05/30(月) 20:32:05.96
>>62
gjs より、seed のほうが Gnome 標準っぽい。

66 :デフォルトの名無しさん:2011/05/30(月) 21:13:05.41
大して変わらない。まあ言語と元のAPIが同じだから当たり前だが。
http://git.gnome.org/browse/seed-examples/tree/gtktextview.js

67 :デフォルトの名無しさん:2011/06/09(木) 20:57:02.33
今日ブ○クオフいったら93年発行のXウィンドウプログラミング1って本が800円で売ってたから買うか迷ったけど買わなかった
ウィンドウマネージャの作り方とか載ってんのな
現状800円は高いお


68 :デフォルトの名無しさん:2011/06/10(金) 12:35:16.66
なんだブックオフか
伏せる意味あんのか馬鹿

69 :デフォルトの名無しさん:2011/06/10(金) 18:24:57.18
むしろこれは伏せてないw

70 :デフォルトの名無しさん:2011/06/10(金) 19:21:02.60
ubuntuとかエンドユーザ向けのlinux流行ってるとか言ってるわりにはunix向けアプリの作り方の本とか書店で全然見かけないな

71 :デフォルトの名無しさん:2011/06/10(金) 19:26:35.66
要するに、パソコンといえばBASIC、時代からMS-DOS時代に移行したような、
プログラミングなんかしない「エンドユーザ」に流行ってる、ということなんじゃ。

72 :デフォルトの名無しさん:2011/06/10(金) 19:29:03.25
Linuxなどで開発する人は、自力で調べちゃうし。

73 :デフォルトの名無しさん:2011/06/11(土) 00:58:34.80
xdmみたいなログインマネージャ作ってみたい

74 :デフォルトの名無しさん:2011/06/11(土) 01:37:13.72
どうぞ。

75 :デフォルトの名無しさん:2011/06/11(土) 04:42:17.51
ぶ[F7+Enter]まる[Space+Enter]おふ[Space+Enter]

マンドクセーw

76 :デフォルトの名無しさん:2011/06/14(火) 03:51:17.37
もしかしてJava使えばX用アプリ簡単に作れたりする?

77 :デフォルトの名無しさん:2011/06/14(火) 08:44:34.83
お前が簡単と感じるかどうかは別問題

78 :デフォルトの名無しさん:2011/06/14(火) 08:47:40.25
GUIアプリは作れる

Xプロトコルのプログラミングをしたいならおすすめしない

79 :デフォルトの名無しさん:2011/06/14(火) 09:30:53.53
>>76
最近一番簡単だと思うのは、GNOMEのJavascriptバインディング。
gjsってやつ。

80 :デフォルトの名無しさん:2011/06/14(火) 10:29:55.35
cとgladeでおk。

81 :デフォルトの名無しさん:2011/06/28(火) 17:54:14.11
まったくの初心者です
sygwinを使っているのですが
VC++で作った.slnファイルをsygwin上で実行するにはどうすればいいんでしょうか?
ちなみにプログラムにはMFCが使われています

82 :デフォルトの名無しさん:2011/06/28(火) 18:35:35.68
build.exe にパスを通す

83 :デフォルトの名無しさん:2011/07/07(木) 11:56:55.43
getopt() の、それ以上オプションが無いときの戻り値は何故 -1 なのでしょうか?
'\0' をオプションにすることって、たぶん無い…ですよね

84 :デフォルトの名無しさん:2011/07/07(木) 12:11:51.13
特別なケースは-1にすることがUNIXのAPIでは多いから。

85 :デフォルトの名無しさん:2011/07/07(木) 19:46:34.18
なるほど、他の関数と同じような仕様にしたんですね
ありがとうございました

86 :デフォルトの名無しさん:2011/07/08(金) 00:01:43.31
getchar()のEOFと似たループになるよね。


87 :デフォルトの名無しさん:2011/07/08(金) 23:41:22.04
>>83
>'\0' をオプションにすることって、たぶん無い…ですよね

多分無いと思うけど、制限は可能な限り少ない方がいいと思ったんじゃね。
利用者は、極まれに開発者が思いもよらない使い方することあるから。

88 :デフォルトの名無しさん:2011/07/09(土) 08:27:12.31
cutみたいにオプションでデリミタとかセパレータを指定できるコマンドを考慮してるとか?
普通に"\0"を渡せばヌル文字で解釈してくれそうだけど。

89 :デフォルトの名無しさん:2011/07/09(土) 11:55:58.84
確かに、そういったことも考慮すると使えるに越したことは無いかも知れないですね。参考になりました。

90 :デフォルトの名無しさん:2011/07/23(土) 19:36:04.77
SSHとかではなく、自分の作ったプログラムで認証したいんですが、
UNIXの認証の仕組み(何らかのシステムコールを呼ぶとか?)を教えて下さい

91 :デフォルトの名無しさん:2011/07/23(土) 20:02:15.87
authenticationとauthorizationのどっち?

92 :デフォルトの名無しさん:2011/07/23(土) 20:34:34.73
>>90
pamとnss

93 :デフォルトの名無しさん:2011/07/23(土) 21:47:55.56
キーボードってJISとUSどっちがいい?

94 :デフォルトの名無しさん:2011/07/23(土) 22:18:25.49
このみ

95 :デフォルトの名無しさん:2011/07/23(土) 23:02:31.00
>>92
ありがとう。

96 :デフォルトの名無しさん:2011/07/24(日) 04:26:40.76
>>93
自分にしっくり来るほう

97 :デフォルトの名無しさん:2011/08/09(火) 02:45:04.05
おいしいチャーシューの作り方を教えてください

98 :デフォルトの名無しさん:2011/08/09(火) 02:54:14.26
1. 髪を伸ばしてオールバックにする
2. 裸になり黒パンを履く
3. 相手に喧嘩を売って自分からキレる

99 :デフォルトの名無しさん:2011/08/09(火) 05:00:48.53
http://www.youtube.com/watch?v=BNmQdvq58BA

100 :デフォルトの名無しさん:2011/08/18(木) 19:43:09.42
Makefileで
a.h : b.h
みたいなのが書いてあるんですが、
これって何なんでしょう?

101 :デフォルトの名無しさん:2011/08/19(金) 00:04:32.05
どっかで見た質問だったと思ったらここか

102 :デフォルトの名無しさん:2011/08/31(水) 15:59:35.10
>>100
a.h は b.h に依存している
という意味です

103 :デフォルトの名無しさん:2011/09/17(土) 19:43:33.04
起動してから一定時間実行したら終了するプログラムは
どのように作るのが普通なんでしょうか?
実行する内容としては例えば1時間というパラメータを与えられて起動されたら
その間ファイルを開いて読み取って閉じて次のファイルを読み取って
という事を繰り返して1時間経ったら自ら終了する感じで。

104 :デフォルトの名無しさん:2011/09/17(土) 20:05:33.54
alarmしてSIGALRMのシグナルハンドリング。

105 :デフォルトの名無しさん:2011/09/17(土) 23:45:50.55
お手軽にループの中でtimeで現在時刻もらって指定時間時間経過したらそのループ抜けるとか


106 :デフォルトの名無しさん:2011/09/19(月) 02:40:53.70
unix初心者です。

リモートホストからローカルホストに戻るコマンドを教えてください。

ググってもわからなかったです。

プログラミング以前の問題で申し訳ないですが、
よろしくお願い致します。

107 :デフォルトの名無しさん:2011/09/19(月) 03:34:08.39
exit

108 :デフォルトの名無しさん:2011/09/19(月) 07:57:15.94
>>107
ありがとうございます。
助かりました。

109 :デフォルトの名無しさん:2011/09/19(月) 11:20:30.90
>>104-105
ありがとうございます。
結局その2つになってしまいますよね。
シグナルは確実に止まるけど1個しか使えないし、時刻を取得してというのはその間に実行する処理の量によっては時刻取得のオーバーヘッドがシャレにならんかったり指定した時刻からかなり遅れて終了したりとかありますよね?

110 :デフォルトの名無しさん:2011/09/19(月) 13:11:28.93
>>109
だから、(何にでも言えるが)汎用的な方法はない
対象に合わせて適切な方法を選ぶしかない

111 :デフォルトの名無しさん:2011/09/20(火) 12:17:05.97
>>109
外部からジョブを終了させるってことが、
システム、言語、環境に関わらず、
「本質的に」難しい仕事ってのは理解している?
スレッドを外から終了させるようなAPIが
全く推奨されてないのと同じ理由なんだけど。

112 :デフォルトの名無しさん:2011/09/20(火) 22:07:30.83
>>109
オーバヘッドを気にするならタイマ用のスレッドを作りなされ。
1時間寝てから通知すればよいでしょ。FD でも cond でも。


113 :デフォルトの名無しさん:2011/09/21(水) 02:14:03.87
つまらんことを気にする場合、大体はどうでもいい事にこだわっていると思う

RTOSじゃないしファイル読んでる時点で1sくらい普通にずれるべ


114 :デフォルトの名無しさん:2011/09/21(水) 19:04:06.30
1時間経ったらがなんで1時間キッチリにせんといかんのだ?

115 :デフォルトの名無しさん:2011/09/21(水) 21:39:51.69
109で
>時刻を取得してというのはその間に実行する処理の量によっては
>時刻取得のオーバーヘッドがシャレにならんかったり指定した時刻から
>かなり遅れて終了したり

とかゆってるからシビアな条件があるのだろう


116 :デフォルトの名無しさん:2011/09/22(木) 11:33:26.50
後始末のないworkerなら強制的に止めてしまえばいいし、
後始末が煩雑ならworker側でyeildするのがいい。


117 :デフォルトの名無しさん:2011/09/24(土) 01:49:26.29
SIG_DFLの時の動作がプロセス停止になっているシグナル(SIGTSTPとか)が
時々止まらないことがあるのはなんでだべ?

118 :デフォルトの名無しさん:2011/09/24(土) 02:00:46.48
>時刻取得のオーバーヘッドがシャレにならんかったり
ループの根元でやりゃ、負荷はバカにならんわな

お手軽にやったけど、何か解決方法はないかという
これ以上何も考えません的なところが素敵

119 :デフォルトの名無しさん:2011/09/24(土) 09:56:32.08
>>117
ブロックしている瞬間があるんじゃないの?

120 :デフォルトの名無しさん:2011/09/24(土) 12:24:20.07
>>110-118
ありがとうございます。

はい、現状は1時間を1本計れれば良いけど、それを1つのプロセスのままで複数の1時間を
スタートの時刻が異なっても計れるようにするには初めからどのような作り方をするべきかとか
1時間をまたいで読み取り中だったデータは捨てるのか全部入れるのか1時間ちょうどの部分で
切るのかとか、ちょっと基本的な点でアレ?とか思っちゃったのでちょっと質問してみた感じでした。

121 :デフォルトの名無しさん:2011/09/24(土) 12:38:38.47
最後の2行は新しい質問か?初耳だが、そんなのプログラムに要求されていることによるだろ。
どの挙動をすべきかなんて作ってる奴にしか分からん。

122 :デフォルトの名無しさん:2011/09/24(土) 13:05:38.56
最初の2行はお礼では。

123 :デフォルトの名無しさん:2011/09/24(土) 14:44:30.30
真ん中の二行は…てやかましいわ!

124 :デフォルトの名無しさん:2011/09/25(日) 02:55:22.61
wchar_tって使ってる人いる?

125 :デフォルトの名無しさん:2011/09/25(日) 19:21:08.09
canna以外で見たこと無いけど

126 :デフォルトの名無しさん:2011/09/25(日) 20:14:34.75
wchar_t をワッッチャァァァって発音したら、
職場の人間全員が ( ゚д゚) −> Σ( ゚д゚ ) になった

どうも _t を発音しなかったのがまずかったみたい

127 :デフォルトの名無しさん:2011/09/25(日) 20:51:03.99
あー・・・ なるほど・・・ 大事なところだもんな・・・

128 :デフォルトの名無しさん:2011/09/25(日) 21:27:03.89
だぶちゃーてー(!ティー)だよな。

129 :デフォルトの名無しさん:2011/09/25(日) 21:46:54.79
だっちゃ

130 :デフォルトの名無しさん:2011/09/26(月) 00:00:03.88
たしかLinuxとかは一文字4byteなんだよねwchar_t。いやだなあ

131 :デフォルトの名無しさん:2011/09/26(月) 01:49:00.47
なにいってんのこの人。ダサい。

132 :デフォルトの名無しさん:2011/09/28(水) 03:14:27.91
>>124
C++ では std::wstring を使ってプログラムを書けば無問題、
そんなふうに考えていた時期が、俺にもありました。

133 :デフォルトの名無しさん:2011/09/28(水) 10:04:03.97
VC++だと問題ないけどね。Unix系だと罠がいろいろとありそうな・・

134 :デフォルトの名無しさん:2011/09/28(水) 12:02:22.35
>>133
いまどきUnix系でプログラムしてる人は少数派だろ

135 :デフォルトの名無しさん:2011/09/28(水) 12:11:37.58
それをこのスレで言うかwww

136 :デフォルトの名無しさん:2011/09/28(水) 15:43:47.23
飛んで火に入る夏の虫

もう秋だぞ>>134

137 :デフォルトの名無しさん:2011/09/29(木) 11:43:22.93
AndroidやiOSはUNIX系かね?
古典的なAT&T由来のC APIではないけれど。

138 :デフォルトの名無しさん:2011/09/29(木) 12:00:16.75
全ての作業をWindows上でおこなうのは少数派かな

139 :デフォルトの名無しさん:2011/09/29(木) 18:32:55.72
iOSはしらんけどAndroidはnix系だな

140 :67:2011/10/04(火) 15:07:33.28
今日行ったら200円になってたから思い切って買った

141 :67:2011/10/08(土) 01:51:21.45
ちなみに書籍タイトル正確なのは Xアプリケーションプログラミング1 xlib編 92年発行の東工大の教授の本だ
19年も前の本だけど19年前から顔文字ってすでにあったのな
19年前って俺まだ小学校低学年だったからパソコンとかよく知らんかったけど
X11R5が出たばっかのころのらしい、今のに使えんのかな


142 :デフォルトの名無しさん:2011/10/08(土) 06:03:00.48
>>141
これ? http://www.amazon.co.jp/dp/4883170225/ なつかしい。

自分は当時大学生で、大学で何百万もするUNIXワークステーションを使って
サンプルとか打ち込んでたなあ。今なら安PC+Linuxでより快適にできる。
LAN経由で近くで作業している奴のディスプレイにイタズラの画面を出したり...

一般家庭はともかく大学にはインターネットの電子メールとかネットニュースとかが
既にあったし、顔文字とかAAも使われていた。www(草じゃないよ)が出てきた前後だな。
大学のマシンにサーバー立ち上げたっけ。エロのw 今ならマスコミ沙汰になって
退学処分か?

Xのプログラミングから離れて久しいのでアレだが、Xlibはあんまり変わってないんじゃ?
すなわち今でも使えるのでは。あえて今から低レベルなものを使ってプログラムを
書きたいのであれば...

143 :デフォルトの名無しさん:2011/10/08(土) 06:54:30.22
dwm, xmonadといったタイル型ウインドウマネージャや
dmenu, dzenなどのシンプルなランチャの流行もあって
今でもXLibプログラミングは熱いですお

144 :デフォルトの名無しさん:2011/10/08(土) 08:18:56.56
>>143
そうなんだー。
今dwmのソースをダウンロードしてみたらソースファイルが一つだけ...
こんなんでいいんだ。

サーバはXを使うとして、ウインドマネージャを自作するなんてのも面白そうだね。
ウィジェットとか言い始めると敷居が高いと思われるので...

145 :デフォルトの名無しさん:2011/10/08(土) 08:35:55.73
age

146 :デフォルトの名無しさん:2011/10/09(日) 01:44:52.52
この質問ここでいいのか分からないんだけど
↓のサイトのやりかたで、つまりcatコマンドからMakefileを作ろうとしたんだけど
gccの前のTABが入力できなくってcshでやってたんだけどTABが入力できないのってシェルの問題?
TAB入力できなくって変わりにスペース入れたらmakeがエラー出てググったらスペースじゃダメとか知らなかったよ

flags for compiling Xlib.h in gcc
http://www.linuxquestions.org/questions/programming-9/flags-for-compiling-xlib-h-in-gcc-333230/


147 :デフォルトの名無しさん:2011/10/09(日) 01:59:23.56
シェルスクリプト総合 その18
http://hibari.2ch.net/test/read.cgi/unix/1308195527/

148 :デフォルトの名無しさん:2011/10/09(日) 04:09:22.56
そのスレにcsh使いを誘導しないで欲しい
cshのmanのヒアドキュメントを読む。echoで書く。cshを捨てる(推奨)

149 :デフォルトの名無しさん:2011/10/09(日) 04:15:21.44
インタラクティブに使ってるなら
$ cat >Makefile
中身入力、改行
Ctrl+D

150 :デフォルトの名無しさん:2011/10/15(土) 00:10:57.09
Rob Pike曰く、Dennis Ritchieが亡くなったと。
https://plus.google.com/u/0/101960720994009339267/posts/ENuEDDYfvKP?hl=en

南無

151 :デフォルトの名無しさん:2011/10/15(土) 01:23:11.92
お悔やみ申し上げます

152 :デフォルトの名無しさん:2011/10/15(土) 18:28:21.23
          _____
  .ni 7    /        \  ご冥福をお祈りします
l^l | | l ,/) / /・\  /・\ \    .n
', U ! レ' / |    ̄ ̄    ̄ ̄  |  l^l.| | /)
/    〈  |    (_人_)    |  | U レ'//)
     ヽっ     \   |    /   ノ    /
 /´ ̄ ̄ ノ     \_|    \rニ    |
                      `ヽ   l

153 :デフォルトの名無しさん:2011/10/15(土) 20:21:34.20


154 :デフォルトの名無しさん:2011/10/15(土) 20:29:40.38
まちごた
まいいや

155 :デフォルトの名無しさん:2011/10/18(火) 17:07:46.91
>>70
ライセンスの問題とか絡むからじゃね?
無料で公開すべきものを本を買うとか金銭発生するし

156 :デフォルトの名無しさん:2011/10/19(水) 08:32:31.05
>>70
「unix向けアプリ」というのはたとえばGTK+とかでアプリを作るという事でいい?
いくつか本が出てたと思うけど。実際に本屋にないという意味?

157 :デフォルトの名無しさん:2011/10/19(水) 09:12:36.56
隣のおっさんうるさい

158 :デフォルトの名無しさん:2011/10/19(水) 12:42:25.99
じゃあ転職しろ

159 :デフォルトの名無しさん:2011/10/21(金) 13:03:48.22
>>156
普通はコマンドライン版を指すよ

160 :デフォルトの名無しさん:2011/10/21(金) 19:53:17.14
そんなこたーない。

161 :デフォルトの名無しさん:2011/10/21(金) 22:24:13.25
「コマンドラインアプリ」ってあんまり聞かないな


162 :デフォルトの名無しさん:2011/10/22(土) 02:07:40.32
cursesを使ったようなやつ?

163 :デフォルトの名無しさん:2011/10/22(土) 02:44:59.58
単にコマンドって言うもんね。

164 :デフォルトの名無しさん:2011/10/22(土) 03:01:48.61
Xアプリケーションプログラミング1 xlib編で書かれていたアプリケーションとは
不特定多数のユーザに使われることを前提として作られた,"汎用的で便利なプログラムのことをアプリケーションと呼ぶ" (引用 p.27 l.17~18)
だそうで
X用のプログラムは必然的にアプリケーションと呼ばれるだけの性質を持つそうです



165 :デフォルトの名無しさん:2011/10/22(土) 11:25:36.43
Ach, so.

166 :デフォルトの名無しさん:2011/10/22(土) 12:29:12.68
http://www.amazon.co.jp/dp/4883170225
これか? 20年も前の歴史的価値品ない骨董本引用して何が言いたいんだ? ジジイ。

167 :デフォルトの名無しさん:2011/10/22(土) 16:16:40.17
>>166
流れからすると>>67の発言みたいで、ジジイじゃないっぽいけどw

自分はたぶんジジイだがw X11のプログラミングの本で、これみたいに比較的
気楽なノリで始められる本はあまりなかったように記憶しているのだが。
何かいい本をご存知ですか?

そもそもXlibを使うこと自体が骨董に属するんだったりしてw
何か違うもの、たとえばOpenGLとかでやった方がいいのかな?

168 :デフォルトの名無しさん:2011/10/22(土) 16:49:58.99
大昔でもアプリ向けにはathenaとかmotifとか使ってたんでは。
あとOpenGLと比べるのもなにかおかしい気が。

169 :デフォルトの名無しさん:2011/10/22(土) 18:18:16.62
>>166の2巻目はAthenaウィジェット編だからな
当時もXlibでアプリ作るとか無いだろ

170 :デフォルトの名無しさん:2011/10/22(土) 19:08:53.18
>>168
今はXlibの話をしてるつもりなんで逆にAthenaとか言い出す方がちょっと違う。

あ、イベント処理とかもいるからGLUTもか。

>>169
Xlibだけで自分でボタンやメニューを作ったりしたのはいい思い出w

171 :デフォルトの名無しさん:2011/10/22(土) 19:27:58.00
ああそうなの、アプリの話かと思ったわ。すまんね。


172 :デフォルトの名無しさん:2011/10/23(日) 00:20:01.27
67は今やオールドテクノロジー化したXlib本を買って何がしたいのやら

173 :デフォルトの名無しさん:2011/10/23(日) 00:25:28.54
オールドテクノロジーってわけじゃないけども。
今時のGTKアプリだって下位層で使ってるんだから。
「低レベル」ってのが適切な形容詞だと思う。

174 :デフォルトの名無しさん:2011/10/23(日) 00:28:26.89
時代はXlibからXCBだと聞いた

175 :デフォルトの名無しさん:2011/10/23(日) 13:13:19.54
>>67
X11
http://xjman.dsl.gr.jp/X11R6/X11/


176 :デフォルトの名無しさん:2011/10/23(日) 13:15:02.36
>>67
Xlib Programming Lectures
http://homepage3.nifty.com/rio_i/lab/xlib/


177 :デフォルトの名無しさん:2011/11/05(土) 15:09:51.61
EmacsやらNetbeansやらをいじっていて気付いたのですが,
大昔(EclipseもNetbeansもなかった頃)のGNUとかオープンソース界隈のエロい人たちが使っていた
IDE(統合開発環境)ってどうなってたんでしょうか?

IDEなんか使ってなくて,CUIに仮想デスクトップ+vi/Emacs+gcc/gdbとか普通にありそうですが…

178 :デフォルトの名無しさん:2011/11/05(土) 15:55:37.08
いまはemacsにもIDEが乗っかってる時代だからな

179 :デフォルトの名無しさん:2011/11/05(土) 16:11:48.60
フルカスタマイズしたEmacsがIDE相当だな
結構色んなこと出来るよあれ、環境作るのは面倒いけど

180 :デフォルトの名無しさん:2011/11/06(日) 06:57:42.24
仮想デスクトップがscreenか

181 :デフォルトの名無しさん:2011/11/06(日) 10:49:33.98
・エディタの無い時代
ソースは紙に下書き、パンチカードに清書して入力するよ!
出来上がったソースは印刷してチェックだ!
ジジイ達が処理の切れ目に書く馬鹿デカいコメントはこの時代の名残りだよ!
だって印刷物は関数のところへジャンプも、そもそも検索も出来ないからな!

・ラインエディタ時代(edなど)
環境によっては標準出力はプリンタかも知れないよ!
でも入力してるその場でソース見たり、エディタによっては検索も出来るよ!便利!

・スクリーンエディタ登場(viなど)
なんと行の途中の文字だけ編集したり出来るよ!
これで長い行もサクサク編集出来るね!
ディスプレイもみんなの分あるから、超便利になったよ!

182 :デフォルトの名無しさん:2011/11/06(日) 13:20:47.68
>>181
プログラム書いた紙(コーディングシート)はパンチャーのおばちゃんにパンチしてもらうんだぜ。
その後の修正は自分でパンチするけどね。

183 :デフォルトの名無しさん:2011/11/06(日) 14:15:14.94
前の職場にリアルでリアルでパンチャーやってた頃があるって言ってたパートのおばちゃんが居たな…


184 :デフォルトの名無しさん:2011/11/06(日) 16:05:23.93
emacsが無かった時はvi使ってたよ
いまでも普通にvi使う
echo>>
だけで済ませることもしばしば

185 :177:2011/11/06(日) 18:53:49.18
このスレのエロい人thx!

複数の言語で何か処理してファイルで読み書きするというレベルに達したので,次のレベルに進みたくて調べたけど
大体予想通りということがわかりました.

昔と違って分野が複数ある(並列化一つとってもマルチスレッド,マルチコア,マルチプロセッサにGPU)ので
進む方向性を選ぶのが難しい.

186 :デフォルトの名無しさん:2011/11/06(日) 19:36:36.25
>>185
ハードとソフトが混ざってんぞ
マルチスレッド、分散処理、GPGPUな
あ、あとSIMDかSSE命令などのデータ並列命令な


187 :デフォルトの名無しさん:2011/11/06(日) 22:26:54.73
>>185
>昔と違って
本質的にはそんなに違わんw

>進む方向性を選ぶのが難しい.
何かをどうしても高速に計算したいとかあるわけじゃなく、お勉強でやってるだけなら
かたっぱしからやっとけばw

188 :デフォルトの名無しさん:2011/11/06(日) 23:08:12.64
馬鹿には無理

189 :177:2011/11/07(月) 00:36:34.52
情報系の院生として研究に従事していますが,自分の立ち位置は「他学問から対象問題を収集,複数の手法を組み合わせて解く」こと.
問題に対する解法の有効性を検証するのが仕事なので,シンプルに組んでそこそこ新しい計算端末で4日ほど計算させる.
有効性が検証されたら,複数の小問題として分割して学部生の卒論として展開されます.
なのでGPGPUやMap-Reduceなどの先進的な手法を自分で扱いたいのですが,そこまで時間を確保できない.

>>186
すみません,利用する選択肢で書いてしまいました.
ただGPGPUなどもそうですが,自然科学分野の対象問題を性能を引き出すように構築するのって
すごく難しい(この変数が何バイトで…と考えなければならないので)

>>187
昔といってもベーマガ全盛期のあたりを指しています.
教科書を元に脇目もふらず,ロジックを検討できるのはいいなぁと思います.
今ではWebアプリ(phpからJSP,RoRなど)やクラウドも登場して選択肢と夢ばかりがひろがりんぐです.

>>188
そのとーりだと思います



190 :デフォルトの名無しさん:2011/11/07(月) 02:56:08.65
コンパイルが通らなくて困っています。
OS BSD/OS 4.3
コンパイルしたいもの libfetch
コンパイラgcc 2.95.3
cc -O2 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized
-Wreturn-type -Wcast-qual -Wpointer-arith -Wwrite-strings
-Wswitch -Wshadow -Werror -D_LARGEFILE_SOURCE
-D_LARGE_FILES -D_FILE_OFFSET_BITS=64
-DDEF_UMASK=0022 -I/usr/pkgsrc/bootstrap/work/wrk/pkgtools/pkg_install/work/libarchive/libarchive
-I/usr/pkgsrc/bootstrap/work/wrk/pkgtools/pkg_install/work/libfetch
-DHAVE_NBCOMPAT_H=1
-I/usr/pkgsrc/bootstrap/work/wrk/pkgtools/pkg_install/work/libnbcompat
-I. -D_LARGEFILE_SOURCE -D_LARGE_FILES -DFTP_COMBINE_CWDS -c common.c
cc1: warnings being treated as errors
common.c: In function `fetch_write':
common.c:639: warning: function declaration isn't a prototype
というエラーでコンパイルが通りません
common.cのソースは
#ifndef MSG_NOSIGNAL
#include <signal.h>
#endif




191 :デフォルトの名無しさん:2011/11/07(月) 02:56:51.16
ssize_t
fetch_write(conn_t *conn, const void *buf, size_t len)
{
struct timeval now, timeout, waittv;
fd_set writefds;
ssize_t wlen, total;
int r;
#ifndef MSG_NOSIGNAL
static int killed_sigpipe;
#endif

#ifndef MSG_NOSIGNAL
if (!killed_sigpipe) {
signal(SIGPIPE, SIG_IGN);
killed_sigpipe = 1;
}
#endif
639行目はsignal(SIGPIPE, SIG_IGN);になります。
man signalをした所
void *signal(sig,func());
void (*func)(sig)
と書いてありました。
<sys/signal.l>ヘッダファイルは
__BEGIN_DECLS
void (*signal __P((int, void (*) __P((int))))) __P((int));
__END_DECLS
#endif /* !_SYS_SIGNAL_H_ */
と書いてありました。
もちろんヘッダファイルにSIGPIPEとSIG_IGNは定義してあります。
これはOS側のsignalが古すぎてコンパイルできないのでしょうか?
なんとか良い方法は無いでしょうか?

192 :デフォルトの名無しさん:2011/11/07(月) 04:36:48.82
>>191
>OS BSD/OS 4.3

えらく懐かしいものをお使いで。特に自分で解決できる技量がない場合には、
より新しくて沢山の人が使っている環境を使った方が楽だよw で、

安直な方法: -Werror なしでコンパイルする

もう少しちゃんとした方法:
1) 本当に signal(SIGPIPE, SIG_IGN); の箇所か確認(試しにここをコメントアウトしてみる等)
2) 関数やその引数に最終的にどういう宣言が使われているか確認。プリプロセッサ処理
後のファイルをチェックしてみるとか。
(3) (2)の原因を理解して修正。インクルードやマクロ定義を修正したりとか。

>void *signal(sig,func());

manにこう書いてあるのはググってもそうひっかからないんだけど
http://mail-index.netbsd.org/netbsd-bugs/1996/03/24/0001.html
というのがあるので、あるリリースのBSDにはそういうmanが付いてきたのかもね。

193 :デフォルトの名無しさん:2011/11/08(火) 01:55:19.23
>>192
すいません。
ありがとうございます。
1)はコメントした所、コンパイルとおりました。
2)はすいません。gccとpkgsrcに不慣れなため、まだ試していません
3)はビンゴだと思います。
たぶんBSD/OS 4.0のmanをインターネットで見つけたのですが、
http://www.eecs.harvard.edu/syrah/vino/release-0.40/man/programref/libc/signals/signal.3.txt
void(*signal(int sig, void (*func)());)()
と正しいようです。
ヘッダファイルを修正してやってみます。


194 :デフォルトの名無しさん:2011/11/22(火) 02:33:19.77
リチャードスティーブンスの本でわからない点があるので質問します

unixネットワークプログラミングでifreq構造体ifr_dstaddrの説明でp-to-pリンクの反対側とありますが

どういうことでどういう値が入るのでしょうか

195 :デフォルトの名無しさん:2011/11/22(火) 09:03:54.79
ifconfigでPPPなどのpoint-to-pointなインターフェースを作ると、
対向側のIPアドレスが入る。

196 :デフォルトの名無しさん:2011/12/07(水) 19:19:33.28
Xclockとか一見シンプルそうなアプリでさえ
ソースコード見るとすんげえ量で萎える

人のコード見て勉強とかちょっと疲れてきた

197 :デフォルトの名無しさん:2011/12/07(水) 20:19:34.24
Win32API ほどじゃない

198 :デフォルトの名無しさん:2011/12/07(水) 21:35:07.67
>>196
http://www.pygtk.org
http://live.gnome.org/Seed
GUIアプリならこういうので書けば? あるいはせめて、
http://www.gtk.org


199 :デフォルトの名無しさん:2011/12/07(水) 22:21:43.40
wxPython オヌヌメ

44 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)