Google&MS「バグの70%はC/C++。Rustにする」

1仕様書無しさん
垢版 |
2021/05/02(日) 17:14:48.90
グーグルやMSが「Rust」言語でOS開発、背景に国家による諜報活動の影


 1970年代初めにUNIXの開発にC言語が採用されて以来、OS開発はCやその後継であるC++の独壇場だった。グーグルはこれまでもAndroidの開発にJavaやKotlinを採用していたが、カーネルやデバイスドライバーなどOSの下位レイヤーの開発にはC/C++しか使ってこなかった。RustはC/C++と同様に下位レイヤーの開発に使用する。

 グーグルは数千万行にも及ぶ既存のC/C++のコードを書き換えるのは不可能としており、新規のコードの開発にのみRustを適用する方針だ。それでもOS開発の常識が数十年ぶりに変わるのだけは間違いない。

 RustはWebブラウザー「Firefox」を開発する米Mozilla Foundation(モジラ財団)が開発を主導するプログラミング言語だ。開発が始まったのは2006年で、安定版であるバージョン1がリリースされたのも2015年のことだ。まだ新しいプログラミング言語をグーグルやマイクロソフトがOS開発に採用する理由は、OSのセキュリティー強化にある。

 Rustは、プログラムに必要なメモリーの確保や解放に関連するバグが生じない「メモリー安全」が保証されたプログラミング言語である。それに対してこれまでのOS開発に使われてきたC/C++は「大規模な開発においてメモリー安全なコードを記述することがほぼ不可能」(マイクロソフトのブログ「We need a safer systems programming language」より)なのだという。

脆弱性の70%がメモリー管理バグに起因

 グーグルによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに起因するという。同様にマイクロソフトも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関するバグに起因すると述べている。C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、Rustを採用するに至ったというわけだ。

https://xtech.nikkei.com/atcl/nxt/column/18/00692/042700054/
2021/05/02(日) 21:38:30.08
Javaみてーな宣伝するなw
2021/05/03(月) 09:21:44.25
バカはメモリを直接触る言語を使うな
2021/05/03(月) 11:41:35.14
Rust勉強しても使う機会ないから忘れてしまいそう
2021/05/03(月) 11:51:47.23
C++まともに使えてたら書きやすいよって勧められて勉強してみたら、めちゃくちゃエラー出るしめんどくさいしで悲しくなった
2021/05/03(月) 12:34:48.03
Javaは今からやるとパーと言われるらしいからやらないとしてRustの案件ってある?
7仕様書無しさん
垢版 |
2021/05/03(月) 15:55:02.50
>>6
あるけど概ね早稲田以上の学位が要るよ
2021/05/03(月) 16:03:36.52
>>6
案件は割とあるけど、Rustを要求するような所だから
学位が必要かはあんま見ないけど、要求スペックが概してずば抜けてる感じ
年俸もさらに高いけど
9仕様書無しさん
垢版 |
2021/05/03(月) 17:47:34.69
>>3
CSの学位取った頭いい奴が使ってこのザマなわけだけど
2021/05/03(月) 18:13:40.28
>>3
できらぁ!
2021/05/03(月) 21:30:37.63
C++を完全に理解してる人はこの世に1人もいないってばっちゃが言ってた
2021/05/03(月) 23:15:59.79
はっきり言えるのはRustは高学歴な若い人の開発言語
そしてJavaは低学歴なロートルクソジジイの開発言語

