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
UNIXプログラミング質問すれ Part10
■ このスレッドは過去ログ倉庫に格納されています
1unco ◆manko/yek.
2011/04/18(月) 17:06:36.77225デフォルトの名無しさん
2012/02/07(火) 21:16:13.63 vimrcとかbashrcとかscreenrcのrcって何の略なんですか?
226デフォルトの名無しさん
2012/02/07(火) 21:25:42.05 run commandの略だという説が有力
227デフォルトの名無しさん
2012/02/07(火) 21:35:56.81228デフォルトの名無しさん
2012/02/07(火) 23:49:16.68 >>224
プロセス間で使えてスレッド間で使えなくなる理由が分からない
その内容だとpipeで十分に思える。というより、そういうライブラリ使ったほうがオーバーヘッドがないような
一時ファイルはmktempで作ると他と衝突しない
プロセス間で使えてスレッド間で使えなくなる理由が分からない
その内容だとpipeで十分に思える。というより、そういうライブラリ使ったほうがオーバーヘッドがないような
一時ファイルはmktempで作ると他と衝突しない
229デフォルトの名無しさん
2012/02/08(水) 02:35:32.10230デフォルトの名無しさん
2012/02/08(水) 02:56:19.60 mkstempって普通ファイル以外作れたか?
231デフォルトの名無しさん
2012/02/08(水) 07:55:45.41 >>226,227
ありがとうございました
ありがとうございました
232デフォルトの名無しさん
2012/02/08(水) 20:32:47.58 >>228
>>229
>>230
用語を間違えていました。
名前付きFIFOではなく、名前付きパイプ(=FIFO)でしたね。失礼しました。
スレッド間だともしかして排他処理がうまくできないのではと思ったもので。
スレッド間で使うなら確かに匿名パイプのほうが適切ですね。
mktemp()のセキュア版であるmkstemp()は、ファイル自体を作ってしまうのですが、
普通のファイルをパイプ化できるのであれば問題ないのですが、
どうもそのようなことをしてくれるシステムコールは存在しないようで・・・
tmpnam()で名前だけ作ってmkfifo()でFIFOを生成してもいいのですが、
tmpnam()のせいでコンパイル時に恐ろしげな警告が出るのが気持ち悪くて・・・
・・・困りました
>>229
>>230
用語を間違えていました。
名前付きFIFOではなく、名前付きパイプ(=FIFO)でしたね。失礼しました。
スレッド間だともしかして排他処理がうまくできないのではと思ったもので。
スレッド間で使うなら確かに匿名パイプのほうが適切ですね。
mktemp()のセキュア版であるmkstemp()は、ファイル自体を作ってしまうのですが、
普通のファイルをパイプ化できるのであれば問題ないのですが、
どうもそのようなことをしてくれるシステムコールは存在しないようで・・・
tmpnam()で名前だけ作ってmkfifo()でFIFOを生成してもいいのですが、
tmpnam()のせいでコンパイル時に恐ろしげな警告が出るのが気持ち悪くて・・・
・・・困りました
233デフォルトの名無しさん
2012/02/08(水) 23:27:28.46 スレッド間ならファイルディスクリプタは共有しているので、名前付きである必要な理由は無いな。
あえてnamed pipeを選択する理由は?
あえてnamed pipeを選択する理由は?
234デフォルトの名無しさん
2012/02/09(木) 00:30:27.29 名前付きを使いたいのはスレッド間ではないです
235デフォルトの名無しさん
2012/02/09(木) 00:37:06.84 forkすればファイルディスクリプタは複製されるし、全く別のプロセスに
ソケットを使ってファイルディスクリプタを送信することもできたはず
というかその用途ならソケットで通信すればいいのでは?
ソケットを使ってファイルディスクリプタを送信することもできたはず
というかその用途ならソケットで通信すればいいのでは?
236デフォルトの名無しさん
2012/02/09(木) 00:39:23.33 > プロセス間通信で使う、名前付きFIFOをPスレッド間で使うことは可能でしょうか?
> 名前付きを使いたいのはスレッド間ではないです
どっちが本当?
> 名前付きを使いたいのはスレッド間ではないです
どっちが本当?
237デフォルトの名無しさん
2012/02/09(木) 00:47:02.99 下が本当です
上はうっかりミスで、
「プロセス間通信で使う、パイプをPスレッド間で使うことは可能でしょうか?」
が意図したQでした。
よって、想定しているシチュエーションは2つあったわけです。
1. スレッド間でパイプ使用
2. (プロセス間の)FIFOのユニークな名前の自動生成
上はうっかりミスで、
「プロセス間通信で使う、パイプをPスレッド間で使うことは可能でしょうか?」
が意図したQでした。
よって、想定しているシチュエーションは2つあったわけです。
1. スレッド間でパイプ使用
2. (プロセス間の)FIFOのユニークな名前の自動生成
238デフォルトの名無しさん
2012/02/09(木) 00:50:14.29 できればプロセス間でも親子関係とか持たせてパイプにする方がいいような。
どうせユニークな名前をどうにかして相手に伝えないといけないんでしょ。
どうせユニークな名前をどうにかして相手に伝えないといけないんでしょ。
239デフォルトの名無しさん
2012/02/09(木) 00:56:05.42 パイプでつなぎたい先のプロセスは、独立した実行ファイルによるものですので
240デフォルトの名無しさん
2012/02/09(木) 00:56:56.90 forkしてパイプ準備してからexecすればいいのでは
241デフォルトの名無しさん
2012/02/09(木) 01:03:48.90 寝ぼけてました・・・
全く、そのような方法でやろうと自分でも考えていました。
全く、そのような方法でやろうと自分でも考えていました。
242デフォルトの名無しさん
2012/02/09(木) 01:12:26.89 書き込む前に一度読み直して人に伝わるかどうか位確認しろw
結局>>240の提示した方法で実現できそうな話だったんだな?
結局>>240の提示した方法で実現できそうな話だったんだな?
243デフォルトの名無しさん
2012/02/09(木) 06:14:23.72 パイプの名前は?
244デフォルトの名無しさん
2012/02/09(木) 11:21:57.81 >>243
ズシオ
ズシオ
245デフォルトの名無しさん
2012/02/09(木) 13:40:45.86 SIGPIPEウゼエって時は、
int result = send( fd , buffer ,size , MSG_NOSIGNAL);
ってやり方もある。OSとfiletypeを選ぶけども。
int result = send( fd , buffer ,size , MSG_NOSIGNAL);
ってやり方もある。OSとfiletypeを選ぶけども。
246デフォルトの名無しさん
2012/02/09(木) 18:25:23.87 SIGPIPEなんて速攻でIGNOREしてたわ
247デフォルトの名無しさん
2012/02/09(木) 19:24:31.48 解決した後で聞かれもしてない事(しかも大した情報量がない)を
ドヤ顔で言い出す奴ってかなり恥ずかしい。
ドヤ顔で言い出す奴ってかなり恥ずかしい。
248デフォルトの名無しさん
2012/02/09(木) 22:59:21.62 ためになるからイナフだ
249デフォルトの名無しさん
2012/02/10(金) 12:53:22.71 >>247は可哀想。
250デフォルトの名無しさん
2012/02/10(金) 20:19:25.23 system()がダメでexec*()じゃなければならない場合って具体的にどういう使いどころですかね?
251デフォルトの名無しさん
2012/02/10(金) 20:30:04.86 ・forkした後にあれしたりこれしたり
・login shellに左右されたくないコマンドライン
・login shellに左右されたくないコマンドライン
252デフォルトの名無しさん
2012/02/10(金) 21:47:45.05 すいません・・・
そこをもう一声具体的に・・・悲
そこをもう一声具体的に・・・悲
253デフォルトの名無しさん
2012/02/10(金) 21:53:36.60 自分とパイプで繋がった子プロセス内で外部のプログラムを実行できたりとか
254デフォルトの名無しさん
2012/02/10(金) 22:01:58.79 コマンドラインとして渡す文字列(の一部)が文字列としてプログラム外からやってくる時。
255デフォルトの名無しさん
2012/02/10(金) 22:11:03.48256デフォルトの名無しさん
2012/02/10(金) 22:16:24.42 fork+execとsystemの違いってなんですか、ならわかるけど
forkとsystemの違いってなんですか、だと根本的に勘違いしてるだろうからman読んだほうがいいよ
forkとsystemの違いってなんですか、だと根本的に勘違いしてるだろうからman読んだほうがいいよ
257デフォルトの名無しさん
2012/02/10(金) 22:19:18.11 こんな>>255態度で返す奴ってなんなの?
258デフォルトの名無しさん
2012/02/10(金) 22:26:11.92 「シェルを通すか通さないか」という言葉ぐらいは知ってるんですが、
じゃあ、使い分けが必要なのは具体的にどういう箇所で?となると
わかっている人に教わったほうが間違いがないかと思ったものですから・・・謝
じゃあ、使い分けが必要なのは具体的にどういう箇所で?となると
わかっている人に教わったほうが間違いがないかと思ったものですから・・・謝
259デフォルトの名無しさん
2012/02/10(金) 22:32:43.19 言い訳だけしてまともに謝る事すらできないのか
人間のクズだな
人間のクズだな
260デフォルトの名無しさん
2012/02/10(金) 22:40:55.98 ごめんなない
261デフォルトの名無しさん
2012/02/10(金) 22:51:07.88 誠意を見せたかったらどうするのかわからないのか?
教えてやろう。画像を貼るんだよ。
教えてやろう。画像を貼るんだよ。
262デフォルトの名無しさん
2012/02/10(金) 23:12:37.26263デフォルトの名無しさん
2012/02/11(土) 00:25:56.53 systemとexecじゃできることが違いすぎて何を聞きたいのかが不明過ぎる
264デフォルトの名無しさん
2012/02/11(土) 00:34:15.31 はったりはやめなよ
265デフォルトの名無しさん
2012/02/11(土) 00:42:24.53 UNIX勉強しろよ
266デフォルトの名無しさん
2012/02/11(土) 00:53:47.37 薀蓄自慢したい人ですかね?
267デフォルトの名無しさん
2012/02/11(土) 11:43:52.95 >>263
別プロセスを生成させる以外になにか大きな使い方の差があるのでしょうか?
別プロセスを生成させる以外になにか大きな使い方の差があるのでしょうか?
268デフォルトの名無しさん
2012/02/11(土) 11:48:54.36 >>267
シェルがあるかないか も超重要じゃね?
シェルがあるかないか も超重要じゃね?
269デフォルトの名無しさん
2012/02/11(土) 11:50:30.76 >>267
・systemは1)プロセスを生成して、2)別バイナリを実行する。
1と2の間にいろいろできる。(パイプでつなぐ、資格情報の制御、リソースの制限などなど)
・systemはshに実行させる。shの機能(リダイレクトとか)が使える反面、セキュリティ上の問題を起こしやすい。
・systemは1)プロセスを生成して、2)別バイナリを実行する。
1と2の間にいろいろできる。(パイプでつなぐ、資格情報の制御、リソースの制限などなど)
・systemはshに実行させる。shの機能(リダイレクトとか)が使える反面、セキュリティ上の問題を起こしやすい。
270デフォルトの名無しさん
2012/02/11(土) 12:25:17.58 >>264,266,267
やるきねーだろ
やるきねーだろ
271デフォルトの名無しさん
2012/02/11(土) 16:31:24.52 やる気はあります!
レスが付くまで全裸で待機していましたし
レスが付くまで全裸で待機していましたし
272デフォルトの名無しさん
2012/02/11(土) 16:39:39.91 全裸待機する暇があったらman 3 system; man 3 exec
273デフォルトの名無しさん
2012/02/11(土) 16:49:39.39 らめえぇぇぇぇぇぇぇ
システムのページサイズを超えてかきこまないでぇぇぇぇ
あたしまだバージョン 2.6.11 より前なのにぃぃぃぃぃ
みたいな
システムのページサイズを超えてかきこまないでぇぇぇぇ
あたしまだバージョン 2.6.11 より前なのにぃぃぃぃぃ
みたいな
274デフォルトの名無しさん
2012/02/11(土) 17:31:53.25 Linux板でも逝け
275デフォルトの名無しさん
2012/02/11(土) 20:16:56.46 あそこは管理系の薀蓄でブヒってるのが多いからなんとなくイヤ
「お前が管理しているそのツールのこの機能はどうやって作るのか」
という質問には答えてくれなそう
「お前が管理しているそのツールのこの機能はどうやって作るのか」
という質問には答えてくれなそう
276デフォルトの名無しさん
2012/02/11(土) 21:06:14.73277デフォルトの名無しさん
2012/02/11(土) 22:19:30.22 詳解UNIXプログラミング
UNIXカーネルの設計
を読み終わったらまたいらっしゃい
UNIXカーネルの設計
を読み終わったらまたいらっしゃい
278デフォルトの名無しさん
2012/02/11(土) 22:38:19.99 そしてだれもいなくなった(未完)
279デフォルトの名無しさん
2012/02/11(土) 22:48:13.34 嵐の番組ってCMが生理用品ばっかでワロス
280デフォルトの名無しさん
2012/02/11(土) 23:10:22.97 >>278
まだまだ
まだまだ
281デフォルトの名無しさん
2012/02/11(土) 23:58:08.93282デフォルトの名無しさん
2012/02/12(日) 00:18:42.76 2/eが出てるよ
283デフォルトの名無しさん
2012/02/12(日) 00:38:58.73 違いを意識したことないが、その手の本でPOSIX 2008に対応してるのってあるの?
284デフォルトの名無しさん
2012/02/12(日) 01:04:05.10285デフォルトの名無しさん
2012/02/12(日) 01:50:48.07286デフォルトの名無しさん
2012/02/12(日) 02:04:12.95 旨そうなゼンマイだと思ったのにw
>>284
へーLinuxか。2008の機能も実装してたのか。この辺りの各OSごとの実装状況はまるで分からんが、
実装されているならマニュアルもあるだろうからそっちから調べるのもありだな。ありがとう
>>284
へーLinuxか。2008の機能も実装してたのか。この辺りの各OSごとの実装状況はまるで分からんが、
実装されているならマニュアルもあるだろうからそっちから調べるのもありだな。ありがとう
287デフォルトの名無しさん
2012/02/12(日) 04:11:48.67 >実装されているならマニュアルもあるだろう
(;゚ Д゚) …!?
(つд⊂)ゴシゴシ
(;゚ Д゚) …!?
(つд⊂)ゴシゴシ
288デフォルトの名無しさん
2012/02/12(日) 10:22:03.92 http://man7.org/tlpi/translations/index.html
> Japanese O'Reilly Japan Announced (Q2 2011).
> Publication likely in second half of 2012.
絶対出ないと思ってたのに
今の日オラにこんな根性があるとは思わなかった
> Japanese O'Reilly Japan Announced (Q2 2011).
> Publication likely in second half of 2012.
絶対出ないと思ってたのに
今の日オラにこんな根性があるとは思わなかった
289デフォルトの名無しさん
2012/02/12(日) 19:24:06.62 また半端な翻訳かまして、後が出ないよ糞詰まり状態に1000ペリカ
290デフォルトの名無しさん
2012/02/12(日) 20:04:02.50 >>288
ポチってしまった俺は、訳本が出る前に完読してやろうと心に誓うのであった
ポチってしまった俺は、訳本が出る前に完読してやろうと心に誓うのであった
291デフォルトの名無しさん
2012/02/12(日) 22:26:02.57 出版元のサイトからPDFつきが70$で買えるけど(ディスカウントクーポン使用)
もしAmazonでポチってたら強く生きてくれ
もしAmazonでポチってたら強く生きてくれ
292290
2012/02/13(月) 21:39:17.18 なんじゃこの箱枕は!!!!!
('A`)
('A`)
293デフォルトの名無しさん
2012/02/14(火) 07:55:05.11 UNIXのインダイレクションについてレポートにまとめろとかいわれたんだけどUNIXとインダイレクションって
なんか関係あったっけ?
なんか関係あったっけ?
294デフォルトの名無しさん
2012/02/14(火) 08:22:51.30 リダイレクションの聞き間違いだろ。
295デフォルトの名無しさん
2012/02/14(火) 12:40:18.10 >>293
せっかくだからそのままインダイレクションでレポート書いちゃえ
せっかくだからそのままインダイレクションでレポート書いちゃえ
296デフォルトの名無しさん
2012/02/18(土) 03:02:26.53 fork + execlpしたプログラムに引数でstruct構造体を渡すことってできますか?
297デフォルトの名無しさん
2012/02/18(土) 03:03:51.11 馬鹿には無理
298デフォルトの名無しさん
2012/02/18(土) 03:50:08.03 勉強しなおします
299デフォルトの名無しさん
2012/02/18(土) 05:33:46.00 構造体の中身を全部文字列に直して、引数で渡して、その文字列から構造体を作り直せばいいよ
300デフォルトの名無しさん
2012/02/18(土) 09:35:31.88 mmapした領域にコピーしとく、ファイルディスクリプタはそのまま
継承されるから、子プロセスでmmapすりゃいい。
継承されるから、子プロセスでmmapすりゃいい。
301デフォルトの名無しさん
2012/02/18(土) 21:05:03.13 テキストファイルを実行ファイルの一部としてくっつけておいて
実行時にそれを普通のファイルみたいにopen/read/writeすることは可能でしょうか?
実行時にそれを普通のファイルみたいにopen/read/writeすることは可能でしょうか?
302デフォルトの名無しさん
2012/02/18(土) 21:13:51.06 実行するユーザがread, write権限もってりゃできる。
そういうユーザーは実行ファイルを壊すことも、悪質なプログラムに
中身をすり替える事も可能になる。
そういうユーザーは実行ファイルを壊すことも、悪質なプログラムに
中身をすり替える事も可能になる。
303デフォルトの名無しさん
2012/02/18(土) 21:48:35.70 で、どうやって?
304デフォルトの名無しさん
2012/02/18(土) 21:59:22.91 自分が入ってたファイルを書き込みモードでオープンできるかどうかは、
ファイルシステムに拠るんじゃないかな。
パーミッション的にOKだったとしても。
ファイルシステムに拠るんじゃないかな。
パーミッション的にOKだったとしても。
305デフォルトの名無しさん
2012/02/18(土) 22:01:55.04 ファイルシステムじゃなくてOSに拠るのかも。
とりあえずbsd系では平気そうだけどlinuxでは無理だよね。
とりあえずbsd系では平気そうだけどlinuxでは無理だよね。
306デフォルトの名無しさん
2012/02/18(土) 22:26:29.07 Solarisなんかも書き込みはアウト。
Text file is busyになる。
BSDもダメなはずだが…
一つの実行ファイルを配布して、それを実行しながら書き換えようってのは無理。
Mac OS Xならリソースフォークを書き換えればいいが。
Text file is busyになる。
BSDもダメなはずだが…
一つの実行ファイルを配布して、それを実行しながら書き換えようってのは無理。
Mac OS Xならリソースフォークを書き換えればいいが。
307デフォルトの名無しさん
2012/02/18(土) 22:33:01.16 >>306
BSDは手元にないからわからないけど、OS Xは書き込めるよ。
BSDは手元にないからわからないけど、OS Xは書き込めるよ。
308デフォルトの名無しさん
2012/02/19(日) 01:26:23.23 forkしたあとなら出来る?
309デフォルトの名無しさん
2012/02/19(日) 01:36:19.24 textをbusyにしているプロセスが2つに増えるだけ。
310デフォルトの名無しさん
2012/02/19(日) 01:48:39.19 BSDとかMachの仮想記憶だと、同じページをマップしてても書き換えたらコピーが作られるんじゃないの?
だからOS Xは書き込める。
だからOS Xは書き込める。
311デフォルトの名無しさん
2012/02/19(日) 01:55:39.11 それはどのUNIXでも同じ。
ただし書き換えられるのはデータ領域。
実行ファイルが書き換えられるわけじゃない。
Mac OS X(Darwin)は同一ファイル内のリソースフォークを書き換える必要があるから、
HFS+のファイルはそう扱ってる。UFS(今はもうないが)上だと違う。
ただし書き換えられるのはデータ領域。
実行ファイルが書き換えられるわけじゃない。
Mac OS X(Darwin)は同一ファイル内のリソースフォークを書き換える必要があるから、
HFS+のファイルはそう扱ってる。UFS(今はもうないが)上だと違う。
312デフォルトの名無しさん
2012/02/19(日) 02:02:29.64 ああそうなんだ。OS Xでもファイルシステム依存なのね。
313デフォルトの名無しさん
2012/02/19(日) 04:12:08.40 最終的に変更されたバイナリが残ればいいのなら、プログラム起動時にどこかにコピーを作ってそれで上書きすれば
その上書きした方に対して自由に読み書きできると思うんだが、いろいろ怖い
その上書きした方に対して自由に読み書きできると思うんだが、いろいろ怖い
314デフォルトの名無しさん
2012/02/19(日) 04:22:57.33 おまえらautoconfわかる?
これでx86プロセッサーのコア数を確認するマクロあったら教えてくれ。
http://www.gnu.org/software/autoconf-archive/The-Macros.html#The-Macros
ここに有志が書いたマクロについてのマニュアルがあるから、探してくれ。
誰か英語が得意な奴よろ。
もし無いなら誰かm4マクロでx86プロセッサーのコア数確認のマクロ書いてくれ。
これCPUの資料な。
たぶんアセンブラの命令とかで調べられるはずだから、
ここ読めばどっかに載ってるから。よろ。
http://download.intel.com/jp/developer/jpdoc/Processor_Identification_071405_i.pdf
http://download.intel.com/jp/developer/jpdoc/248966-024JA.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol1_Online_i.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol2A_i.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol2B_i.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol3_i.pdf
これでx86プロセッサーのコア数を確認するマクロあったら教えてくれ。
http://www.gnu.org/software/autoconf-archive/The-Macros.html#The-Macros
ここに有志が書いたマクロについてのマニュアルがあるから、探してくれ。
誰か英語が得意な奴よろ。
もし無いなら誰かm4マクロでx86プロセッサーのコア数確認のマクロ書いてくれ。
これCPUの資料な。
たぶんアセンブラの命令とかで調べられるはずだから、
ここ読めばどっかに載ってるから。よろ。
http://download.intel.com/jp/developer/jpdoc/Processor_Identification_071405_i.pdf
http://download.intel.com/jp/developer/jpdoc/248966-024JA.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol1_Online_i.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol2A_i.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol2B_i.pdf
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol3_i.pdf
315314
2012/02/19(日) 04:25:44.64316デフォルトの名無しさん
2012/02/19(日) 08:45:12.06 同じ問題で、画像データやアイコンデータなんかはどうやって管理しているの?
317デフォルトの名無しさん
2012/02/19(日) 09:29:28.41 なにが?
318デフォルトの名無しさん
2012/02/19(日) 10:27:43.92319デフォルトの名無しさん
2012/02/19(日) 10:43:27.62 リードオンリーなら別の問題だ。実行ファイルに埋め込む場合もある。
320デフォルトの名無しさん
2012/02/19(日) 12:29:42.23 実行ファイルに埋め込んだ場合、「どこにあるか」を知らないと読み出しできないではないか・・・
すんません、そういう関数や手順があるなら教えてください
一般的なLinuxでgcc|g++を想定しての話です
すんません、そういう関数や手順があるなら教えてください
一般的なLinuxでgcc|g++を想定しての話です
321デフォルトの名無しさん
2012/02/19(日) 12:35:41.80 読むだけならデータ化すればいいだけだろ。xpmみたいに。
322デフォルトの名無しさん
2012/02/19(日) 12:44:08.98 >>320
GNU ldなら
ld -r -b binary -o foo.o foo.jpg
でfoo.jpgをオブジェクトファイルにすることができる。
nm foo.oすりゃわかるが、_binary_foo_start、_binary_end_start
というシンボルが定義される。
このオブジェクトファイルを普通にリンクすれば直にアクセスできる。
リードする必要すらない。
GNU ldなら
ld -r -b binary -o foo.o foo.jpg
でfoo.jpgをオブジェクトファイルにすることができる。
nm foo.oすりゃわかるが、_binary_foo_start、_binary_end_start
というシンボルが定義される。
このオブジェクトファイルを普通にリンクすれば直にアクセスできる。
リードする必要すらない。
323デフォルトの名無しさん
2012/02/19(日) 12:45:22.01 おっと
× _binary_foo_start、_binary_end_start
○ _binary_foo_start、_binary_foo_end
× _binary_foo_start、_binary_end_start
○ _binary_foo_start、_binary_foo_end
324デフォルトの名無しさん
2012/02/19(日) 12:46:13.97 それをどうやって、(その画像データを読むプログラムの)実行ファイルにくっつけるの?
まさか、異様に長い配列を?・・・・て、静的データを置く領域が足りなくて無理だし
まさか、異様に長い配列を?・・・・て、静的データを置く領域が足りなくて無理だし
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【大分】佐賀関で大規模火災、170棟以上が延焼中 70代男性1人と連絡取れず [ぐれ★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 「クマはなるべく山に返す努力を」「クマと戦争は間違っている」動物保護活動家の主張 棲み分けと学習放獣でクマ被害なくなるのか?★7 [ぐれ★]
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- 自閉症が「んなっしょい」と連呼するお🏡
- 現役猟師・俳優 東出昌大が語る「クマはそんな危ないもんじゃない」
- 【悲報】大分市佐賀関の火事、20軒→170軒に延焼🔥 [481941988]
- 日本人の海外旅行したきのマナーよくなったのはいつから
- へそグリグリ
