summary:
CRIUの主な機能は,プロセスの状態の保存と復元にある.具体的には,プロセスのメモリ,レジスタ,オープンファイル,ネットワーク接続などの情報をファイルに保存し,後にこのチェックポイントデータを用いて,可能な限り元の実行状態に復元することができる.さらに,CRIUはDockerやLXCなどのコンテナ技術と統合されており,コンテナの一時停止・再開・移動を実現するための重要な技術基盤となっている.
CRIUは,2011年にVirtuozzo[当時はParallels]の開発者によって提案された,プロセスのチェックポイント・復元技術である.Parallelsの起源はロシアのSWsoftにあり,CRIUの起源は1999年にSWsoftによって開発された仮想化技術に遡る.当初より,Linuxカーネルとユーザースペースでのプロセスの保存・復元を効率化することを目的として開発が開始された.
2012年,Linux Plumbers ConferenceにおいてCRIUが正式に発表され,Linuxコミュニティ内で大きな注目を集めた.その後,2013年にはVirtuozzoの開発者が中心となり,CRIUが適切に動作するためのLinuxカーネル側の対応が進められた.2014年には,Dockerがこの技術を活用し,コンテナのライブマイグレーション機能を実装するに至った.
2020年代に入り,CRIUはクラウド技術との統合がさらに進み,KubernetesやCheckpointing-as-a-Serviceなどの最新のクラウド技術と組み合わされるようになった.多くのLinuxディストリビューション向けにパッケージ化され,クラウドコンピューティングや分散システムにおける重要な技術基盤の一つとして広く認知されている.
Mathematics is the language with which God has written the universe.