恐らく年収のレベルでJavaパーが手取り14万円(雑談スレの自己申告だから間違いない)でRustは150万円くらいだろう
2021/05/04(火) 06:38:49.40
だろうって
お前エンジニアじゃねーのかよ
エンジニアなら大体相場感くらい分かるだろ
ガキの妄想か?
2021/05/04(火) 09:23:34.87
逆にそれ以外に何があるねん
いちいち煽るなよ
2021/05/04(火) 09:52:13.13
>>12
Rustは外資のエリートが多いから年収10倍であってるよ
もっとも言語というより就業先の違いと言った方がいいかもしれない
2021/05/04(火) 09:54:02.24
外資のエリート(笑)だけど数倍はあるかもしれないけど10倍もないしJavaは普通に多いというか基本だよ
別にC++でも構わないけど
2021/05/04(火) 12:29:14.55
言語別年収ランキングでも見ればどの言語でも大きな差はない事くらい分かる
そもそも言語で年収とかアホ
プログラミング言語覚えるくらい誰にでもできる
プラスどういう範囲、どういう質で仕事できるか次第
フリーランスならね
会社員ならスキルというより所属企業によるとしか
2021/05/04(火) 12:54:27.46
結局どういう案件につくかだと思うけど、例えばMSでOS作りみたいな話になってくるとRustなんて膨大な要求知識の極一部でしかない
弱いやつがRust勉強してキャリアアップを目指すみたいなのは順序が逆
2021/05/04(火) 17:23:34.30
Java 使ってりゃいいのに変なプライド出す奴がおるからプロジェクトがメチャクチャになるんだよ
2021/05/04(火) 17:36:01.00
>>19
割り切って少数で作ればいいのにわけ分からん無能ヘルプを入れるからプロジェクトが炎上するんじゃん
2021/05/04(火) 20:03:12.39
眠い
2021/05/04(火) 21:27:18.68
高額な天才エンジニアばかりwなのにC++でメモリ管理すら出来ないのかよw
と正直思ってしまうレベル
Rustなんて採用するに値しないやろ・・・
2021/05/05(水) 00:29:50.54
そりゃ君が触ったことあるものよりずっと複雑で巨大なシステム作ってるからね
2021/05/05(水) 00:35:27.23
それ実際には天才でも何でも無いからってだけの話
所詮大したこと無い奴らが作っているんだよ
2021/05/05(水) 00:48:45.19
じゃあサクッと君も入社して2000万とか稼げば良いじゃん
2021/05/05(水) 07:59:35.79
Javaパーが発狂している真実か
2021/05/05(水) 08:03:32.38
JavaerってマジJava以外知らんヤツ結構居るからな
2021/05/05(水) 10:41:53.34
いや普通に色んな言語見てればjavaは無駄に文句言われてるのがわかるわ。
ほとんどのやつはそれ書く方が馬鹿なだけだろって文句ばっかだし。
2021/05/05(水) 10:58:22.36
当時使うに値しないクソ言語を無理矢理持ち上げたい感が似てるじゃない?
2021/05/05(水) 11:02:06.89
Rustって昔D言語が成しえなかったC/C++の後継って感がする
2021/05/05(水) 12:22:00.34
規模がでかくなれば指数的にデバッグも難しくなるわけで元からバグがあるとコンパイルできないような言語の方がありがたいよ
GoogleとかMSのエンジニアはたかがメモリバグとか言ってるやつとは視座が違う
2021/05/05(水) 12:39:51.06
そんなことしても無理やりコンパイル通すやり方が横行するだけだがな。
無理に禁止するやり方をSIerあたりが大好きなのはわかるが結果はお察しよ。
2021/05/05(水) 12:43:47.33
じゃあサクッと君も入社して2000万とか稼げば良いじゃん
なんでやんないの?
2021/05/05(水) 12:45:50.89
>>33
rustを理解できたくらいでサクッと入社できると思ってんの?馬鹿なの?
2021/05/05(水) 12:57:20.10
Googleに入社できないようなレベルの人がなんでGoogleが必要だと思って採用したものに文句つけてんの?お前に理解できないレベルってことなの明らかじゃん?馬鹿なの?
2021/05/05(水) 13:04:02.23
>>35
googleに入社できないと全部がgoogle以下だと思ってんのか。。こういう馬鹿はほんま有害だわ。
2021/05/05(水) 13:06:19.84
いや出来ないならそりゃ普通に以下だろw
人間としてどうとかは別だけどそれにしてもお前馬鹿とか言い出してるやん
2021/05/05(水) 13:07:50.85
そういうのをただの権威主義って言うんだよ。SIerに多いタイプだな。すげーばか。
2021/05/05(水) 13:10:41.10
でた権威主義w
じゃあGoogleのエンジニアより君できるんだ?へえーw

