The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"YOU are full of Bullshit!"
Отправлено n00by, 01-Июл-22 10:18 
>> Диспетчер исключений это аналог setjmp.h.
> Я не уверен что в ядре исключения хорошая идея.

Потому и пишу "аналоги". Оно как бы есть по стандартам языков, но вполне можно без него.

> И хрустиковая паника
> тоже. Ну вот допустим у нас не получилось выделить память а
> падать не хотим. Вместо этого хотим попозже попытаться опять. Но исключения
> и паника это не обеспечат.

В Си++ это всё делается с помощью placement new, либо точно так же как и в Си.

> Торвальц хрустикам популярно донес, до них
> дошло вроде. И будет у них там более сиобразный стиль... )))

Только в другом синтаксисе.

>> Статические конструкторы это аналог __init.
> Этот __init что и где? В сях его быть не обязано, технически
> гнутый тулчайн оперирует entry (с любым названием).

Этот __init можно найти в коде ядра. Точно так и статические экземпляры не обязательно создавать.

> Его вызывают (кто и
> почему отдельный вопрос), а дальше - теоретически, там должен быть стартап,
> который нормальную сишную арену соберет. В стандартной программе потом main вызовет.
> Может быть и что-то еще, тогда это окружение отличается от стандартного
> си по свойствам. Сам компилер в freestanding режиме как максимум может
> хотеть 3 функции, это 100% документировано: memcpy, memset и memmove. Вот
> их он реально иногда сам втыкает при кодогенерации. У плюсоы все
> сильно разлапистее, конечно.

У меня это всё практически написано в виде работающего кода. Потому я могу утверждать, что мнение "сильно разлапистее" является предрассудком, в лучшем случае после знакомства с жирными реализациями. Это примерно как сказать "Си не годится в ядро, поскольку glibc много весит". ;)

>> unique_ptr не требует что-либо из "рантайма". Упрощённо можно считать, что перед скобкой
>> } транслятор вставляет free(ptr);
> Круто, кроме того что alloc/free изначально тоже нет. Их как максимум можно
> себе создать.

Потому и написано "упрощенно". Вызывается заданная программистом функций.

>> - почему ты забыл префикс lock?
>> - у меня на вируталке и так работает!
> А таки я активно VM юзаю, ядерщики тоже, и это сильно упрощает
> многие вещи. И разницы с VM и железом обычно минимум.

Да, "обычно минимум". То есть разница есть.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру