The FreeBSD Project
https://www.freebsd.org/ja/
前スレ
FreeBSDを語れ Part47
https://mevius.2ch.net/test/read.cgi/unix/1507827321/
FreeBSDを語れ Part47 (再利用のため実質Part48)
https://mevius.2ch.net/test/read.cgi/unix/1508085628/
関連スレ
初心者もOK! FreeBSD質問スレッド その123
https://mevius.2ch.net/test/read.cgi/unix/1522192115/
探検
FreeBSDを語れ Part49
■ このスレッドは過去ログ倉庫に格納されています
1デーモン君
2019/09/06(金) 20:47:50.692019/09/11(水) 17:47:22.55
おまえ、Linux板に行った方がいいんじゃね?
2019/09/11(水) 17:57:58.06
きっとLinux板で爪弾きにされて流れてきたんだろう
かわいそうに
かわいそうに
2019/09/11(水) 18:20:22.55
FreeBSDは人材不足でもう保守できなくなっている。
GPLが嫌いだからこの板にいたがもう勝負は決したようだ。
GPLが嫌いだからこの板にいたがもう勝負は決したようだ。
2019/09/11(水) 18:34:18.43
後はグーグルが買ってダメにして
マイクロソフトがおいしくいただく、とw
マイクロソフトがおいしくいただく、とw
2019/09/11(水) 18:34:54.72
きちんと保守できてるのはOpenBSDだろ。FreeBSDはもうオワコンかもな。
2019/09/11(水) 19:17:59.17
OpenBSDにはどこの金が入ったんだよ
2019/09/11(水) 20:26:51.81
保守状況を網羅している58が巨額の寄付をしたに決まっている
2019/09/11(水) 21:04:22.54
スパコンで負けモバイルで負け
デスクトップPCはそれ自体が縮小
最後の砦だったIAサーバーもDocker全盛
jailを上手く宣伝できてたらなー
デスクトップPCはそれ自体が縮小
最後の砦だったIAサーバーもDocker全盛
jailを上手く宣伝できてたらなー
2019/09/11(水) 21:14:36.34
勘違いしてる人がいるな。金で解決する問題じゃない。
穴のないコードを書こうと意識しているかどうか。
複雑でわかりにくいコードを嫌い、シンプルでバグのないコードに変えていこうとするメンバーが集まっているかどうか。
穴のないコードを書こうと意識しているかどうか。
複雑でわかりにくいコードを嫌い、シンプルでバグのないコードに変えていこうとするメンバーが集まっているかどうか。
2019/09/11(水) 21:23:18.37
そんな意識の高い人達ってかっこいいですね。
FreeBSD Projectはどうなんでしょうか。
FreeBSD Projectはどうなんでしょうか。
2019/09/12(木) 00:18:22.91
>>61
有力なパトロンがつかなかったのが痛いね
有力なパトロンがつかなかったのが痛いね
2019/09/12(木) 01:42:39.86
どうなるの(´;ω;`)
2019/09/12(木) 05:27:59.03
個人商店のO
一応組織のF
カネを突っ込んでコントロールするならOの方がやりやすいな
googleがカネやクビを突っ込むとロクなことにならん
一応組織のF
カネを突っ込んでコントロールするならOの方がやりやすいな
googleがカネやクビを突っ込むとロクなことにならん
2019/09/12(木) 05:39:38.75
まずportsやmakeの複雑で意味がないコードを棄てたら?
2019/09/12(木) 06:47:45.56
例えば?
2019/09/12(木) 07:47:20.47
2019/09/12(木) 07:55:09.69
>>69
してその心は?
してその心は?
71名無しさん@お腹いっぱい。
2019/09/12(木) 08:01:13.22 iXsystemがパトロンやなかたけ?
YahooはLinuxに逝ってもた
YahooはLinuxに逝ってもた
2019/09/12(木) 08:04:02.74
2019/09/12(木) 08:10:33.30
>>69
具体的な代替案は?
具体的な代替案は?
2019/09/12(木) 08:48:07.72
>>73
どうせ ports 経由の local/ はGNUでベタベタだろ
local/ にGNUの最低限の環境を突っ込んで後はぃぬと同じ
OSに mk/* なんて全く役に立ってないんだし 全廃でおk
どうせ ports 経由の local/ はGNUでベタベタだろ
local/ にGNUの最低限の環境を突っ込んで後はぃぬと同じ
OSに mk/* なんて全く役に立ってないんだし 全廃でおk
2019/09/12(木) 08:52:50.84
>>74
その結果既存のユーザーにどんなメリットがある?
その結果既存のユーザーにどんなメリットがある?
2019/09/12(木) 09:25:58.48
>>74
最低限の環境とは?
最低限の環境とは?
2019/09/12(木) 10:50:01.76
>>62
というか数万、数千万項目の単体テストなんてお金貰わないと面倒でやってられないんだよ。
意識の問題ではなく品質が低いのはそれが理由。
バグ報告してたも碌に対応しないような輩がテストなんかしてるわけがない。
というか数万、数千万項目の単体テストなんてお金貰わないと面倒でやってられないんだよ。
意識の問題ではなく品質が低いのはそれが理由。
バグ報告してたも碌に対応しないような輩がテストなんかしてるわけがない。
2019/09/12(木) 13:11:16.53
2019/09/12(木) 14:14:07.32
2019/09/12(木) 14:14:24.05
民間の開発ならどこもやってるよ。そもそもやらないと納品できないだろう。
2019/09/12(木) 14:16:10.79
2019/09/12(木) 14:27:12.15
一方Theoはstrlcpyの使用を義務づけた
(GNU的には批判有り)
(GNU的には批判有り)
2019/09/12(木) 14:34:03.89
GNUのやつらはstrlcpyが嫌いだろうねw
共産主義が宗教を嫌う宗教と同じものってことに似てるんだw
共産主義が宗教を嫌う宗教と同じものってことに似てるんだw
2019/09/12(木) 14:49:49.26
2019/09/12(木) 14:52:44.84
>>84
おいらが煩雑だと感じるものを一般ユーザが使える分けないんだよ
おいらが煩雑だと感じるものを一般ユーザが使える分けないんだよ
2019/09/12(木) 15:22:45.84
>>85
portsが煩わしいなら/usr/portsを削除するか、インストール時にportsを選択しなければいい。
FreeBSDにはバイナリパッケージの配布もあるし、貴殿の様な達人なら野良ビルドでも十分実用的な環境を構築できるだろう。
但し一つだけ声を大にしても絶対通らないことがある。それは個人の独断で不特定多数のports使用権を奪う事。
一個人のエゴでユーザーの選択の余地を無くしてしまう事にはあまり賛成出来ない。
どうしても実現したいのであれば、貴殿がプロジェクトの重鎮になるか、フォークして独自OSを作るしかない。
portsが煩わしいなら/usr/portsを削除するか、インストール時にportsを選択しなければいい。
FreeBSDにはバイナリパッケージの配布もあるし、貴殿の様な達人なら野良ビルドでも十分実用的な環境を構築できるだろう。
但し一つだけ声を大にしても絶対通らないことがある。それは個人の独断で不特定多数のports使用権を奪う事。
一個人のエゴでユーザーの選択の余地を無くしてしまう事にはあまり賛成出来ない。
どうしても実現したいのであれば、貴殿がプロジェクトの重鎮になるか、フォークして独自OSを作るしかない。
2019/09/12(木) 15:33:35.38
なるほどこれは危険だ。セキュリティ重視のLinuxで実装に反対されるのもうなずける
https://ja.wikipedia.org/wiki/Strlcpy
strlcpyが危険な例:
char cmd[] = "rm *.bak";
char buf[5];
strlcpy(buf, cmd, sizeof(buf));
system(buf);
(sizeof(buf) が5であるため、最初の5-1=4文字しかコピーされず、"rm *" が実行されることになります)
https://ja.wikipedia.org/wiki/Strlcpy
strlcpyが危険な例:
char cmd[] = "rm *.bak";
char buf[5];
strlcpy(buf, cmd, sizeof(buf));
system(buf);
(sizeof(buf) が5であるため、最初の5-1=4文字しかコピーされず、"rm *" が実行されることになります)
2019/09/12(木) 15:34:41.83
>>85
貴殿程の知識と情熱を持ってすれば難しいことではないはず
貴殿程の知識と情熱を持ってすれば難しいことではないはず
2019/09/12(木) 15:44:44.02
そうしてこのまま何も変えずに
だらだら長くやってたものだけが慣れてるというだけで使うものになっちまうんだよな。
ま、どうでもいいけど。
だらだら長くやってたものだけが慣れてるというだけで使うものになっちまうんだよな。
ま、どうでもいいけど。
2019/09/12(木) 16:06:55.49
>>89
いくら素晴らしい知識や技術、理念を持っていても民意を得られなければ絵に書いた餅、宝の持ち腐れである
いくら素晴らしい知識や技術、理念を持っていても民意を得られなければ絵に書いた餅、宝の持ち腐れである
2019/09/12(木) 17:32:00.01
2019/09/12(木) 17:37:21.97
2019/09/12(木) 18:07:23.80
なら金をもらえないやり方でどうぞ
2019/09/12(木) 18:10:36.20
金は後からついて来る、か。
美しいな。
美しいな。
95名無しさん@お腹いっぱい。
2019/09/12(木) 18:11:24.86 別れはいつもついてくる
幸せの後ろをついてくる
幸せの後ろをついてくる
2019/09/12(木) 18:53:37.04
Cの文字列処理ライブラリは何とかした方が良いよな…
少なくとも
struct String {
size_t length;
char *string;
};
を引数に持つ文字列処理ライブラリを標準に含めるべき
そうすれば不幸な事故はかなり防げるはず
少なくとも
struct String {
size_t length;
char *string;
};
を引数に持つ文字列処理ライブラリを標準に含めるべき
そうすれば不幸な事故はかなり防げるはず
2019/09/12(木) 19:10:25.27
2019/09/12(木) 20:44:24.93
2019/09/12(木) 20:53:03.34
2019/09/12(木) 21:08:09.78
2019/09/12(木) 21:08:29.17
>>80
数千万項目とかどんだけでかいシステムなんだよw
数千万項目とかどんだけでかいシステムなんだよw
2019/09/12(木) 21:28:23.82
蜂の巣で草
2019/09/12(木) 21:41:45.41
>>87
そんなコードを書くやつなら消えたほうが良いだろw
そんなコードを書くやつなら消えたほうが良いだろw
2019/09/12(木) 22:46:06.55
>>96
Golangを使うんや
Golangを使うんや
2019/09/12(木) 23:01:20.45
日本語メーリングリストもこのくらい活発になればいいのにねw
2019/09/12(木) 23:13:54.07
FreeBSDスレなのにCを毛嫌いしてる奴が多くてワロタw
そんなにC使いたくないならWindowsでも使ってろ
そんなにC使いたくないならWindowsでも使ってろ
2019/09/12(木) 23:57:04.30
>>95
JASRACの方からきました
JASRACの方からきました
2019/09/13(金) 00:05:22.74
Goよいよね
2019/09/13(金) 00:15:07.90
2019/09/13(金) 00:23:22.68
>>96
Pascalのstring型が内部的にそうなってたと思う。
Pascalのstring型が内部的にそうなってたと思う。
2019/09/13(金) 00:38:23.48
FreeBSDな人たちはstd::stringとか使わないの?
2019/09/13(金) 00:52:50.79
2019/09/13(金) 00:53:55.14
crystal使いはいないの?
俺も使ってない
俺も使ってない
2019/09/13(金) 03:46:38.01
>>111
使うよ(^o^)
使うよ(^o^)
2019/09/13(金) 04:08:39.23
>>106
そんなLinusさんみたいな事云わんでも(笑)
そんなLinusさんみたいな事云わんでも(笑)
116名無しさん@お腹いっぱい。
2019/09/13(金) 04:47:59.22 perl で何でもかんでもやってまーす
2019/09/13(金) 08:44:45.65
ファミリーベーシックで何でもかんでもやってまーす
2019/09/13(金) 10:06:11.87
COBOLはまだまだイケるぞ
経産省が棄てたんだからw
経産省が棄てたんだからw
119名無しさん@お腹いっぱい。
2019/09/13(金) 11:27:02.292019/09/13(金) 11:51:49.70
121名無しさん@お腹いっぱい。
2019/09/13(金) 12:05:51.57 mallocで管理されるsizeはバイト単位やろ
wchar_t が 32bit とか言う話か?
wchar_t が 32bit とか言う話か?
2019/09/13(金) 12:23:28.78
2019/09/13(金) 12:29:36.21
>>101
碌にテストなんてやったことないというのがバレバレだなw
碌にテストなんてやったことないというのがバレバレだなw
2019/09/13(金) 12:35:23.45
無駄なチェックを端折れて高速な処理を書けるからC使ってるのに、
遅い堅牢ならライブラリをC、C++に用意しろと言うような低レベルPGなら元からC、C++使うなってことだな。
遅い堅牢ならライブラリをC、C++に用意しろと言うような低レベルPGなら元からC、C++使うなってことだな。
2019/09/13(金) 13:48:35.80
今現在堅牢な高級言語は生き残ってるか?
2019/09/13(金) 14:06:11.98
堅牢な高級言語しか生き残ってないだろw
アドレスを直接扱える危険な言語って
たくさんの言語のなかどの程度あると思う?
アドレスを直接扱える危険な言語って
たくさんの言語のなかどの程度あると思う?
2019/09/13(金) 14:10:10.06
2019/09/13(金) 14:20:06.52
2019/09/13(金) 14:28:27.29
>>124
ならCじゃなくてアセンブラ使ってろよ
ならCじゃなくてアセンブラ使ってろよ
130名無しさん@お腹いっぱい。
2019/09/13(金) 17:39:53.552019/09/13(金) 19:10:51.35
OpenBSDのportsに入ってたパッチw
--- texk/dvipsk/writet1.c.orig
+++ texk/dvipsk/writet1.c
@@ -1449,7 +1449,9 @@ static void t1_check_unusual_charstring(void)
*(strend(t1_buf_array) - 1) = ' ';
t1_getline();
+ alloc_array(t1_buf, strlen(t1_line_array) + strlen(t1_buf_array) + 1, T1_BUF_SIZE);
strcat(t1_buf_array, t1_line_array);
+ alloc_array(t1_line, strlen(t1_buf_array) + 1, T1_BUF_SIZE);
strcpy(t1_line_array, t1_buf_array);
t1_line_ptr = eol(t1_line_array);
}
--- texk/dvipsk/writet1.c.orig
+++ texk/dvipsk/writet1.c
@@ -1449,7 +1449,9 @@ static void t1_check_unusual_charstring(void)
*(strend(t1_buf_array) - 1) = ' ';
t1_getline();
+ alloc_array(t1_buf, strlen(t1_line_array) + strlen(t1_buf_array) + 1, T1_BUF_SIZE);
strcat(t1_buf_array, t1_line_array);
+ alloc_array(t1_line, strlen(t1_buf_array) + 1, T1_BUF_SIZE);
strcpy(t1_line_array, t1_buf_array);
t1_line_ptr = eol(t1_line_array);
}
2019/09/13(金) 19:11:33.33
2019/09/13(金) 19:57:49.49
>>130
Cなら
if ( checkfunc( func ) ) ...
と1行で書けるから大したことなさそうに見えるけど、これをアセンブラで書くと、
汎用レジスタ全部退避して、戻りアドレス設定して、新しいスタックポインタ設定して、
チェック処理を実行して、戻る直前に汎用レジスタ全部戻してリターンするので、
毎回こんだけの処理させてわざわざ遅くするのが嫌になるんだよね。
全レジスタの退避と復帰を毎回実行させるのってほんとに無駄に感じる。
本当は、破壊されてもいいレジスタは関数ごとに異なるはずなので、破壊されて困るレジスタだけ退避
するようにすれば最適化されていいんだけど、そうするとどこかを書き換えたとき、元に戻さないといけない
レジスタができて、それの退避を忘れただけで吹っ飛ぶ。
Cなら
if ( checkfunc( func ) ) ...
と1行で書けるから大したことなさそうに見えるけど、これをアセンブラで書くと、
汎用レジスタ全部退避して、戻りアドレス設定して、新しいスタックポインタ設定して、
チェック処理を実行して、戻る直前に汎用レジスタ全部戻してリターンするので、
毎回こんだけの処理させてわざわざ遅くするのが嫌になるんだよね。
全レジスタの退避と復帰を毎回実行させるのってほんとに無駄に感じる。
本当は、破壊されてもいいレジスタは関数ごとに異なるはずなので、破壊されて困るレジスタだけ退避
するようにすれば最適化されていいんだけど、そうするとどこかを書き換えたとき、元に戻さないといけない
レジスタができて、それの退避を忘れただけで吹っ飛ぶ。
2019/09/13(金) 20:16:21.30
>>133
三行にまとめてくんないと、1ミリも理解できないんだけど
三行にまとめてくんないと、1ミリも理解できないんだけど
2019/09/13(金) 20:29:34.91
素敵なコンパイラなら4行くらいにまとめてくれないかな....
2019/09/13(金) 21:01:24.16
2019/09/13(金) 21:21:08.17
確かMS-C6.0の頃か?(うろ覚え)破壊しないレジスタは退避しなかった筈だが?w
十数年前からメジャーどこのコンパイラは短い関数なら勝手にインライン展開するのが殆どだし
いつの時代の話をしてるんだかさっぱり
十数年前からメジャーどこのコンパイラは短い関数なら勝手にインライン展開するのが殆どだし
いつの時代の話をしてるんだかさっぱり
2019/09/13(金) 21:24:57.47
流し読みで読み飛ばしちまったけんども
アセンブラでプロシージャ書いたとこでコーダーがスタックポインタを設定する事なんて先ずありえんwww
アセンブラでプロシージャ書いたとこでコーダーがスタックポインタを設定する事なんて先ずありえんwww
2019/09/13(金) 21:28:15.19
2019/09/13(金) 22:25:06.94
知的障害者きてんね
2019/09/13(金) 22:35:27.85
支離滅裂さからは糖質の臭いがする
2019/09/13(金) 22:52:56.29
>>136
俺は一桁ロリに mount -f したい
俺は一桁ロリに mount -f したい
2019/09/13(金) 22:57:17.03
さすがに一桁はないわ
2019/09/14(土) 00:36:34.21
2019/09/14(土) 00:41:44.98
ちなみにC++では配列の各要素に対してデストラクタを呼ばなくちゃいけない都合上サイズが格納されている
146名無しさん@お腹いっぱい。
2019/09/14(土) 05:03:45.80 >>142
おまわりさんこの人
おまわりさんこの人
2019/09/14(土) 05:13:55.38
童貞です
2019/09/14(土) 06:22:47.86
www
2019/09/14(土) 10:12:55.40
>>133
レジスタ退避と復帰は専用の命令が有るけど、CPUは実際には見えてる以上にレジスタを持ってるから毎回律儀にメモリに退避とかしてないよ
レジスタ退避と復帰は専用の命令が有るけど、CPUは実際には見えてる以上にレジスタを持ってるから毎回律儀にメモリに退避とかしてないよ
150名無しさん@お腹いっぱい。
2019/09/14(土) 10:53:54.50 https://mao.5ch.net/test/read.cgi/linux/1560665525/
286
俺はもうWindowsでVirtualBoxは諦めてるんだが、
FreeBSDとかSolarisとかどうしてもVirtualBoxでしか動かせなくて
必要なときはMacを使ってる。
FreeBSDとかSolarisがHyperVでも動かせるなら良いんだけど
どうもうまく行かない。
286
俺はもうWindowsでVirtualBoxは諦めてるんだが、
FreeBSDとかSolarisとかどうしてもVirtualBoxでしか動かせなくて
必要なときはMacを使ってる。
FreeBSDとかSolarisがHyperVでも動かせるなら良いんだけど
どうもうまく行かない。
151名無しさん@お腹いっぱい。
2019/09/14(土) 11:01:09.062019/09/14(土) 13:04:16.01
>>133は、アセンブラでコード書いてると自然にそうなるってこと。
ルーチン内ではできるだけ汎用レジスタを使って処理したほうが早くなるから、最初にメモリから必要なデータを持ってきた後は
極力レジスタだけで処理するように書く。後からその処理の途中に別の処理を入れることになって、別の関数を挟んだとすると
レジスタの値を変えてはいけないから、その関数に入ったところで全レジスタを待避し、関数の終わりで戻さないといけなくなる。
Cで同じことをしてアセンブラに展開したコードを見ると、変数の値はメモリに置いておき、必要になったらレジスタにロードして
計算したら結果をまたメモリに戻すという処理をしている。後から途中に関数が追加されても、その関数はメモリから値を
持ってきて処理するからレジスタを退避する必要はない。関数に渡すパラメータなどもスタックに入れて渡すから
同じくレジスタを退避しなくて良い。
しかしこのやり方ではメモリとレジスタ間のセーブ/ロードが頻繁に起こるので、アセンブラのソースで見るといかにも効率が悪くて
遅いとわかる。当たり前だがメモリ - レジスタ間のセーブ/ロードはレジスタ内だけの演算よりずっと遅い。
そうするくらいなら、必要なときだけレジスタを退避・復帰させた方がまし。さらに、これがforなどのループ内で使われた場合、
この遅さがプログラム全体の遅さになる。Cコンパイラのコード生成は、アセンブラから見れば遅くて無駄だらけに見える。
その分、ソースが見やすいから便利なんだけれども。
ルーチン内ではできるだけ汎用レジスタを使って処理したほうが早くなるから、最初にメモリから必要なデータを持ってきた後は
極力レジスタだけで処理するように書く。後からその処理の途中に別の処理を入れることになって、別の関数を挟んだとすると
レジスタの値を変えてはいけないから、その関数に入ったところで全レジスタを待避し、関数の終わりで戻さないといけなくなる。
Cで同じことをしてアセンブラに展開したコードを見ると、変数の値はメモリに置いておき、必要になったらレジスタにロードして
計算したら結果をまたメモリに戻すという処理をしている。後から途中に関数が追加されても、その関数はメモリから値を
持ってきて処理するからレジスタを退避する必要はない。関数に渡すパラメータなどもスタックに入れて渡すから
同じくレジスタを退避しなくて良い。
しかしこのやり方ではメモリとレジスタ間のセーブ/ロードが頻繁に起こるので、アセンブラのソースで見るといかにも効率が悪くて
遅いとわかる。当たり前だがメモリ - レジスタ間のセーブ/ロードはレジスタ内だけの演算よりずっと遅い。
そうするくらいなら、必要なときだけレジスタを退避・復帰させた方がまし。さらに、これがforなどのループ内で使われた場合、
この遅さがプログラム全体の遅さになる。Cコンパイラのコード生成は、アセンブラから見れば遅くて無駄だらけに見える。
その分、ソースが見やすいから便利なんだけれども。
2019/09/14(土) 13:06:51.37
2019/09/14(土) 13:08:22.67
>>152
頼むから今時のまともなコンパイラ使ってから語ってくれ…
頼むから今時のまともなコンパイラ使ってから語ってくれ…
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 [ぐれ★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★2 [BFU★]
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★3 [BFU★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★2 [BFU★]
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 [Hitzeschleier★]
- 政府、株式の配当など金融所得を高齢者の医療保険料や窓口負担に反映する方針を固めた [バイト歴50年★]
- 中国高官と話す外務省局長の表情、やばい ★2 [175344491]
- 【朗報】高市、中国からの日本行き空路49万件キャンセルを達成🤩オーバーツーリズム対策の手腕が光る [359965264]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 【スパイト行動】俺のコ,ードを入れれば1500円貰えるのに、俺に1500円をやりたくないからやらない ⇐これが日本人ってやつか… [201193242]
- 日本政府「高市総理の発言は問題ないと伝え、中国総領事のSNS投稿は問題があると中国に伝えました😊」 [931948549]
- 小野田経済安保相「すぐに経済的威圧するところへの依存はリスク」😲 [861717324]