Googleってめちゃめちゃ実力主義だぞ高卒でも実力があれば問題ない
まあ知らんだろうけど
2021/05/05(水) 13:13:23.93
だからその実力主義でとっても間違った判断をたくさんしてるっつーの。。
angularの失敗、google+の失敗、androidの中途半端さ、googleglassの失敗。。
少しは現実を見ろ馬鹿。
2021/05/05(水) 13:16:12.71
入れないやつが言ってもね
少しは自分の現実を見ろ馬鹿w
2021/05/05(水) 13:17:53.28
だからそういうふうに、言ってることじゃなくて言ってる人間で判断するってのが
権威主義だって何回言ってもわからんのね。。だからバカって言われるんだよ。
2021/05/05(水) 13:20:34.85
うわ、だっさw
2021/05/05(水) 14:31:56.16
この種の権威バカと、とりあえず禁止するバカってのは異常なほど相性いいからな。。
2021/05/05(水) 16:16:23.08
>>16
Javaエンジニアで手取り14万円というやつがいるらしい
雑談スレで自分の不遇を力説してたから本当だと思う
2021/05/05(水) 17:57:43.30
>>40
その失敗の数を遥かに超える数の成功してるから
世界に冠たる大企業になってるんだが
無数にあるプロジェクトのうちの一部を挙げて何言ってんだか
2021/05/05(水) 19:38:56.33
エリートだろうが誰だろうとミスはするって認めるのがプログラミングの基本だろ
ミスったらリカバリー効きやすい言語に変えるのは普通じゃん、有能ならミスらないはずだから要らんとかバカかよ
2021/05/05(水) 19:43:21.61
やたらとJavaの話題が出てるけどRustとJavaって比較するもんじゃなくね?
Rustはネイティブだろ、あくまでもC/C++の代替品
2021/05/05(水) 20:15:49.01
人海戦術向け言語か少数精鋭向け言語かっていう対極的な位置にあるからじゃない?
2021/05/05(水) 20:43:55.92
>>6>>12
ここら辺の書き込みからしてそもそもエンジニアですらない素人の妄想だからな
NGNG?2BP(1000)

で、みんなRust使ったことある?
実際のところどうよ。学習コストが高いということでそこだけ心配なんだが。
2021/05/05(水) 21:06:53.44
まあ本当にRustでやりたい事があるとかじゃないと結構学習やり切るのは大変だと思うよ
他の言語と違ってうろ覚えだとコンパイラが全然通せないだろうし
2021/05/05(水) 21:21:40.09
>>46
あーやっぱりばかだ。失敗のが多いんだよ。リターンが途方もないだけで。
だからお前はバカなんだよ。
2021/05/05(水) 21:38:02.19
少なくともVueの開発者はAngularJSの頃開発に携わってた人らしいしな
分家がそれなりにシェアと得たってのはある意味功績なんじゃねーの?

世の中何にも残らなかったものなんて山ほどある
2021/05/05(水) 21:44:42.24
14万円のPGってベトナム人か何かかな?
56仕様書無しさん
垢版 |
2021/05/05(水) 21:54:00.78
Java全盛期の名残で、コピペができるだけのパソコン大先生がいまだに沢山いるんだよ
2021/05/06(木) 02:59:12.30
それはアセンブラの時代からいるわ。
58仕様書無しさん
垢版 |
2021/05/06(木) 11:59:03.16
合理化、無駄なコードを書かないとか言っているやつは
大量のコードを管理できない人よ

アセンブラで大規模プログラムかけるスキルとか、次元の違う管理能力が必須
Rustにしろ見えないバックエンドとかバイナリー解析とかドライバーなどの
APIやフレームワークを提供する側やアルゴリズムそのものを作れる人でないと
コピペのパッチワークで高級言語とかアプリ書いている人には無理だとおもわれ。
2021/05/06(木) 12:23:21.89
そもそも、学習はそんな大変でも無いだろ(一日二日でモノになるとは言わないが)
特に昨今は日本人が書いた日本語の文献も幾つもあるし
面倒な互換性等の問題も安定しているし
開発環境を整えるのも難しいわけでも無い


