FreeBasic
Главная
Вход
Регистрация
Четверг, 14.05.2026, 09:18Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Сравнение указателей может дать неожиданный результат
DarkDemonДата: Среда, 22.04.2026, 08:42 | Сообщение # 31
Генерал-майор
Группа: Друзья
Сообщений: 328
Репутация: -1
Статус: Offline
Цитата zamabuvaraeu ()
В том коде мы проецируем две виртуальные страницы памяти на одну физическую. В итоге имеем два разных указателя, которые ссылаются на одну и ту же память. Такое часто используется для кольцевого буфера.

Ну так это не "баг", который мы обсуждали, а легальный инструмент операционной системы.

Кстати сам не стал бы использовать ничего подобного для организации кольцевого буфера,
технически это круто, а вот с точки зрения "не заплутать потом через пяток лет самому" - не очень.
Но с другой стороны если нужен прям RT и прога не имеет фиксированного прерывания на обсчёт
буфера - тогда лучше решения нет, обычно звуковые проги(где чаще всего применяется кольцевой буфер)
всё таки имеют прерывание на обсчёт, однако тут нет какой-то единой стратегии, не редка страта
добавить поверх ещё аккумуляционный кольцевой буфер(это полезно когда буфер записи не равен
буферу воспроизведения).
К слову, временная буферная арифметика по праву считается одной из самых сложных задач,
обдумывание таких штук хорошо так взрывает мозг.
 
zamabuvaraeuДата: Среда, 22.04.2026, 09:34 | Сообщение # 32
Полковник
Группа: Друзья
Сообщений: 210
Репутация: 5
Статус: Offline
Я про то, что даже когда указатели не равны — это не гарантирует что они ссылаются на разную память.
 
DarkDemonДата: Среда, 22.04.2026, 10:53 | Сообщение # 33
Генерал-майор
Группа: Друзья
Сообщений: 328
Репутация: -1
Статус: Offline
Цитата
Я про то, что даже когда указатели не равны — это не гарантирует что они ссылаются на разную память.

Ну так мы же понимаем что прицельно организовать в проге маппинг и когда компиль делает лажу - это разные вещи.

Можно конечно порассуждать о том, что мол вот использовал чужую библу, не знал как там всё устроено
и там оказалось так. Ну так это проблема программиста, кто использует чужой труд максимально игнорируя нюансы.

Как бы при условии что всё пишется самостоятельно и прогер достаточно проворен чтобы использовать указатели, 
сценарий более менее понятен. Т.е. мало вероятно спутать откровенную лажу(баг 1 пост) и собственный маппинг.

Было бы вероятно кстати, если бы этой темы не было(но она бы рано или поздно появилась именно в виде бага).
 
zamabuvaraeuДата: Суббота, 02.05.2026, 19:48 | Сообщение # 34
Полковник
Группа: Друзья
Сообщений: 210
Репутация: 5
Статус: Offline
Хороший текст про указатели
https://habr.com/ru/companies/piter/articles/890900/
 
DarkDemonДата: Суббота, 02.05.2026, 22:24 | Сообщение # 35
Генерал-майор
Группа: Друзья
Сообщений: 328
Репутация: -1
Статус: Offline
Чем дальше в лес тем больше дров.
Всё это говно надо показывать тем, кто пишет компиль и потом меняют транслятор, чтобы они понимали куда вляпались.
А я себя этим грузить не хочу, это реально сумасшествие с этими стандартами. Оно конечно и нас касается,
но лично мне пофиг, если что у меня есть ASM, сделаю вставкой, пущай боятся те, у кого его нет...
 
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Поиск: