Comments 53
И ос реального времени будет всяко быстрее андроида.
Ну вы еще скажите что памяти меньше будет потреблять. От смены платформы — мозг у разработчиков не сменится. Будут так-же го*нокодить и подключать по 850 библиотек в один проект.
Во-первых не весь софт опенсорс.
Во-вторых никто не будет просматривать исходники — это дорого.
В идеале при подключении сторонней библиотеки, компилятор в манифесте пишет что-то вроде этого:
В сборке использовано 40% библиотеки А, 25% библиотеки Б и 10% библиотеки В. Естественно в пакете хранится только используемая часть.
При установке проходит проверка на уровень использования библиотек всеми уже установленными.
Если он превысит 100%, то закачивается и устанавливается библиотека целиком, а ранее установленные части дропаются.
Можно вообще обойтись без скачивания, если будет алгоритм, который из кусков соберет целую библиотеку.
Скорее всего просто ставят эксперименты. Компания богатая, может себе позволить.
Можно на любое ядро Яву навесить. Можно и под LINUX ядром без явы жить.
2. Не зря пользовательские системы не реального времени. Никого не порадует в качестве основной системы что мягкого, что жесткого реального времени (не успела программа отрисовать пол экрана — плевать, убиваем процесс, будем надеяться, в следующий раз отрисует, ага).
3. ОС реального времени выглядят как… #include «task.h» // loading TASK subsystem from freeRTOS, мало кому понравится пересобирать систему, когда понадобится поставить стороннее приложение.
Исходники той Magenta, что реализовывала Darwin 11 — https://github.com/christinaa/kernel_diff
В 2013 году автор объявил(а) о прекращении разработок http://crna.cc/cat/open-source
Magenta was my attempt at implementing a mach compatibility layer on top of the Linux kernel (this is NOT related to my work involving XNU). Unfortunately, I no longer develop this project, but old sources (as of the date of their publication) of major components of Magenta are still made available on my GitHub.
libSystem_and_linker — core system library responsible for libc routines, syscall handling and also doubling as the linker (dyld).
Kernel DIFF — a rather large diff file the needs to be applied to the Linux kernel to add the extensions for features like mach tasks, ports, IPC and BSD features like psycnh.
Fuchsia + Magenta — конечно же совсем другой проект, в котором от ядра Linux взяты лишь некоторые имена директорий (kernel/arch, kernel/lib, kernel/kernel) и "объектный стиль":
https://fuchsia.googlesource.com/magenta/+/master
Потому что это не так.
https://fuchsia.googlesource.com/magenta/+/HEAD/docs/mg_and_lk.md
LK is a Kernel designed for small systems typically used in embedded applications. It is good alternative to commercial offerings like FreeRTOS or ThreadX. Such systems often have a very limited amount of ram, a fixed set of peripherals and a bounded set of tasks.
Magenta inner constructs are based on LK but the layers above are new. For example, Magenta has the concept of a process but LK does not. However, a Magenta process is made of by LK-level constructs such as threads and memory.
Вообще Pink и Purple были коднеймами Taligent и iPhone соответственно
https://en.wikipedia.org/wiki/Taligent
http://www.wired.com/2012/08/forstall-talks-ingenuity-ui/
Мне кажется, что это — их ответ майкрософтовской Win10 IoT.
Забавное наблюдение: в коде активно используются аттрибуты типа «weak» и «noreturn», но при этом освобождение ресурсов выполнено классической goto-лесенкой вместе аттрибута «cleanup», который давно поддерживается gcc и clang.
Я оценивал код, а не авторов. Что касается авторства… создалось впечатление, что файлы понадёрганы из разных мест и написаны разными людьми. Во-первых, везде стоит первой строчкой
Copyright 2016 The Fuchsia Authors
Во-вторых, копирайт Тревиса датируется разными годами между 2008 и 2016, у некоторых файлов копирайт Гугла с разбросом дат 2013-2016. У Тревиса в резюме не отмечено, чтобы он когда-либо сотрудничал с Гуглом, как и нет упоминания данного проекта вообще.
Вобщем насчёт качества кода не знаю… но если появится ещё одна ОС, и не просто появится, а пойдёт в люди, это будет хорошо.
Код Magenta и NewOS не совпадает (у NewOS еще более старые копирайты в нескольких файлах что я сравнил): https://fuchsia.googlesource.com/magenta/+/master/kernel/kernel/ https://github.com/travisg/newos/tree/master/kernel
-Гугломобиль, там в некоторых системах необходим жесткий реалтайм.
-Носимые микрогаджеты, максимум это смарт смарт часы, а более вероятно «умная» одежда.
Google разрабатывает новую операционку Fuchsia, но никто не знает, зачем