逆にrustの習得をネックに挙げる人がどんな言語を普段どれだけ使ってるのか気になる
本当に コピペができるだけのパソコン大先生 なレベルのが言ってるだけじゃね?
2021/05/06(木) 12:49:39.97
そりゃ表面だけなぞってテキトーにやるだけなら学習コストも高くないわ。
あえてなんでrustでやるのか?ってところまで学習するなら結局c/c++の学習も並行して行うことになる。
それを学習コスト低いとか言い切るやつは単なるバカだろ。
2021/05/06(木) 12:51:14.60
c/c++やってない奴がrustに移行するのってgoのGCが不満な奴くらいか?
2021/05/06(木) 13:04:02.99
なんかカッケー言語だし、c++置き換えるって話だしってので手を出す。
んで酷い目に遭う。
2021/05/06(木) 13:27:59.15
しーぷらぷらドロップアウター
ちんちんぶらぶらへ
64仕様書無しさん
垢版 |
2021/05/06(木) 13:28:27.91
move semantics ですらc++11の頃だぞ....
>本当に コピペができるだけのパソコン大先生 なレベルのが言ってるだけじゃね?
ガチで当たってるじゃねーかww
2021/05/06(木) 14:57:44.33
いや、本当にお前ら教えられるのかよって話だわ。。
そのコピペができるだけのパソコン大先生に教えることができるのか?って話だよ。

教える必要がないような職場ならそもそもrustなんか使う必要が全くないんだわ。
それをバカは理解できてない。
2021/05/06(木) 15:17:33.11
なんで急に自分の職場に導入する話になってんの?
2021/05/06(木) 15:21:04.73
パソコン大先生に逆らうと、折檻されちゃうよ
68仕様書無しさん
垢版 |
2021/05/06(木) 15:35:48.76
いやあああお尻ぺんぺんしないでえええええ
2021/05/06(木) 15:49:41.68
Rust100%にしたら、バグの原因はRust100%になるのではないか?
2021/05/06(木) 21:42:54.71
どのコース辿ってもバカが設計したらすべてダイナシになる
2021/05/06(木) 23:22:51.59
>>69
c++でバグが起きるから置き換えるのではなく、
70%がメモリに起因するバグだからメモリ安全性が高いRustを使うんだぞ
2021/05/07(金) 01:03:51.26
>>71
マジレスすんなや.....
アホの子が一生懸命考えた渾身のネタやぞ
2021/05/07(金) 01:08:56.03
>>66
導入する気ないバカは黙ってろ。関係のない世界の話だから。
2021/05/07(金) 02:43:49.17
そもそも勝手にパソコンの大先生がいる職場で頑張る話にされてるけどそれも決めつけでおかしいんだよな
自分がそうだからってみんな底辺だと思うなよ
2021/05/07(金) 08:16:04.42
javaパーかな
一生懸命考えた渾身のネタで必死に短文投稿
76仕様書無しさん
垢版 |
2021/05/07(金) 10:03:03.37
ポインタ範囲外とかも回避?
あ、ポインタ自体が無いのがトレンドなん?
2021/05/07(金) 13:55:21.09
普通にpanic起こすわ。
rustが支援するのはできる限り精的にオブジェクト確保させるようなシンタックスになってるってだけ。
nullポインタチェックもまともにできないような奴はrustで書く意味もわからんだろうし、
書いたら酷い目に遭うわ。
んでもってそういう当たり前のこともわからんバカが過大評価してる。
決して悪い言語ではないがバカに過大評価されすぎてるのが現状だわ。
78仕様書無しさん
垢版 |
2021/05/07(金) 14:04:04.90
前者はかなり回避できるんじゃかろうか
2021/05/07(金) 14:53:21.16
頑張って調べて書いたんだろうけど
全然見当外れな事言い出してて酷いぞ
2021/05/07(金) 15:13:04.59
バカはGCがあるGoでいんじゃね?いかにも次世代のJavaって感じで
RustはC++使いみたいに一部の技術オタと組み込みとかHPCみたいなマイナー層にのみ受け入れられるニッチな技術だよね
81仕様書無しさん
垢版 |
2021/05/07(金) 15:19:34.22
コンパイラの警告を無視する、高卒丸出しのやつがいるからな
2021/05/07(金) 15:52:30.34
>>79
まともに使ったことないバカは黙ってろ
83仕様書無しさん
垢版 |
2021/05/07(金) 17:35:18.01
unsafe使えば自由にメモリを破壊できるんじゃね?
C#もunsafeで破壊できんじゃね?
しらんけど
2021/05/07(金) 19:18:53.92
寝不足はこれだけ頭の働きを悪くする | SLEEP 最高の脳と身体をつくる睡眠の技術 | ダイヤモンド・オンライン
https://diamond.jp/articles/amp/121720

