Вариант для распечатки |
Пред. тема | След. тема | ||
Форум Разговоры, обсуждение новостей | |||
---|---|---|---|
Режим отображения отдельной подветви беседы | [ Отслеживать ] |
Оглавление |
Сообщения | [Сортировка по времени | RSS] |
3. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +9 +/– | |
Сообщение от Ordu (ok), 08-Мрт-19, 11:58 | ||
Развитая система типов плюс статическая типизация позволяют создавать API, которые инкапсулируя всё, что требует тщательной проработки, обходятся везде где можно памятью со стека, не нагружая кучу и сборщик мусора. Это всё те же идеи, которые отрабатывались в haskell'е и в C++. Плюс к этому оно не прибито гвоздями к какой-то выбранной парадигме, позволяя использовать те парадигмы, которые лучше ложатся на задачу. | ||
Ответить | Правка | Наверх | Cообщить модератору |
12. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | –2 +/– | |
Сообщение от Vkni (ok), 08-Мрт-19, 15:35 | ||
> Туда лезут люди, которым чего-то не хватило в C++, в haskell и прочих. | ||
Ответить | Правка | Наверх | Cообщить модератору |
25. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 13:59 | ||
> обходятся везде где можно памятью со стека, | ||
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору |
27. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 14:14 | ||
>> обходятся везде где можно памятью со стека, | ||
Ответить | Правка | Наверх | Cообщить модератору |
29. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 14:24 | ||
Во-первых, говоря о стеке процессора, ты забыл про пересылку данных. | ||
Ответить | Правка | Наверх | Cообщить модератору |
30. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 15:35 | ||
> Во-первых, говоря о стеке процессора, ты забыл про пересылку данных. | ||
Ответить | Правка | Наверх | Cообщить модератору |
31. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 15:41 | ||
Хотя я так подумал... про ocaml пишут, что у него generational gc, а выделение памяти из такой кучи, как я понимаю, не сильно дороже, чем выделение памяти из стека. | ||
Ответить | Правка | Наверх | Cообщить модератору |
32. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +1 +/– | |
Сообщение от Аноним (25), 09-Мрт-19, 18:11 | ||
>> Во-первых, говоря о стеке процессора, ты забыл про пересылку данных. | ||
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору |
33. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 09-Мрт-19, 18:49 | ||
> Так и сделано. Лимит можно задать перед выполнением. | ||
Ответить | Правка | Наверх | Cообщить модератору |
39. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 10-Мрт-19, 13:22 | ||
Контролем стека процессора занимается ОС (см. man limits.conf), ставит сторожевую страницу (в общем случае не даёт гарантий от переполнения). | ||
Ответить | Правка | Наверх | 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 линий кеша под всё актуальное, на трёх надо будет в два-три раза больше. | ||
Ответить | Правка | Наверх | Cообщить модератору |
38. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Vkni (ok), 10-Мрт-19, 13:11 | ||
> Там где на одном стеке будет достаточно 1-2 линий кеша под всё актуальное, на трёх надо будет в два-три раза больше. | ||
Ответить | Правка | Наверх | Cообщить модератору |
40. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Ordu (ok), 10-Мрт-19, 14:06 | ||
> рабочая глубина этих стеков будет меньше | ||
Ответить | Правка | Наверх | Cообщить модератору |
42. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (25), 10-Мрт-19, 14:23 | ||
142 многовато, вот 128 | ||
Ответить | Правка | Наверх | Cообщить модератору |
46. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним84701 (ok), 10-Мрт-19, 22:05 | ||
> 142 многовато, вот 128 | ||
Ответить | Правка | Наверх | Cообщить модератору |
47. "Выпуск MirageOS 3.5, платформы для запуска приложений поверх..." | +/– | |
Сообщение от Аноним (47), 11-Мрт-19, 16:05 | ||
Это же MBR размером 512 байт (на некотором железе не запустится), а было "Smallest x86 ELF Hello World" (50 байт + файловый заголовок). | ||
Ответить | Правка | Наверх | 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ообщить модератору |
Архив | Удалить |
Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |