Вариант для распечатки |
Пред. тема | След. тема | ||
Форум Разговоры, обсуждение новостей | |||
---|---|---|---|
Изначальное сообщение | [ Отслеживать ] |
"Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от opennews (ok), 08-Мрт-19, 11:24 | ||
Состоялся (https://mirage.io/blog/announcing-mirage-35-release) релиз операционной системы MirageOS 3.5 (https://mirage.io), позволяющая формировать операционные системы одного приложения, в которых приложение поставляется как самодостаточный "unikernel", способный выполняться без применения операционных систем, отдельного ядра ОС и каких-либо прослоек. Для разработки приложений применяется язык OCaml. Код проекта распространяется (https://github.com/mirage/mirage) под свободной лицензией ISC. | ||
Ответить | Правка | Cообщить модератору |
Оглавление |
Сообщения по теме | [Сортировка по времени | RSS] |
1. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –1 +/– | |
Сообщение от proninyaroslav (ok), 08-Мрт-19, 11:24 | ||
>приложения и библиотеки формируются на высокоуровневом языке OCaml, итоговые окружения демонстрируют достаточно неплохую производительность и минимальный размер | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
3. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +9 +/– | |
Сообщение от Ordu (ok), 08-Мрт-19, 11:58 | ||
Развитая система типов плюс статическая типизация позволяют создавать API, которые инкапсулируя всё, что требует тщательной проработки, обходятся везде где можно памятью со стека, не нагружая кучу и сборщик мусора. Это всё те же идеи, которые отрабатывались в haskell'е и в C++. Плюс к этому оно не прибито гвоздями к какой-то выбранной парадигме, позволяя использовать те парадигмы, которые лучше ложатся на задачу. | ||
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору |
12. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –2 +/– | |
Сообщение от Vkni (ok), 08-Мрт-19, 15:35 | ||
> Туда лезут люди, которым чего-то не хватило в C++, в haskell и прочих. | ||
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору |
25. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 13:59 | ||
> обходятся везде где можно памятью со стека, | ||
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору |
27. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 14:14 | ||
>> обходятся везде где можно памятью со стека, | ||
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору |
29. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 14:24 | ||
Во-первых, говоря о стеке процессора, ты забыл про пересылку данных. | ||
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору |
30. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 15:35 | ||
> Во-первых, говоря о стеке процессора, ты забыл про пересылку данных. | ||
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору |
31. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 15:41 | ||
Хотя я так подумал... про ocaml пишут, что у него generational gc, а выделение памяти из такой кучи, как я понимаю, не сильно дороже, чем выделение памяти из стека. | ||
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору |
32. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 18:11 | ||
>> Во-первых, говоря о стеке процессора, ты забыл про пересылку данных. | ||
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору |
33. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 18:49 | ||
> Так и сделано. Лимит можно задать перед выполнением. | ||
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору |
39. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 10-Мрт-19, 13:22 | ||
Контролем стека процессора занимается ОС (см. man limits.conf), ставит сторожевую страницу (в общем случае не даёт гарантий от переполнения). | ||
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору |
35. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 09-Мрт-19, 21:11 | ||
> Кстати, в MLton эти проблемы решены, как и бесшовное взаимодействие с С. | ||
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору |
36. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 09-Мрт-19, 21:14 | ||
> Один для нужд рантайма и параллельный стек для собственно | ||
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору |
37. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 10-Мрт-19, 12:15 | ||
Потому что cache-locality. Стек хорош в этом: функции работают преимущественно с локальными переменными, которые либо в регистрах либо на стеке. Всякие там адреса возврата туда же попадают, и всё получается неплохо. Если же мы начинаем раскидывать это по трём стекам, то в кеш начинает попадать больше ненужного -- из стека же в кеш переносится не нужная переменная, а кусок памяти в 64 байта (cache line), содержащий эту переменную. Там где на одном стеке будет достаточно 1-2 линий кеша под всё актуальное, на трёх надо будет в два-три раза больше. | ||
Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору |
38. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 10-Мрт-19, 13:11 | ||
> Там где на одном стеке будет достаточно 1-2 линий кеша под всё актуальное, на трёх надо будет в два-три раза больше. | ||
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору |
40. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 10-Мрт-19, 14:06 | ||
> рабочая глубина этих стеков будет меньше | ||
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору |
42. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 10-Мрт-19, 14:23 | ||
142 многовато, вот 128 | ||
Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору |
46. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним84701 (ok), 10-Мрт-19, 22:05 | ||
> 142 многовато, вот 128 | ||
Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору |
47. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (47), 11-Мрт-19, 16:05 | ||
Это же MBR размером 512 байт (на некотором железе не запустится), а было "Smallest x86 ELF Hello World" (50 байт + файловый заголовок). | ||
Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору |
48. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним84701 (ok), 11-Мрт-19, 17:07 | ||
> размером 512 байт | ||
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору |
49. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (47), 12-Мрт-19, 06:51 | ||
>> размером 512 байт | ||
Ответить | Правка | ^ к родителю #48 | Наверх | Cообщить модератору |
5. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –1 +/– | |
Сообщение от Cradle (?), 08-Мрт-19, 12:31 | ||
популярен во франкоязычных странах. Сам по себе вполне не плох, но вот только в остальных странах к сожалению не особо популярен, нужно реально быть в голове французом чтобы предпочесть его плюсам или яве. В том смысле что начиная проект обычно сразу задумываешся с какими людьми будешь его делать вместе и как с ними будешь общаться; французы в этом плане довольно замкнуты. | ||
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору |
11. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 08-Мрт-19, 15:34 | ||
Зависит от задачи. Вычислительный код писать, например, очень неудобно, если не переопределить операторы. Многопоточности пока нет. | ||
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору |
23. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от KonstantinB (ok), 09-Мрт-19, 00:41 | ||
Ну почему же? В фейсбуке используют (см. reasonml). Docker for Mac тоже на нем написан. | ||
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору |
10. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –1 +/– | |
Сообщение от Vkni (ok), 08-Мрт-19, 15:34 | ||
И то, и другое. Ocaml - это в девичестве Caml Light, который был создан Ксавье Леруа и компанией в качестве высокопроизводительного компилятора функционального языка. И это у них осталось в культуре: одно из основных требований - это быстрота программ. Это требование, например, заставило их делать все вычисления "справа налево", сломав традиционное для ML слева направо. | ||
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору |
13. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 08-Мрт-19, 15:37 | ||
Упомянутая выше dune, кстати, тоже отрабатывает мгновенно за счёт умного кеширования. В Jane Street недавно был доклад на эту тему. | ||
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору |
28. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 14:18 | ||
MLton для оптимизации выполняет unboxing, в аналогичных местах OCaml будет проверять младший бит, что бы различить значения и указатели. А за счёт чего "делать все вычисления "справа налево" может дать прирост скорости при выполнении? | ||
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору |
34. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Vkni (ok), 09-Мрт-19, 21:05 | ||
> А за счёт чего "делать все вычисления "справа налево" может дать прирост скорости при выполнении? | ||
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору |
41. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 10-Мрт-19, 14:12 | ||
Благодарю. Однако, там же сказано (со ссылкой на Драгонбук), что преимущество может дать неопределённый порядок вычисления аргументов, принятый в C. | ||
Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору |
43. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 10-Мрт-19, 14:47 | ||
Ну там лажа написана - надо поменять. Простейшая проверка показывает, что right to left: | ||
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору |
44. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 10-Мрт-19, 16:23 | ||
Если там перепутали порядок вычисления аргументов в существующих имплементациях, это одно. Другое дело, что кроме того там написано "порядок не определён; так получилось, что аргументы вычисляются так-то, но рассчитывать на эту особенность опасно, т.к. в будущем может измениться". | ||
Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору |
45. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 10-Мрт-19, 19:26 | ||
> но рассчитывать на эту особенность опасно, т.к. в будущем может измениться". | ||
Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору |
26. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 14:08 | ||
print_endline "Hello World!";; | ||
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору |
2. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +4 +/– | |
Сообщение от Твоя мама (?), 08-Мрт-19, 11:52 | ||
TL;DR: чуваки написали ядро ОС без поддержки userspace-процессов. | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
6. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Cradle (?), 08-Мрт-19, 12:46 | ||
да, это для эмбедовки | ||
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору |
8. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –2 +/– | |
Сообщение от Аноним (8), 08-Мрт-19, 14:16 | ||
MirageOS в первую очередь применяется в докере. | ||
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору |
9. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Cradle (?), 08-Мрт-19, 14:56 | ||
ок, спасибо, не знал. Сам на нее смотрел пару лет назад как на альтернативу freertos для allwiner (была идея выделить у A20 одно ядро под реалтайм), но не решился, да и не пошел тот проект у нас. | ||
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору |
24. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от KonstantinB (ok), 09-Мрт-19, 00:45 | ||
Это ОС в виде библиотеки (статически линкуемой, разумеется). В эмбедовке такой подход применяется повсеместно. | ||
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору |
4. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (4), 08-Мрт-19, 12:17 | ||
Гайс, обоснуйте в ней можно будет полноценно установить/запустить например брайзер чтобы он там в своём соку варилась и ни как не взаймидействовала с основной системой? Или есть что-то другое что вы можете предложить. | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
7. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Аноним (7), 08-Мрт-19, 13:19 | ||
ne | ||
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору |
14. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (14), 08-Мрт-19, 16:27 | ||
Тебе как минимум для гуя нужно взаимодействие с системой. | ||
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору |
15. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (15), 08-Мрт-19, 16:56 | ||
Это для краснoглазиков любящих сервера и консоли, гуй не нужен. | ||
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору |
19. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (19), 08-Мрт-19, 18:43 | ||
Это хромопроблемы. В файрфокс метрики нет от слова "вообще", его хоть из-под рута можно запускать (я и запускаю иногда, кстати) и ничего не случится. Недавно добавили защиту от биткоина например. Ждем тебя в своих рядах, хромер! | ||
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору |
18. "Неверное описание mirage-kv" | +1 +/– | |
Сообщение от erthink (ok), 08-Мрт-19, 17:21 | ||
О mirage-kv написано совершенно не верно. Это не библиотека, а набор сигнатур OCaml (спецификация интерфейса) для взаимодействия с абстрактным key-value storage engine. К git это никакого отношения не имеет, совсем. | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
22. "Неверное описание mirage-kv" | +/– | |
Сообщение от erthink (ok), 08-Мрт-19, 22:39 | ||
Вижу что уже поправили. Теперь норм. | ||
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору |
20. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –1 +/– | |
Сообщение от Аноним (20), 08-Мрт-19, 21:51 | ||
Это для тех, кто скучает по DOSу? | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
21. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +4 +/– | |
Сообщение от Cradle (?), 08-Мрт-19, 22:34 | ||
да, кстати, сам только сейчас понял что действительно скучаю по такой юнности в которой дос был бы аккуратно написан в открытых исходниках на окамле... | ||
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору |
Архив | Удалить |
Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |