|
組込みシステムにおける、ソフトウェアのメモリ安全性(Memory Safety)を考慮した事例として、適切なものはどれか。
| ア |
宇宙線によって引き起こされるメモリのエラーを回避するために、ソフトウェアの処理を多重化してエラーを検出することによって、安全な動作を行う。 |
| イ |
エラーの検出及び訂正が可能なメモリを使用することによって、エラーの発生と訂正をソフトウェアから隠蔽して、ソフトウェアの動作の健全性を確保する。 |
| ウ |
バッファオーバーフロー、メモリリークなどの潜在的なセキュリティ上の問題を回避するために、メモリの保護機能を備えたプログラム言語を使用する。 |
| エ |
ヒープ及びスタックメモリの必要量を性的解析ツールで算出し、十分な空きメモリ領域を確保することによって、メモリ不足が発生しないようにする。 |
答え ウ
【解説】
| ア |
宇宙線によって引き起こされるメモリのエラーを回避するために、ソフトウェアの処理を多重化してエラーを検出することによって、安全な動作を行うのは、CPUコアを2つ使ったのデュアルコアロックステップ(Dual Core Lock Step、DCLS)です。(×) |
| イ |
エラーの検出及び訂正が可能なメモリを使用することによって、エラーの発生と訂正をソフトウェアから隠蔽して、ソフトウェアの動作の健全性を確保するのは、ECCメモリ(Error-correcting code memory)です。(×) |
| ウ |
バッファオーバーフロー、メモリリークなどの潜在的なセキュリティ上の問題を回避するために、メモリの保護機能を備えたプログラム言語を使用するのは、メモリ安全性です。(〇) |
| エ |
ヒープ及びスタックメモリの必要量を性的解析ツールで算出し、十分な空きメモリ領域を確保することによって、メモリ不足が発生しないようにするのは、ソフトウェアのメモリ設計です。(×) |
【キーワード】
・メモリ安全性
【キーワードの解説】
- メモリ安全性(Memory Safety)
プログラムがメモリを安全に操作できることを意味し、不正なメモリアクセスやデータの改ざんが起こらないようにするための設計や機能のことで、メモリ安全性が確保されていないと、バッファオーバーフローやヌルポインタ参照、メモリリークといった問題が発生しやすくなり、結果として予期せぬ動作やセキュリティの脆弱性が発生するリスクが高まる。
もっと、「メモリ安全性」について調べてみよう。
戻る
一覧へ
次へ
|