Google&MS「OSのバグ原因の70%はC/C++のメモリー管理に起因。もうこの言語使う限りバグを根絶するのは不可能。Rustに切り替えるわ」

1 : 2021/05/02(日) 17:18:28.89 ID:IJ/8H0mS0

グーグルや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/

2 : 2021/05/02(日) 17:19:31.41 ID:P2qSwsLZ0
phpで十分
29 : 2021/05/02(日) 17:42:12.64 ID:U0dLRjUtd
>>2
バグの温床でワロタ
31 : 2021/05/02(日) 17:43:58.88 ID:laPyWkUO0
>>2
phpはC言語で書かれてるんやで?
3 : 2021/05/02(日) 17:21:38.47 ID:BxJxYRq+0
ホンモノはVBAを選ぶんだよなあ
4 : 2021/05/02(日) 17:22:41.56 ID:gemJwEzed
なるほど
5 : 2021/05/02(日) 17:22:51.78 ID:AG0UlOQ20
それは違う
C/C++は人間が間違えないという前提の言語なんだ
もしバグがあるならそれはC/C++を使う人間にバグがあるということなのさ
7 : 2021/05/02(日) 17:24:30.13 ID:QF4Bhrt/M
>>5
じゃあやっぱり前提間違えてるプログラムのほうがダメじゃん
10 : 2021/05/02(日) 17:26:25.74 ID:AG0UlOQ20
>>7
天才が作った言語を凡人が使いこなせなかったからといって
それは天才のせいなのかね?
11 : 2021/05/02(日) 17:26:43.74 ID:oEwdXlCb0
>>5
恥も知らぬジャップ思考
26 : 2021/05/02(日) 17:40:29.34 ID:lHANukn00
>>5
人間はバグがあるということを理解できてない言語側の設計バグでワロタw
6 : 2021/05/02(日) 17:23:17.79 ID:+UWCaX43M
どれだけ涙を流せば
8 : 2021/05/02(日) 17:25:11.23 ID:OALL4spo0
go使わんのんかい
9 : 2021/05/02(日) 17:25:28.16 ID:Gkvym7mR0
き…脆弱性
12 : 2021/05/02(日) 17:28:46.87 ID:DOhMHT180
ポインタとか?
13 : 2021/05/02(日) 17:29:28.19 ID:sZuczvx30
未定義動作多すぎなのをいいことにコンパイラが過激に最適化するせいで穴が広がる地獄
14 : 2021/05/02(日) 17:30:36.91 ID:3TGsCb4EH
この言語習得したいならまずCやらないとダメというね
15 : 2021/05/02(日) 17:31:06.83 ID:Ulc5Sh330
モジラはまずFirefoxのメモリをなんとかしろよ
27 : 2021/05/02(日) 17:40:30.10 ID:ziyXE5Nbd
>>15
メモリイーターなのがRustの副作用なんだろ
16 : 2021/05/02(日) 17:34:45.07 ID:sw+XM/6k0
メモリならGCあれば安全なのにバグは別になくなってないやろ
そういうこと
25 : 2021/05/02(日) 17:40:08.39 ID:k+kekZDJ0
>>16
そりゃOSのもろよわせいの70%がメモリ管理のバグに起因するってだけだし
17 : 2021/05/02(日) 17:36:54.40 ID:AG0UlOQ20
まあいいさ
本当の天才というのは天才だけが使える言語を作ることではなく
凡人でも使える言語を作るものだというのもまた一理ある
その意味で言えばpythonは天才が凡人のために作り出した言語だ
お前らは凡人らしくOSの心配などしとらんでpythonのコードをコピー&ペースとしてればいいのではないかね
18 : 2021/05/02(日) 17:37:06.30 ID:BldPHpJzM
MacのM1不具合もこれが原因か
スリープからの立ち上げで画面変な色になるから
色々調べ回ったりケーブル変えたりOSアップデートしたら治ったが
初Macで少し懲りた
19 : 2021/05/02(日) 17:37:51.98 ID:N4PK24xfd
メモリーリークしまくるしな
23 : 2021/05/02(日) 17:39:56.15 ID:VMTpEqU+0
>>19
メモリリークならメモリ食いつぶすまで動きはする
二重解放が4ねる
20 : 2021/05/02(日) 17:37:57.98 ID:HG1///QN0
安定と歴史のコボルにしよう
21 : 2021/05/02(日) 17:39:10.97 ID:9MuKzuTD0
あのFirefoxを作ったMozillaの作った言語がメモリー安全というのは何かのギャグなのか?
22 : 2021/05/02(日) 17:39:48.27 ID:Otu7tW6z0
C++24とかでC++側になんかそういうrust的な機能が含まれて元の木阿弥になる予感
24 : 2021/05/02(日) 17:40:06.22 ID:80vE/t8J0
仕方ないだろ
CPUのシングルスレッドの速度が、10年で2倍にしかなってないんだもん
28 : 2021/05/02(日) 17:42:05.78 ID:laPyWkUO0
x64に追い打ちやな
C系に恩恵ないなら余計にいらん
Intelどうすんのや
30 : 2021/05/02(日) 17:43:56.67 ID:TbWln3z30
負け組連合
32 : 2021/05/02(日) 17:45:09.93 ID:wnNQVjVp0
C言語っていう親亀の背中は
もう永遠に変わらないの?
最強の言語を作ろうやっていう動きは出てこないの

コメント

タイトルとURLをコピーしました