Linux kernel 4.0 最近推出. 其中最受矚目的新功能就是Linux Kernel Live Patching Technology
其宗旨為在不重啟系統的前提下, 完成系統更新之動作. 最終達到0 down time的服務
note: live patch 目的主要是為了在不停機的前提下, 修復critical bug & security bug, 並非用來對kernel進行升級等等之大變動
目前已知的kernel live patch 技術有
1. ksplice – 2009 Oracle
2. kgraft – 2014 OpenSUSE
3. kpatch – 2014 redhat
其中kgraft and kpatch 在kernel 4.0 正式被納入, source code 位於kernel/livepatch/ 底下.
而ksplice雖然是以GPLv2 方式 open source, 但是GPLv2對於patent這方面之定義沒有像 GPLv3 這樣清楚,
加上Oracle是有名的patent tr….(消音
所以community 發展自有之live patch技術 – kgraft & kpatch
看到這裡, 一定有人會問說, 為什麼不發展一套就好了呢?
根據Redhat developer 的答覆 – 因為兩邊都不知道對方正在開發live patch的技術, 直到對方完成且公開後才知道
(這點挺令人宛爾的)
目前kgraft & kpatch 都只支援x86架構, 相信不久未來後也會支援其他 architecture.
詳情就看下面個人學習筆計投影片吧. 取之於網路,用之於網路。