Ironclad OS: āđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāļĨāļīāļ™āļļāļāļ‹āđŒāļ—āļĩāđˆāļ›āļĨāļ­āļ”āļ āļąāļĒāļ—āļĩāđˆāļŠāļļāļ” āļžāļĢāđ‰āļ­āļĄāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđāļšāļš formal verification

Ironclad āļ„āļ·āļ­āļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢāđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāđāļšāļš UNIX āļ—āļĩāđˆāļ­āļ­āļāđāļšāļšāļĄāļēāđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ āļ„āļ§āļēāļĄāđ€āļŠāļ–āļĩāļĒāļĢ āđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļ—āļģāļ‡āļēāļ™āđāļšāļšāđ€āļĢāļĩāļĒāļĨāđ„āļ—āļĄāđŒ āđ‚āļ”āļĒāđƒāļŠāđ‰āļ āļēāļĐāļē SPARK āđāļĨāļ° Ada āļ‹āļķāđˆāļ‡āđ€āļ™āđ‰āļ™āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ‚āļ­āļ‡āđ‚āļ„āđ‰āļ”āļœāđˆāļēāļ™āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢ formal verification

Ironclad āđ„āļĄāđˆāđƒāļŠāđˆāđāļ„āđˆāđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāļ—āļąāđˆāļ§āđ„āļ› āđāļ•āđˆāđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļ—āļĩāđˆāļ–āļđāļāļ­āļ­āļāđāļšāļšāđƒāļŦāđ‰ “āļ›āļĨāļ­āļ”āļ āļąāļĒāļ•āļąāđ‰āļ‡āđāļ•āđˆāļĢāļēāļāļāļēāļ™” āđ‚āļ”āļĒāđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđ‚āļ„āđ‰āļ”āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļžāļīāļŠāļđāļˆāļ™āđŒāđ„āļ”āđ‰āļ—āļēāļ‡āļ„āļ“āļīāļ•āļĻāļēāļŠāļ•āļĢāđŒāļ§āđˆāļēāļ›āļĢāļēāļĻāļˆāļēāļāļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ™āļŠāđˆāļ§āļ™āļŠāļģāļ„āļąāļ āđ€āļŠāđˆāļ™ āļĢāļ°āļšāļšāđ€āļ‚āđ‰āļēāļĢāļŦāļąāļŠāđāļĨāļ°āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļŠāļīāļ—āļ˜āļīāđŒ (MAC)

āļĢāļ°āļšāļšāļ™āļĩāđ‰āļĒāļąāļ‡āļĢāļ­āļ‡āļĢāļąāļš POSIX interface āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ‡āļēāļ™āļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ—āļąāđˆāļ§āđ„āļ›āđ„āļ”āđ‰āļ‡āđˆāļēāļĒ āđāļĨāļ°āļĄāļĩāļāļēāļĢāļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāļ—āļģāļ‡āļēāļ™āđāļšāļš preemptive multitasking āļ­āļĒāđˆāļēāļ‡āđāļ—āđ‰āļˆāļĢāļīāļ‡ āļĢāļ§āļĄāļ–āļķāļ‡āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāđ€āļ§āļĨāļēāđāļšāļš hard real-time āļŠāļģāļŦāļĢāļąāļšāļ‡āļēāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡

Ironclad āļĒāļąāļ‡āļ–āļđāļāļ­āļ­āļāđāļšāļšāđƒāļŦāđ‰āļžāļāļžāļēāđ„āļ”āđ‰āļ‡āđˆāļēāļĒ āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ āđāļĨāļ°āđƒāļŠāđ‰ GNU toolchain āđƒāļ™āļāļēāļĢāļ„āļ­āļĄāđ„āļžāļĨāđŒ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ™āļģāđ„āļ›āđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™ embedded systems āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļŠāļ°āļ”āļ§āļ

