Por favor, disculpe mi ignorancia. Soy un tipo 'anticuado' que piensa que solo hay 'software' y 'hardware', y estas son dos cosas separadas. En esta línea de pensamiento, un sistema operativo es parte del software y un microkernel es parte del sistema operativo. (Soy consciente del debate sobre Microkernels, y cómo Linux realmente no terminó usando uno ).
También soy consciente de que puede hacer cosas bastante sorprendentes con FPGA , pero tal vez asumí que esto se limitaba a microcódigo y DSP .
Así que cuando escucho la cita:
Apple está usando el kernel L4 ... Es el microkernel en Secure Enclave
Estoy fascinado.
Soy consciente de que L4 es el micronúcleo que ha sido "correcto" según su especificación. Pero para mí, eso es parte del sistema operativo. (es decir, se cargan desde el disco a la memoria y luego las instrucciones se transfieren a la CPU a través del bus).
Mi pregunta es: ¿Cómo parte de un microprocesador (enclave seguro de Apple) usa un microkernel (L4)? (¿Es este un tipo de FPGA? ¿Lo introducen en la parte que dispone los transistores y 'incrustan' el software en silicio?)
La respuesta de Majenko es correcta pero no del todo completa. Todo se basa en "TrustZone" de ARM .
Esta es una versión más fuerte del concepto normal de seguridad de "anillo 0" que se encuentra en los sistemas operativos, o un "hipervisor". Es un sistema operativo de nivel superior que arranca desde la ROM incorruptible, configura la MMU y luego arranca el sistema operativo del "usuario" (teléfono). Lo especial de la versión ARM es la protección adicional de MMU, de modo que el sistema operativo del teléfono no puede acceder a todo el hardware o la memoria.
Editar: ver http://www.google.com/patents/US8775757
Parece ser un procesador distinto dentro del SoC y la protección MMU de la "zona de confianza". Ambos procesadores tienen acceso a la memoria principal, incluido un "buzón" para la comunicación entre los dos, pero parte de la memoria está protegida contra el acceso por cualquier otra cosa que no sea el procesador de "enclave seguro".
La primera cita que no es de patente de ese documento es "ARM Security Technology Building a Secure System usando TrustZone® Technology, Copyright © 2005-2009 ARM Limited. Todos los derechos reservados, PRD29-GENC-009492C".
Secure Enclave es un núcleo de CPU separado dentro de la CPU. Tiene su propia RAM, ROM, etc. y, en consecuencia, ejecuta su propio sistema operativo independiente.
Puede considerarlo como una computadora dentro de una computadora, y esa computadora "interna" está fuertemente protegida por un firewall de la computadora "externa", por lo que solo ciertos datos pueden pasar de una a otra.
La teoría es que su información especialmente segura (datos de identificación biométricos, etc.) está solo dentro del núcleo ultra seguro y no puede acceder a nadie más.
Majenko
gbulmer