Descripción del producto ※Tenga en cuenta que la información del producto está traducida por máquina, por lo que puede que no sea la traducción correcta.
Ciencia de la información
[Introducción]
Los sistemas operativos de microkernel a veces tienen una imagen de "hermoso diseño, pero una implementación lenta", pero eso está en el pasado. Hoy en día, se utiliza en un lugar discreto como sistema operativo práctico para apoyar al mundo.
Este documento describe los conceptos del sistema operativo microkernel y los ejemplos reales de cada función. Todo el libro consta de cuatro partes : fundamentos, descripción del micronúcleo, descripción del software que se ejecuta en él (userland) y contenido evolutivo. Los capítulos de cada parte se dividen en secciones que explican los conceptos y secciones de implementación que explican cómo se implementan los conceptos.
Como ejemplo de implementación de cada capítulo, utilizo el sistema operativo microkernel "HinaOS", que he desarrollado para este libro, para facilitar la comprensión. HinaOS es un sistema operativo educativo diseñado para ejecutarse en un emulador, pero tiene las funciones mínimas necesarias para aprender a implementar el sistema operativo y el código fuente es simple.
Además de las implementaciones de ejemplo de HinaOS, también incluye ejemplos de tres sistemas operativos de microkernel prácticos : MINIX3, seL4 y GNU Hurd. La razón por la que introducimos varios sistemas operativos es que cada uno tiene sus propias características y queremos que las comparen. No tenga el estereotipo de "esto es lo que es un sistema operativo microkernel". Disfrute de la flexibilidad y la libertad de diseño que viene de ser un microkernel. El sistema operativo es la base para crear un nuevo mundo de software que puede cambiar drásticamente la forma en que se utiliza un ordenador.
Cuando termine de leer este libro, intente crear su propio sistema operativo. Incluso si entiende cómo funciona el sistema operativo, puede descubrir algo nuevo al implementarlo. En lugar de crear un sistema operativo desde 0, puede ampliar el HinaOS. HinaOS ya tiene algunas características básicas que son engorrosas de implementar. Esta facilidad para ampliar el sistema operativo es una de las características del micronúcleo.
Por naturaleza, el sistema operativo es un software muy libre. Puede crear un sistema operativo portátil 0 que aproveche las características únicas que sólo están disponibles en una CPU específica, o puede crear un sistema operativo que sea lo más pequeño posible. Es el mejor material sobre el que puede crear su propio mundo con ideas libres.
Con este libro en sus manos, eche un vistazo a las profundidades del microkernel. Mientras disfruta del backstage, debe haber adquirido una profunda habilidad informática que no está limitada por el sistema operativo o la arquitectura.
[Contenido]
Parte 1 Conocimientos básicos
Capítulo 1 Acerca de este libro
1.1 Personas adecuadas para este libro
1.2 Cosas que no se pueden aprender en este libro
1.3 Descripción de la cantidad de datos
Capítulo 2 Introducción al microkernel
2.1 Comprensión del microkernel
2.2 Comprensión del microkernel
2.3 Características del microkernel
2.4 Ventajas y desventajas del microkernel
2.5 Leer el código fuente
Capítulo 3 Introducción al sistema operativo del microkernel educativo "HinaOS"
3.1 Por qué HinaOS
3.2 Características del HinaOS
3.3 Obtención del código fuente
3.4 Conocimientos previos para la lectura del código
3.5 Estructura de datos
Capítulo 4 Introducción a RISC-V
4.1 Operaciones básicas de la CPU Ejemplo : IPC
Resumen de Mach
Capítulo 9 Llamadas del sistema
Tipos de llamadas del sistema
Ejemplo de implementación : Flujo de procesamiento de llamadas del sistema
HinaOS
Copia de memoria desde espacio de usuario
Ejemplo de implementación : Tierra de usuario
Capítulo 10 Tierra de usuario
Servidor
Separación de organización y política
Sistema operativo de un solo servidor y sistema operativo de varios servidores
Tipo de servidor
Ejemplo de implementación : Configuración del servidor de HinaOS
Ejemplo de implementación : Tierra de usuario
Capítulo 10 Tierra de usuario
Servidor
Servidor
Separación de organización y política
Sistema operativo de un solo servidor y sistema operativo de varios servidores
Tipo de servidor
Ejemplo de implementación : Configuración del servidor de Afirmación de que los microkernels son más seguros que los núcleos monolíticos
Lo que se necesita para una mayor confiabilidad
Reinicio automático del servidor
Actualizaciones en vivo
Problemas de "spill de estado"
Seguridad del sistema operativo frente a vulnerabilidades de HinaOS
Capítulo 18 Aislamiento de procesos con software
Necesidad de aislamiento de procesos con software
Aislamiento de procesos con hardware
Aislamiento de procesos con software
Ejemplos de implementación : HinaVM
¿Es seguro el aislamiento de software? 2.6 13.9 13.10 14.1 14.2 14.3 14.4 14.5 14.6 14.7 14.8 14.9 15.1 15.2 15.3 15.4 16.1 16.2 16.3 17.1 17.2 17.3 17.4 17.5 17.6 18.1 18.2 18.3 18.4 18.5 4.2 4.3 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11 5.12 5.13 5.14 6.1 6.2 6.3 6.4 6.5 6.6 6.7 1.4 6.8 6.9 6.10 6.11 6.12 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 8.10 8.11 9.1 9.2 9.3 9.4 9.5 9.6 9.7 10.1 10.2 10.3 10.4 10.5 10.6 10.7 10.8 11.1 11.2 11.3 11.4 11.5 11.6 12.1 12.2 12.3 12.4 12.5 12.6 12.7 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 HinaFS HinaOS HinaOS HinaOS Idol japonés HinaFS HinaOS
Chapter 19 Boot Processing
19.1 Boot Loader
19.2 HinaOS Boot Processing
19.3 MINIX3 Boot Processing
19.4 seL4 Boot Processing
19.5 Hurd Boot Processing
Appendix Appendix
Appendix 1 HinaOS Development Environment Building
Appendix 2 HinaOS Debugging
Appendix 3 References
[Biografía del autor]
Licenciado en Ciencias de la Información, Facultad de Ciencias de la Información de la Universidad de Tsukuba, Maestría en Ingeniería de Riesgos, Graduate School of Universidad de Tsukuba. Actualmente participa en el desarrollo de tecnologías informáticas de vanguardia en CDN. Le gusta el software de nivel inferior, como el núcleo del sistema operativo o el hipervisor. Como hobby, intenta escribir un kernel compatible con Linux ABI en Rust y ofrece su propio sitio web en su propio sistema operativo.