āļˆāļļāļ”āđ€āļ”āđˆāļ™āļ‚āļ­āļ‡ Ironclad OS
āđ€āļ‚āļĩāļĒāļ™āļ”āđ‰āļ§āļĒāļ āļēāļĐāļē SPARK āđāļĨāļ° Ada āđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒāļŠāļđāļ‡āļŠāļļāļ”
āđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„ formal verification āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ‚āļ­āļ‡āđ‚āļ„āđ‰āļ”
āļĢāļ­āļ‡āļĢāļąāļš POSIX interface āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ›
āļĢāļ­āļ‡āļĢāļąāļš preemptive multitasking āđāļĨāļ° hard real-time scheduling
āđ„āļĄāđˆāļĄāļĩ firmware blobs āļ—āļļāļāļŠāđˆāļ§āļ™āđ€āļ›āđ‡āļ™āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠ
āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄāđāļĨāļ°āļšāļ­āļĢāđŒāļ” embedded
āđƒāļŠāđ‰ GNU toolchain āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢ cross-compilation
āļĄāļĩāļ”āļīāļŠāđ‚āļ—āļĢāļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™ āđ€āļŠāđˆāļ™ Gloire
āđ„āļ”āđ‰āļĢāļąāļšāļ—āļļāļ™āļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļˆāļēāļāđ‚āļ„āļĢāļ‡āļāļēāļĢ NGI Zero Core āļ‚āļ­āļ‡ EU

āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ‚āđ‰āļ­āļ„āļ§āļĢāļĢāļ°āļ§āļąāļ‡
āļĒāļąāļ‡āļ­āļĒāļđāđˆāđƒāļ™āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāļžāļąāļ’āļ™āļē āļ­āļēāļˆāđ„āļĄāđˆāđ€āļŦāļĄāļēāļ°āļāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ›āđƒāļ™āļĢāļ°āļ”āļąāļš production
āļ•āđ‰āļ­āļ‡āļĄāļĩāļ„āļ§āļēāļĄāļĢāļđāđ‰āļ”āđ‰āļēāļ™ SPARK/Ada āđāļĨāļ°āļāļēāļĢāļ„āļ­āļĄāđ„āļžāļĨāđŒāļ‚āđ‰āļēāļĄāđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ
āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™ embedded systems āļ•āđ‰āļ­āļ‡āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāļāļąāļ™āđ„āļ”āđ‰āļ‚āļ­āļ‡āļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒ

Ironclad āđ€āļŦāļĄāļēāļ°āļāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļēāļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢāļ—āļĩāđˆāļ›āļĨāļ­āļ”āļ āļąāļĒāļĢāļ°āļ”āļąāļšāļŠāļđāļ‡ āđāļĨāļ°āļŠāļēāļĄāļēāļĢāļ–āļ„āļ§āļšāļ„āļļāļĄāļ—āļļāļāļŠāđˆāļ§āļ™āļ‚āļ­āļ‡āļĢāļ°āļšāļšāđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļĨāļ°āđ€āļ­āļĩāļĒāļ” āđ‚āļ”āļĒāđ€āļ‰āļžāļēāļ°āđƒāļ™āļ‡āļēāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđāļĨāļ°āļ„āļ§āļēāļĄāđ€āļŠāļ–āļĩāļĒāļĢāđāļšāļšāđ€āļĢāļĩāļĒāļĨāđ„āļ—āļĄāđŒ

