
Alexander
15.12.2017
05:49:36
и причём здесь C++ ?

Никита
15.12.2017
05:50:16
+ Какая ОС)

Aidar
15.12.2017
05:50:17

Alexey
15.12.2017
05:50:49
Это может помочь в отладке программ.
Я надеюсь, что такое можно реализовать на с++, а не лезть в ассемблер. Но уже понял, что нет.

Google

Никита
15.12.2017
05:51:25

Alexey
15.12.2017
05:54:49
Если процессор встанет, можно посмотреть, что скэшировалось во внешнюю память. Это может помочь в определении места, где произошла ошибка.

Aidar
15.12.2017
06:00:36
можете чекнуть как на вашей платформе реализованы барьеры памяти
возможно их хватит
но нельзя сказать что это ожидаемое поведение

Никита
15.12.2017
06:55:48

Aidar
15.12.2017
06:57:43

Никита
15.12.2017
06:59:47

Alexey
15.12.2017
07:05:23
Опыта нет, но начальник требует разобраться именно с такой функциональностью.
Спасибо всем за помощь.

Олег
15.12.2017
07:08:02

Alexander
15.12.2017
07:13:24
@aesee какая ОС?

Никита
15.12.2017
07:13:34

Alexey
15.12.2017
07:14:17

Google

Alexander
15.12.2017
07:15:08
C++ будет сложно запустить, а использовать тем более

Alexey
15.12.2017
07:15:14

Никита
15.12.2017
07:16:09

Alexey
15.12.2017
07:16:25

Никита
15.12.2017
07:16:50

Alexander
15.12.2017
07:17:51

Berkus
15.12.2017
07:19:39

Alexey
15.12.2017
07:20:11

Alexander
15.12.2017
07:20:53

Никита
15.12.2017
07:21:14
Какие ещё условия важны?
Я о том, что задал вопрос без описания текущих условий. Например, если ты работаешь через ОС или у тебя есть прямой доступ к процессору. Просто разные вещи и проблемы. Опиши все сначала. И да, бери Си

Alexey
15.12.2017
07:22:59
Окей, на си перейти вполне возможно, но я все еще не совсем понимаю, какую именно искать информацию, чтобы реализовать запрет кэшируемости

Berkus
15.12.2017
07:22:59

Alexander
15.12.2017
07:23:30

Berkus
15.12.2017
07:23:32
если ARM based то ARM ARM, там есть несколько MCR

Alexey
15.12.2017
07:23:47
Мне ставили требование писать на с++, но это решаемый вопрос, я думаю

Berkus
15.12.2017
07:24:04
в эмбеддеде все делается прямым доступом к регистрам и прочим управляющим тумблерам
так что можешь это в с++ завернуть, никто не против
try catch тебе там не нужен особо

Google

Berkus
15.12.2017
07:24:36
это будет очень low-level C++ как, например, в Pistachio

Никита
15.12.2017
07:25:28

Alexey
15.12.2017
07:25:38
Тогда вот такой вопрос: какие ключевые слова на английском мне искать в документации?
На русский перевода нет, и с английским я в общем-то дружу, но есть масса терминов, которые ещё не знаю

Alexander
15.12.2017
07:25:48
ага, никаких new (вернее с большими оговорками). Никаких исключений. Не смотреть в std:: и всякие либы

Alexey
15.12.2017
07:26:05

Berkus
15.12.2017
07:26:34

Никита
15.12.2017
07:26:49

Berkus
15.12.2017
07:27:02
опять же, если это нужно
в ++ можно и без кучи спокойно прожить
placement new завезли

Alexander
15.12.2017
07:28:55

Berkus
15.12.2017
07:29:14
как человек, написавший кусок ОСи на С++, я тебе говорю - можно без проблем писать лоу левел код на плюсах, это гораздо удобнее чем си

Alexey
15.12.2017
07:29:16

Berkus
15.12.2017
07:30:02

Alexey
15.12.2017
07:30:42
На рокете

Admin
ERROR: S client not available

Alexander
15.12.2017
07:33:16
http://scmrtos.sourceforge.net/ScmRTOS
Ну я тоже в эмбеддед пишу, на крестах и FreeRTOS. Когда начинал, зассал scmRTOS освоить, теперь жалею.

Google

Maksim
15.12.2017
07:35:35
Доброе утро. Подскажите, пожалуйста, легален ли подобный код https://godbolt.org/g/cdi4Mz в рамках C++17? Отказывается компилироваться на gcc (trunk) и clang (trunk), но компилируется на последнем MSVC.

Aleksei
15.12.2017
07:46:04

Maksim
15.12.2017
07:46:28
Я так и написал (что ругается).

Berkus
15.12.2017
07:46:58
На рокете
надо еще посмотреть как у него сделан MMU, возможно там есть perpage управление кэшированием, например

Aleksei
15.12.2017
07:47:48
Мне тут из соседнего отдела коллега рассказал, что у него студия игнорировала delete на конструкторе копирования. Нормально собирался проект, а gcc ошибку в нужном месте выдавал. Забыл только версию спросить

Maksim
15.12.2017
07:49:33
А так уже работает: https://godbolt.org/g/8rWu9V

Anatoly
15.12.2017
08:12:12

Berkus
15.12.2017
08:13:25

Anatoly
15.12.2017
08:15:59

Vladislav
15.12.2017
08:18:44

Aleksei
15.12.2017
08:18:48

Berkus
15.12.2017
08:18:55

Anatoly
15.12.2017
08:19:10

Ilia
15.12.2017
08:23:30

Berkus
15.12.2017
08:24:11

Anatoly
15.12.2017
08:24:24

Berkus
15.12.2017
08:24:24
буду делать предложения покороче

Google

Anatoly
15.12.2017
08:25:51

Alexander
15.12.2017
08:46:15
msvc стал лучше, но всё равно говно
И когда он там выйдет на уровень нормальных компиляторов, хз

Igor
15.12.2017
08:49:39
auto iter = std::find(container.begin(), container.end(), elem) + 1
если найдётся end, его инкремент приведёт к UB?