睡眠不足は脳に重大な影響 「あとで取り戻せる」は嘘|NIKKEI STYLE
https://style.nikkei.com/article/DGXMZO10215050S6A201C1000000/
85仕様書無しさん
垢版 |
2021/05/08(土) 06:33:16.58
google「安全なrust使います!」
俺ら「安全言うてたgoはどうした…」
2021/05/08(土) 07:21:20.91
元から Go はpython辺りの置き換え目的だっただろ...
仮にそれを知らなくても、GCついている時点で C/C++ と Rust とは別枠なのが分からんのはプログラマとして御里が知れるぞ
87仕様書無しさん
垢版 |
2021/05/08(土) 13:34:42.91
>>86
21世紀のcとか言ってたの知らんとかw
88仕様書無しさん
垢版 |
2021/05/08(土) 19:10:08.55
どこ情報?
「21世紀の近代的Cと比較される」とかはあっても、
Goを「21世紀のC」と言ってるのは謎な勘違いブログぐらいしか見当たらないけど?
2021/05/08(土) 19:29:04.00
ケントンプソン、ロブパイクってところでまあCと比較されるってのはわかる。
シンタックスもCと親和性高いし。
goはpythonとCの中間くらいの印象だわな。
2021/05/08(土) 19:46:42.03
lisp系やHaskellとかとも違うしPythonと違うけど、
Cともシンタックスだいぶ違わね?
比較にしやすい所ではあるけど
2021/05/09(日) 07:20:50.75
go は検索しづらいという意味でクソ
92仕様書無しさん
垢版 |
2021/05/09(日) 12:34:02.14
>>91
まさか go で検索してるわけじゃないよな?
93仕様書無しさん
垢版 |
2021/05/09(日) 12:34:56.47
>>90
c 作った人が開発に関わってて関数名まで同じようにしてるのに?
94仕様書無しさん
垢版 |
2021/05/09(日) 12:35:53.59
>>88
google
95仕様書無しさん
垢版 |
2021/05/09(日) 12:38:58.26
>>93
syntaxって意味分からんの??
2021/05/09(日) 12:49:03.58
結局Rustは成果あったって評価なのか?
2021/05/09(日) 12:56:11.61
まだわからんというところ。10年したらわかるんじゃね。
2021/05/09(日) 12:59:36.08
成果なら多々あるでしょ。それをどう見るかは別としても

正直、Rustに取り組む人間なんて良くも悪くも
学習意欲もあってぼちぼち頭もいい上に、それなりにプログラム経験があるから
Rustが良かったのか、単にRustを使える人間だけに絞ったのが良かったのかは結構微妙な気もする
2021/05/09(日) 17:05:35.90
この程度で成果あるというならscalaもhaskellも成果あるって言えると思うけど。
まあ同程度には成果あると言えるね。
100仕様書無しさん
垢版 |
2021/05/09(日) 19:53:39.49
ファイアフォックスは成果に入りますか?
2021/05/09(日) 19:58:32.34
WindowsとAndroidがRustに置換されたらとてもニッチとはいえないすごい成果になると思うが
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況