https://ironclad-os.org/
ðŸ›Ąïļ Ironclad OS: āđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāļĨāļīāļ™āļļāļāļ‹āđŒāļ—āļĩāđˆāļ›āļĨāļ­āļ”āļ āļąāļĒāļ—āļĩāđˆāļŠāļļāļ” āļžāļĢāđ‰āļ­āļĄāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđāļšāļš formal verification Ironclad āļ„āļ·āļ­āļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢāđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāđāļšāļš UNIX āļ—āļĩāđˆāļ­āļ­āļāđāļšāļšāļĄāļēāđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ āļ„āļ§āļēāļĄāđ€āļŠāļ–āļĩāļĒāļĢ āđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļ—āļģāļ‡āļēāļ™āđāļšāļšāđ€āļĢāļĩāļĒāļĨāđ„āļ—āļĄāđŒ āđ‚āļ”āļĒāđƒāļŠāđ‰āļ āļēāļĐāļē SPARK āđāļĨāļ° Ada āļ‹āļķāđˆāļ‡āđ€āļ™āđ‰āļ™āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ‚āļ­āļ‡āđ‚āļ„āđ‰āļ”āļœāđˆāļēāļ™āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢ formal verification Ironclad āđ„āļĄāđˆāđƒāļŠāđˆāđāļ„āđˆāđ€āļ„āļ­āļĢāđŒāđ€āļ™āļĨāļ—āļąāđˆāļ§āđ„āļ› āđāļ•āđˆāđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļ—āļĩāđˆāļ–āļđāļāļ­āļ­āļāđāļšāļšāđƒāļŦāđ‰ “āļ›āļĨāļ­āļ”āļ āļąāļĒāļ•āļąāđ‰āļ‡āđāļ•āđˆāļĢāļēāļāļāļēāļ™” āđ‚āļ”āļĒāđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđ‚āļ„āđ‰āļ”āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļžāļīāļŠāļđāļˆāļ™āđŒāđ„āļ”āđ‰āļ—āļēāļ‡āļ„āļ“āļīāļ•āļĻāļēāļŠāļ•āļĢāđŒāļ§āđˆāļēāļ›āļĢāļēāļĻāļˆāļēāļāļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ™āļŠāđˆāļ§āļ™āļŠāļģāļ„āļąāļ āđ€āļŠāđˆāļ™ āļĢāļ°āļšāļšāđ€āļ‚āđ‰āļēāļĢāļŦāļąāļŠāđāļĨāļ°āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļŠāļīāļ—āļ˜āļīāđŒ (MAC) āļĢāļ°āļšāļšāļ™āļĩāđ‰āļĒāļąāļ‡āļĢāļ­āļ‡āļĢāļąāļš POSIX interface āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļ‡āļēāļ™āļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ—āļąāđˆāļ§āđ„āļ›āđ„āļ”āđ‰āļ‡āđˆāļēāļĒ āđāļĨāļ°āļĄāļĩāļāļēāļĢāļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāļ—āļģāļ‡āļēāļ™āđāļšāļš preemptive multitasking āļ­āļĒāđˆāļēāļ‡āđāļ—āđ‰āļˆāļĢāļīāļ‡ āļĢāļ§āļĄāļ–āļķāļ‡āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāđ€āļ§āļĨāļēāđāļšāļš hard real-time āļŠāļģāļŦāļĢāļąāļšāļ‡āļēāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡ Ironclad āļĒāļąāļ‡āļ–āļđāļāļ­āļ­āļāđāļšāļšāđƒāļŦāđ‰āļžāļāļžāļēāđ„āļ”āđ‰āļ‡āđˆāļēāļĒ āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ āđāļĨāļ°āđƒāļŠāđ‰ GNU toolchain āđƒāļ™āļāļēāļĢāļ„āļ­āļĄāđ„āļžāļĨāđŒ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ™āļģāđ„āļ›āđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™ embedded systems āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļŠāļ°āļ”āļ§āļ âœ… āļˆāļļāļ”āđ€āļ”āđˆāļ™āļ‚āļ­āļ‡ Ironclad OS ➡ïļ āđ€āļ‚āļĩāļĒāļ™āļ”āđ‰āļ§āļĒāļ āļēāļĐāļē SPARK āđāļĨāļ° Ada āđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒāļŠāļđāļ‡āļŠāļļāļ” âžĄïļ āđƒāļŠāđ‰āđ€āļ—āļ„āļ™āļīāļ„ formal verification āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļ–āļđāļāļ•āđ‰āļ­āļ‡āļ‚āļ­āļ‡āđ‚āļ„āđ‰āļ” âžĄïļ āļĢāļ­āļ‡āļĢāļąāļš POSIX interface āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ› âžĄïļ āļĢāļ­āļ‡āļĢāļąāļš preemptive multitasking āđāļĨāļ° hard real-time scheduling ➡ïļ āđ„āļĄāđˆāļĄāļĩ firmware blobs āļ—āļļāļāļŠāđˆāļ§āļ™āđ€āļ›āđ‡āļ™āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠ âžĄïļ āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄāđāļĨāļ°āļšāļ­āļĢāđŒāļ” embedded ➡ïļ āđƒāļŠāđ‰ GNU toolchain āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢ cross-compilation ➡ïļ āļĄāļĩāļ”āļīāļŠāđ‚āļ—āļĢāļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™ āđ€āļŠāđˆāļ™ Gloire ➡ïļ āđ„āļ”āđ‰āļĢāļąāļšāļ—āļļāļ™āļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļˆāļēāļāđ‚āļ„āļĢāļ‡āļāļēāļĢ NGI Zero Core āļ‚āļ­āļ‡ EU ‾ïļ āļ„āļģāđ€āļ•āļ·āļ­āļ™āđāļĨāļ°āļ‚āđ‰āļ­āļ„āļ§āļĢāļĢāļ°āļ§āļąāļ‡ â›” āļĒāļąāļ‡āļ­āļĒāļđāđˆāđƒāļ™āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāļžāļąāļ’āļ™āļē āļ­āļēāļˆāđ„āļĄāđˆāđ€āļŦāļĄāļēāļ°āļāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ›āđƒāļ™āļĢāļ°āļ”āļąāļš production ⛔ āļ•āđ‰āļ­āļ‡āļĄāļĩāļ„āļ§āļēāļĄāļĢāļđāđ‰āļ”āđ‰āļēāļ™ SPARK/Ada āđāļĨāļ°āļāļēāļĢāļ„āļ­āļĄāđ„āļžāļĨāđŒāļ‚āđ‰āļēāļĄāđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ â›” āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļ™ embedded systems āļ•āđ‰āļ­āļ‡āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāđ€āļ‚āđ‰āļēāļāļąāļ™āđ„āļ”āđ‰āļ‚āļ­āļ‡āļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒ Ironclad āđ€āļŦāļĄāļēāļ°āļāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļēāļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢāļ—āļĩāđˆāļ›āļĨāļ­āļ”āļ āļąāļĒāļĢāļ°āļ”āļąāļšāļŠāļđāļ‡ āđāļĨāļ°āļŠāļēāļĄāļēāļĢāļ–āļ„āļ§āļšāļ„āļļāļĄāļ—āļļāļāļŠāđˆāļ§āļ™āļ‚āļ­āļ‡āļĢāļ°āļšāļšāđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļĨāļ°āđ€āļ­āļĩāļĒāļ” āđ‚āļ”āļĒāđ€āļ‰āļžāļēāļ°āđƒāļ™āļ‡āļēāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđāļĨāļ°āļ„āļ§āļēāļĄāđ€āļŠāļ–āļĩāļĒāļĢāđāļšāļšāđ€āļĢāļĩāļĒāļĨāđ„āļ—āļĄāđŒ https://ironclad-os.org/
IRONCLAD-OS.ORG
Ironclad
Ironclad is a free software formally verified kernel written in SPARK/Ada
0 āļ„āļ§āļēāļĄāļ„āļīāļ”āđ€āļŦāđ‡āļ™ 0 āļāļēāļĢāđāļšāđˆāļ‡āļ›āļąāļ™ 30 āļĄāļļāļĄāļĄāļ­āļ‡ 0 āļĢāļĩāļ§āļīāļ§