FreeBSDを語れ Part38
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2014/07/14(月) 05:03:19.63The FreeBSD Project
http://www.freebsd.org/ja/
前スレ
FreeBSDを語れ Part37
http://peace.2ch.net/test/read.cgi/unix/1390323139/
関連スレ
初心者もOK! FreeBSD質問スレッド その118
http://peace.2ch.net/test/read.cgi/unix/1397057895/
0034名無しさん@お腹いっぱい。
2014/07/17(木) 23:26:44.53ありゃ、オフにする必要なかったか。そのうちやってみる。
0035名無しさん@お腹いっぱい。
2014/07/18(金) 00:04:43.21そういえば、make.confに、TEX_DEFAULT=texlive な
0036名無しさん@お腹いっぱい。
2014/07/18(金) 11:17:15.49たとえば、実際論文とか書くときって、フォントの大きさとか、線の太さとか調整して見やすくするもんじゃない?
だから、epsに出力できれば十分だと思うけど。
0037名無しさん@お腹いっぱい。
2014/07/18(金) 11:25:43.98まったく同意だけど、
>たとえば、実際論文とか書くときって、フォントの大きさとか、線の太さとか調整して見やすくするもんじゃない?
>だから、epsに出力できれば十分だと思うけど。
それが、eps より tex source の方がやり易いと言うことでは。
それより、gnuplot の中で (la)tex command が使えたら超便利なのに。
そのための tex 依存なら納得できる。
0038名無しさん@お腹いっぱい。
2014/07/18(金) 17:07:17.10そういえば俺修士論文でgnuplot使わなかったな。
0039名無しさん@お腹いっぱい。
2014/07/19(土) 04:09:08.140040名無しさん@お腹いっぱい。
2014/07/20(日) 06:26:59.00Cx5x86ではブートできない。
9.3RならOKなのでclangが悪さしてるのかなあ
0041名無しさん@お腹いっぱい。
2014/07/20(日) 11:16:49.040042名無しさん@お腹いっぱい。
2014/07/21(月) 18:09:04.730043名無しさん@お腹いっぱい。
2014/07/22(火) 03:21:52.400044名無しさん@お腹いっぱい。
2014/07/22(火) 20:00:18.180045名無しさん@お腹いっぱい。
2014/07/22(火) 20:21:46.790046名無しさん@お腹いっぱい。
2014/07/22(火) 22:48:40.26そこはもっとマイナーに攻めろよ
bochsとか
0047名無しさん@お腹いっぱい。
2014/07/23(水) 10:58:44.320048名無しさん@お腹いっぱい。
2014/07/23(水) 11:13:44.950049.
2014/07/23(水) 11:18:16.160050名無しさん@お腹いっぱい。
2014/07/23(水) 13:15:23.620051名無しさん@お腹いっぱい。
2014/07/23(水) 13:32:41.170052名無しさん@お腹いっぱい。
2014/07/23(水) 14:09:16.59Windowsとかも動くようになったん?
0053名無しさん@お腹いっぱい。
2014/07/23(水) 14:27:10.99前は動かなかったの?
0054名無しさん@お腹いっぱい。
2014/07/23(水) 15:22:19.33LibreOffice がフリーズする件ですが、Linux ユーザに訊いてみたところ、正常に開けるとの事でした。
今のところ、フリーズするのは FreeBSD の LibreOffice だけの様です。
となると、移植でのバグですかね。どこへ報告して良いのか迷います。
また、フリーズは原因究明が困難なので、自分で直すのはちょっと諦め気味です。
0055名無しさん@お腹いっぱい。
2014/07/23(水) 16:04:50.770056名無しさん@お腹いっぱい。
2014/07/23(水) 20:05:31.380057名無しさん@お腹いっぱい。
2014/07/23(水) 20:07:55.380058名無しさん@お腹いっぱい。
2014/07/23(水) 20:31:27.25http://maguro.2ch.net/test/read.cgi/linux/1074622851/519
これが正しく開ける状態かな。
debian jessieのはヘルプで見ると http://i.imgur.com/ZLdIAHC.png
のように v4.2.5.2 と表示されるけどパッケージ情報を見ると
Version: 1:4.2.5-1+b1 となっているのでdebianメンテナが
何かパッチを当てたのでしょう。
落ちるのは分からないけど、サイングラフが表示されないのは
何かライブラリが足りない可能性もありえないかな。
バグ報告先は
https://wiki.documentfoundation.org/QA/BugReport/ja
かも。ちなみに
LibreOffice PART16
http://anago.2ch.net/test/read.cgi/software/1388069898/
というスレもありますね。
0059名無しさん@お腹いっぱい。
2014/07/23(水) 22:32:42.530060名無しさん@お腹いっぱい。
2014/07/23(水) 22:50:45.50006154
2014/07/24(木) 07:24:21.77ええ、それが正しく開けた状態です。
なるほど。もしパッチで修正されたのなら希望が持てます。
フリーズせずに表示されない場合は gs が入ってない場合と思います。
原因を絞るために、まず、各プラットホームでの状況を調べてみました。
これまでの所、フリーズするのは FreeBSD のみです。
そうなると、FreeBSD は正式にサポートされてないので、本家に報告するのは躊躇われるのです。
自分で原因を突き止めて直したいと思うのですが、フリーズは場所の特定が難しく挫折しました。
クラッシュならコアを調べる等あるのですが、フリーズはどうして良いものか....
gdb の attach も場所の特定には至らない様ですし...
0062名無しさん@お腹いっぱい。
2014/07/24(木) 07:49:55.38どの部分の表示でフリーズするとか絞り込んだり
できないかな
0063名無しさん@お腹いっぱい。
2014/07/24(木) 07:54:46.14Debian Jessieで正しく表示されるなら、LMDE(Linux Mint Debian Edition)や
Mint17やUbuntu14.04などのLiveDVDに入ってるLibreで編集できるかも知れん。
006454
2014/07/24(木) 08:43:18.72そう言う意味では切り分けはできています。
EPS file が貼られたファイルでフリーズが起こります。
FreeBSD の gs に問題があるのですかね?
でも、問題起こす EPS file も gv では問題なく表示されます。うーむ。
0065名無しさん@お腹いっぱい。
2014/07/24(木) 10:03:56.54コアがあればいいだけならシグナル送ってコアを吐かせればいい。
attachするのと変わらないと思うけど。
gdbでまともに見るには全部 -g つけるとか。WITH_DEBUGとか効くかな?
0066名無しさん@お腹いっぱい。
2014/07/24(木) 10:16:14.430067名無しさん@お腹いっぱい。
2014/07/24(木) 10:43:21.53スレッドまわりかなと思ってたが、waitと特定できてるの?
まあktraceしておくのは有効だよね。
0068名無しさん@お腹いっぱい。
2014/07/24(木) 11:07:09.150069名無しさん@お腹いっぱい。
2014/07/24(木) 14:24:05.170070名無しさん@お腹いっぱい。
2014/07/24(木) 15:10:41.98http://peace.2ch.net/test/read.cgi/unix/1390323139/974
彼はlibcが悪いの?とかトンチンカンな事言ってたが、
コレ見る分にはwait4で止まってたということらしい。
0071名無しさん@お腹いっぱい。
2014/07/24(木) 15:13:41.000072名無しさん@お腹いっぱい。
2014/07/24(木) 15:22:55.13コールスタック見ると長く待つ為のwait4が入る場所ではなさ気だから怪しくはある。
0073名無しさん@お腹いっぱい。
2014/07/24(木) 15:51:31.320074名無しさん@お腹いっぱい。
2014/07/24(木) 22:22:09.32誤報っつーか、それアプリケーション側のバグでしょw
SIGCHLDが飛ぶ機会が終了以外にもあるとか、シグナルの非同期性を理解してないコーディングになってたりとか。
0075名無しさん@お腹いっぱい。
2014/07/25(金) 00:07:52.53デフォルトになったというか、tetexがバンバン消されていっているようなんですが、
これってちょっと変化が急激すぎやしませんかね?
今後、日本語tex環境を入れようとしたら、これっていうメタポートはあるんだろうか
0076名無しさん@お腹いっぱい。
2014/07/25(金) 00:24:03.36俺はもっとやれ派
0077名無しさん@お腹いっぱい。
2014/07/25(金) 00:55:02.51マリオ動かしたり飛行機操作する方が楽しいのに
0078名無しさん@お腹いっぱい。
2014/07/25(金) 00:56:32.220079名無しさん@お腹いっぱい。
2014/07/25(金) 08:06:30.74個人的には
print/texlive-full
を使っているが
いらない機能までインストールしすぎ
という悪寒もある
008054
2014/07/25(金) 13:28:10.25ktrace しながらフリーズさせてキルして見ました。
http://fast-uploader.com/file/6961817882204/
何か分かるでしょうか?
0081名無しさん@お腹いっぱい。
2014/07/25(金) 15:50:53.19REPLACE_ORIGINが効かなくなってない?
0082名無しさん@お腹いっぱい。
2014/07/27(日) 16:31:29.811 名前:番組の途中ですがアフィサイトへの転載は禁止です :2014/07/27(日) 14:50:44.27 ID:Pune7i/30 BE:469226128-2BP(1000)
Wikipedia Foundation : 妨害工作の多発で米国議会による編集行為を一時的禁止
Posted 12 hours ago, by Scott Newman
Wikipedia Foundationは、米国議会のIPアドレスによる編集妨害工作が多発したことを理由に、
一時的に米国議会のIPアドレスを用いた匿名での項目の編集を禁止する措置を講じたことがBBCなどの報道により明らかとなった。
今回の措置は10日間の一時的措置となる。また、編集が禁止となるのは米国議会のIPアドレスを用いた匿名による編集に限られており、
米国議会のIPアドレスを用いた場合であっても登録されたユーザーIDを用いて編集を行う場合には、規制の対象とはならない。
米国議会のIPアドレスによる編集妨害工作が多発する状況となったのは、米国議会のIPアドレスから編集が行われた場合、
その内容を自動的にTweetする@congresseditsによって公然化したものとなる。
米国議会のIPアドレスからは、ドナルド・ラムズフェルド元国防長官は「爬虫類のエイリアン(alien lizard)」、
ケネディー大統領の暗殺は「カストロ政権の意向により実施された」、ウクライナの政治家のナタリヤ・ヴィトレンコは「ロシア政府の傀儡」といった書き込みが続くなど、
Wikipedia Foundation では以前から米国議会関係者に対して、編集妨害工作を行わないように警告を発してきた。
中略
一方、米国議会関係者からは「2、3名の関係者がそうした行為を行ったからといって、9000名の議会スタッフ全員の編集を禁止する措置を講じるのはいかがなものか?
私が知っている範囲で周りの人がやっている編集は、記事の文法上のミスや、野鳥に関わること、また、KDE2やFreeBSDに関わる事柄などです」
とするUser talkがあるなど、コミュニティーによる容易な規制発動に対して批判を加えている。
ソース全文
http://www.businessnewsline.com/biztech/201407270142340000.html
自動的にTweetする@congressedits
https://twitter.com/congressedits
0083名無しさん@お腹いっぱい。
2014/07/27(日) 20:06:01.28obsolete過ぎて危ないのに、直ぐには消せないからということで
むしろここまですごく時間を掛けてやっと辿りついたっていう印象なんだけどなあ。
0084名無しさん@お腹いっぱい。
2014/07/28(月) 14:56:13.95ようやく満足に動く環境が出来た。
・sysinstallドコー、mount_ntfsドコー
・pkg bootstrapてどうよ
から始まってC++とRubyの開発環境が揃うまで長かった……
メモリイメージ焼いたDVDからパッケージを適当に入れて、
特に興味のある物はソースからインストールという昔ながらの方法でやったが、
そろそろ限界かな。
clangとgccの互換性は高いが混ざると落ちることもあるみたい。
色々勉強になったからよしとしよう
0085名無しさん@お腹いっぱい。
2014/07/28(月) 19:34:51.430086名無しさん@お腹いっぱい。
2014/07/28(月) 19:47:07.42pkg 1.3.2では pkg repo でtbzを認識してくれません
対処方法はありますでしょうか?
0087名無しさん@お腹いっぱい。
2014/07/28(月) 23:27:13.430088名無しさん@お腹いっぱい。
2014/07/29(火) 01:08:14.70portsが使えるからまだ大丈夫だよ
0089名無しさん@お腹いっぱい。
2014/07/29(火) 13:30:19.38pkg 何かアレなことになってるん?
0090名無しさん@お腹いっぱい。
2014/07/29(火) 19:43:17.01009180
2014/07/29(火) 20:59:39.90フリーズする直前に実行している下の部分の、"write 4096 byte" の 4096 がおかしいです。
EPSファイルを読み込んでフリーズが起きるのですが、フリーズしない場合を ktrace で見ると、
そこの数字が正しいファイルサイズになっています。一方、フリーズする場合は、
実際のファイルサイズより小さい 4096 になっていて、中身の途中までしか write されていないのが見て分かります。
これが原因で wait が起きているように思えます。ファイルサイズを間違える原因はまだ分かってません。
ファイルサイズの問題でしょうか?例えば、フリーズしないのが tgif で作った 3K のファイルで、
するのが gnuplot で作った 11K のファイルです。もう少し調べてみます。
-------------------------------------------------
1140 soffice.bin GIO fd 51 wrote 4096 bytes
"%!PS-Adobe-2.0 EPSF-2.0
-----------------------
cut
-----------------------
/Circle { stroke [] 0 setdash 2 copy
hpt 0 360 arc stroke Pnt } def
/CircleF { stroke [] 0 setdash hpt 0 360 arc fill } def
/C0 { BL [] 0 setdash 2 copy moveto vpt 90 450 arc } bind def
/C1 { BL [] 0 setdash 2 copy moveto
2 copy vpt 0 90 arc closepath fill
vpt 0 360 arc closepath } bind def
/C2 { BL [] 0 setdash 2 copy moveto
2 "
-----------------------------------------------------------------
0092名無しさん@お腹いっぱい。
2014/07/29(火) 21:49:38.874KBピッタリって辺りからして、4KBずつ書き込むんじゃね?
次の4KBを書き込む為の条件が満たせないと固まるとか。
0093名無しさん@お腹いっぱい。
2014/07/29(火) 21:57:09.64なるほど。確かにそうですね。
次を書き込む為の条件を調査してみます。
と言っても、全然あてはないのですが...
0094名無しさん@お腹いっぱい。
2014/07/29(火) 21:58:16.930095名無しさん@お腹いっぱい。
2014/07/29(火) 23:52:07.440096名無しさん@お腹いっぱい。
2014/07/30(水) 05:32:01.130097名無しさん@お腹いっぱい。
2014/07/30(水) 06:34:45.00特定したならパッチを投げてあげてくれ。
0098名無しさん@お腹いっぱい。
2014/07/30(水) 09:38:00.19どっかに買いてないですかね?
Ubuntuと同じデスクトップでいいので
0099.
2014/07/30(水) 10:04:14.79普段はmateかlxdeだし。
0100名無しさん@お腹いっぱい。
2014/07/30(水) 11:17:09.13ログインマネージャーは使ってますか?
0102名無しさん@お腹いっぱい。
2014/07/30(水) 13:00:03.13gdm 入れると gnome2 がほぼ全部入ってしまうけど気にしない、と言うスタンスでしたっけ。
010480
2014/07/30(水) 13:18:52.10作ったソフトに関係なく、 4KB を越える EPS を貼ると、必ずフリーズする事がわかりました。
4KB 未満の EPS ならフリーズしません。また、4KB を越えても jpeg と png はフリーズしませんでした。
>>96
原因は送った先にあると言うことでしょうか?
FreeBSD の ghostscript9 が win や linux のと違う振る舞いをする、とかですか?
0105名無しさん@お腹いっぱい。
2014/07/30(水) 13:19:11.62http://www.freebsd.org/doc/ja/books/handbook/x11-wm.html
とか
0106名無しさん@お腹いっぱい。
2014/07/30(水) 13:22:50.59サイズを4KBの倍数になるようパディングしたら正常に動作したりして
010784
2014/07/30(水) 14:25:05.34力技を使えばできるよ。
まず、インストール用に配布されてるISOイメージの中で一番でっかいのをDVD-RAMに焼く。
こいつには(ちょっと古いしい色々足りないけど)Xとかある程度のpkgが含まれていて、
bsdconfigにもちゃんとCD/DVDからインストールするメニューがある。
もっともネット未接続だとpkg bootstrapがWebを観にいって失敗するんだが...
実はDVD上にも(ちょっと古いけど)pkgをtxz化したファイルが存在するので、
/etc/pkg/FreeBSD.confを書き換えてローカルファイルを読み込むように設定した上で、
名前も変更してファイル置いとけば、
pkg bootstrapも成功してDVD内の全pkgをインストールできるようになるよ。
正直オススメはしないが。
0108名無しさん@お腹いっぱい。
2014/07/30(水) 19:31:52.29以下想像:
パイプかなんかで送っててパイプのバッファサイズが4KBしかない。
そこにwrite一発でファイル全体を送ってしまって、
書けた量を確認せず、waitでそのパイプ先の終了を待っている。
パイプ先は次の4KBが来るのを待っている。
0109104
2014/07/30(水) 20:56:02.85その場合、直すべきは一発でファイル全体を送っているところでしょうか?
LibreOffice の source にバグがある?
0110名無しさん@お腹いっぱい。
2014/07/30(水) 20:57:06.72関連しそうなとこは
filter/source/graphicfilter/ieps/ieps.cxx の RenderAsBMPThroughGS() で、
gsのコマンドライン作って、RenderAsBMPThroughHelper() を呼んで、
中で runProcessWithPathSearch() でプロセス作って、
osl_writeFile() で pBuf 内のデータを nBytesRead バイトだけ書き込んでる。
sal/osl/unx/file.cxx 内の osl_writeFile() は書けたバイト数を管理してるように読める。
なので、デバッガかデバッグプリントつっこんで、
nBytesRead が正しいファイルサイズになってるかどうか調べてみたらいいんじゃないかな。
で、これが 4096 とかになってたら、その原因を探っていけばいい。
EPSを読むところがおかしいという可能性がある。
俺は今自由に動かせる 10-R がないので、これ以上は無理。
0111名無しさん@お腹いっぱい。
2014/07/30(水) 21:19:56.870112104
2014/07/31(木) 02:13:19.12わかりました。その辺り調べてみます。
ようやく原因が絞れて希望が出てきました。
>俺は今自由に動かせる 10-R がないので、これ以上は無理。
ちなみに、私の今のテスト環境は 9.3R です。
LibreOffice 4.2.5.2 がフリーズするのは 10.0R も 9.3R も同じでした。
0113名無しさん@お腹いっぱい。
2014/07/31(木) 10:11:29.46面白そうなんで自分も見てみた。
RenderAsBMPThroughHelper()って、これダメじゃないか?
osl_writeFile()に渡してる引数&nCountでwrite()で書けたバイト数を貰ってくるが、
パイプから読むのは
if (nCount == nBytesRead)
の場合だけじゃん。
nCount != nBytesReadのときは子プロセスの出力読まずに終了待ちしようとするみたいだし。
0114104
2014/07/31(木) 11:31:27.04>面白そうなんで自分も見てみた。
ありがとうございます。自分はC言語が得意ではないので助かります。
>RenderAsBMPThroughHelper()って、これダメじゃないか?
>osl_writeFile()に渡してる引数&nCountでwrite()で書けたバイト数を貰ってくるが、
>パイプから読むのは
>if (nCount == nBytesRead)
>の場合だけじゃん。
>nCount != nBytesReadのときは子プロセスの出力読まずに終了待ちしようとするみたいだし。
この問題で、4KB未満のEPSファイルではフリーズせず、
4KBを越えるとフリーズするのが説明できるでしょうか?
また、修正案はあるでしょうか?
いただければ、反映させて LibreOffice を make して試してみます。
0115名無しさん@お腹いっぱい。
2014/07/31(木) 11:32:55.41Ubuntuと同じって言っても...
GTK+3系のにしたいのなら、PC-BSDにでもしたら?
FreeBSDをPC-BSDにする方法は以下のURL
http://wiki.pcbsd.org/index.php/Turn_FreeBSD_into_PC-BSD%C2%AE
0116名無しさん@お腹いっぱい。
2014/07/31(木) 12:02:21.000117名無しさん@お腹いっぱい。
2014/07/31(木) 12:19:55.30> 修正案はあるでしょうか?
丸投げしすぎ。
どの言語であれ、ブレークポイント掛けてデバッガでトレースしていくか、
printfなりなんなりをつっこんで、ちまちまデバッグしていくのが、発見者の努め。
言語による差異なんてほとんどない。
0118名無しさん@お腹いっぱい。
2014/07/31(木) 12:21:34.53って、自分では何やったんだよ。
0119名無しさん@お腹いっぱい。
2014/07/31(木) 12:52:06.14違う。俺が書いたURLを見てみな。
FreeBSDをインストールしたあとに、PC-BSDやTrueOSにするには、どうしたら良いのかが書いてある。
別にzfsにする必要はない。
0120名無しさん@お腹いっぱい。
2014/07/31(木) 13:21:55.34Ubuntuは無理なのでGnome shellになると思いますが
まっさらな状態からなので、PC-BSDにしたいのならPC-BSD入れます
FreeBSD2.1から使ってる頭から見るとPC-BSDはかなり違うので
出来ればFreeBSDにUnityみたいなインターフェイスを入れたいと思ったのですが…
もしかして、これを入れればいいのかな
/usr/ports/x11/gnome-shell
これだけだと、ビジュアルシェルだけしか入らないような
0121名無しさん@お腹いっぱい。
2014/07/31(木) 13:49:51.00自分も1.1時代から遊んでいますよ。
PC-BSDも10系になってからports,pkgを積極的に使うようになっています。
ですから、さほど違和感があるってほどじゃないと思いますよ。
Unityは無理ですが、Gnome3やCinnamonならPC-BSDのports treeを持ってきてbuildしたり、先に示したリンク中にあるpkgのreposなどを追加してpkg installで入れるという方法もあります。
pcdmはqt4関連を入れてから、gitでソースを持ってきてbuildしてあげればOKです。
まっさらなら、FreeBSDのportsとPC-BSDのportsとバージョンがバッティングしないはずなので、それでやってみるのはどうでしょう?
0122名無しさん@お腹いっぱい。
2014/07/31(木) 14:01:06.11PC-BSDでports, pkgが使えるのですか
それならまずPC-BSDをやってみようかな
0123名無しさん@お腹いっぱい。
2014/07/31(木) 15:10:19.62お節介ついでなのですが、PC-BSDのISOを落としてきてインストールすると、
/usr/local/pkg/repos/pcbsd.conf
のURLのバージョン部分が10-STABLEになっているんじゃないかと思います。
なんかフォルダ名を変えたみたいで、url=の部分を以下のように書き換えると
pkgが正常に動作するようになると思います。
url: "http://pkg.cdn.pcbsd.org/10.0-STABLEJULY2014/amd64"
あとPCDMはgitじゃなくてsvnでしたね...
0124名無しさん@お腹いっぱい。
2014/07/31(木) 18:06:09.96> また、修正案はあるでしょうか?
> いただければ、反映させて LibreOffice を make して試してみます。
と言うけど、Libre環境は仕事で必要なんじゃなかったっけ?
自分で修正してフリーズは回避できても、そういう場合
得てして潜在的に他にもおかしな処理があるかも知れない。
それが目に見えて分かるフリーズとかではなく、情報(計算数値など)
が微妙に間違って表示されるようなものだったとしたら、
仕事になんか安心して使えない。
0125名無しさん@お腹いっぱい。
2014/07/31(木) 19:19:49.7420055 a.out GIO fd 1 wrote 4096 bytes
...
20055 a.out RET write 1048576/0x100000
ってなる。write() の書けたバイト数は、RET の行を見ないといけないな。
wrote 4096 bytes は、その分だけ表示してるってだけの意味に考えた方がいい。
というわけで、振り出しに戻る。
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int nBytesWritten;
char *p = malloc(1024*1024);
memset(p, 'x', 1024*1024);
nBytesWritten = write(1, p, 1024*1024);
fprintf(stderr, "%d bytes\n", nBytesWritten);
return 0;
}
0126名無しさん@お腹いっぱい。
2014/07/31(木) 19:44:24.69パイプサイズ自体は4096byteのはずだけど、syscall内部でうまく計らってるのか??
0127名無しさん@お腹いっぱい。
2014/07/31(木) 19:52:42.01それはFreeBSDも同じ。問題はパイプの read() だろ。
0128名無しさん@お腹いっぱい。
2014/07/31(木) 20:09:51.92ちょっと前が 64kB
もっと前が 4kB
0129名無しさん@お腹いっぱい。
2014/07/31(木) 20:16:46.90生のktrace.outが欲しいわ。
タイムスタンプとかスレッドIDとか入ってるやつ。
でないと、CALLとRETの対応がつかなくて困る。
0130名無しさん@お腹いっぱい。
2014/07/31(木) 20:25:53.08http://www.atmarkit.co.jp/ait/articles/1209/07/news125.html
> 例えばFreeBSD 10-CURRENTでは、パイプで使われるページ可能な
> カーネルメモリを使ったパイプのバッファサイズは、4KBから64KB
> の間で可変になっている。
> write(2)でどれだけ一気に書きこんでも、read(2)で読み込まれる
> サイズの上限が64KBに制限されている
0131名無しさん@お腹いっぱい。
2014/07/31(木) 22:11:49.30LibreOfficeですらこんな糞コーディングしちゃってることのがショックだ。
0132名無しさん@お腹いっぱい。
2014/07/31(木) 22:12:41.660133名無しさん@お腹いっぱい。
2014/07/31(木) 22:33:18.300134名無しさん@お腹いっぱい。
2014/07/31(木) 22:47:06.92ttp://docs.libreoffice.org/filter/html/ieps_8cxx_source.html#l00285
これか。
306行目でパイプ閉じてるから、向こうも書けなくなって落ちるのを期待してるのかもしれん。
落ちてくれない相手だと終了待ちで止まることになるかもしれんが……この可能性は低い、かな。
で、これだと書き込み中に相手プログラムがパイプに応答返してきた場合は、
受け取りしないからパイプバッファが足りなくなってエラーまたはデッドロックだな。
osl_writeFileとかのパイプバッファ溢れの挙動がよく分からんけど、
この周辺にprintfデバッグ仕込んで走らせれば何が起きてるかは分かるね。
あとosl_writeFileのソースが見つからないけど、この中で分割書き込みしてあるかどうかかな…
>>125
write単発4KBで止まってるならその周辺って事で戻ってねぇと思うけど
>>131
OOoからの派生だが、OOoのコード(安定性含む)って評判良かったか?
マシなコードにするって目標が合っても、それが追いつくかどうかは別の話だと思う。
■ このスレッドは過去ログ倉庫に格納されています