zx_system_mexec


英文原文快照


名称

zx_system_mexec —— 使用新内核和启动映像软启动系统

概要

  1. #include <zircon/syscalls.h>
  2. zx_status_t zx_system_mexec(zx_handle_t resource,
  3. zx_handle_t kernel_vmo,
  4. zx_handle_t bootimage_vmo);

描述

zx_system_mexec() 接受两个vmo句柄,其中:kernel_vmo包含内核映像,bootimage_vmo包含initrd,其地址应作为内核参数传递给新内核。

要取代正在运行的内核,必须提供ZX_RSRC_KIND_ROOT类型的resource

执行成功后,zx_system_mexec将取代当前运行的内核映像。新内核映像包含在kernel_vmo中,将bootimage_vmo中包含的ramdisk加载到物理内存中的某个位置,并直接跳转到新内核,同时将加载的initrd的地址提供给新内核。

权限

TODO(ZX-2399)

返回值

zx_system_mexec() 执行成功将不再返回。