US 12,242,877 B2
Container-oriented Linux kernel virtualizing system and method thereof
Song Wu, Wuhan (CN); Hang Huang, Wuhan (CN); Kun Wang, Wuhan (CN); Honglei Wang, Wuhan (CN); and Hai Jin, Wuhan (CN)
Filed by Huazhong University of Science and Technology, Hubei (CN)
Filed on May 4, 2022, as Appl. No. 17/661,991.
Claims priority of application No. 202111097363.8 (CN), filed on Sep. 17, 2021.
Prior Publication US 2023/0092214 A1, Mar. 23, 2023
Int. Cl. G06F 9/455 (2018.01); G06F 8/41 (2018.01); G06F 9/445 (2018.01); G06F 9/54 (2006.01)
CPC G06F 9/45558 (2013.01) [G06F 8/41 (2013.01); G06F 9/44505 (2013.01); G06F 9/545 (2013.01); G06F 2009/45562 (2013.01); G06F 2009/45579 (2013.01); G06F 2009/45591 (2013.01)] 14 Claims
OG exemplary drawing
 
1. A container-oriented Linux kernel virtualizing system, at least comprising:
a virtual kernel constructing module, being configured to provide a virtual kernel customization template for a user to edit and customize a virtual kernel of a container, and generate the virtual kernel taking a form of a loadable kernel module based on the edited virtual kernel customization template; and
a virtual kernel instance module, being configured to reconstruct and isolate a Linux kernel, and operate a virtual kernel instance in a separate address space in response to a kernel request from a corresponding container, wherein the system further comprises a virtual kernel loading/unloading module, which is for loading the corresponding virtual kernel into the Linux kernel when the container is launched, maintaining mapping relationship between the container and the virtual kernel, and/or unloading and deleting the virtual kernel when a lifecycle of the container ends; and
a virtual kernel managing module, which is configured to:
intercept a kernel-call request made by the container, and when the container makes a the kernel-call request, based on a predefined hook collection and a corresponding ftrace callback function, forward the kernel-call request of the container to the virtual kernel instance for processing.