Size: a a a

2021 January 02

C

ChoiPinMing in pro.osdev
Ну и под конец года запилил  jtag но тут же сжег малину самопальным переходником
источник

AM

AlexShell Makise in pro.osdev
ChoiPinMing
Ну и под конец года запилил  jtag но тут же сжег малину самопальным переходником
F
источник

C

ChoiPinMing in pro.osdev
Щас делаю дравер для emmc, чтоб можно было через uart либо jtag кидать ядро по шнуру сразу на sd карту
источник

BD

Berkus Decker in pro.osdev
ChoiPinMing
Редко пишу, но раз такая тема. Я тоже занимаюсь своим ядром для малинки. В прошлом году сделал таски и шедулинг с работой на всех доступных ядрах, базовый mmu, с разделением на давайсовую и ядерные памяти и спинлоки. Тоже стояла задача запустить usb, в блокирующем режиме получилось сравнительно быстро, а в асинхронном с очередями ушло 3 месяца, но блин оно работает и это круто. То есть можно отрисовывать в параллель с чтением с флешки
Круто! 👍
источник

BD

Berkus Decker in pro.osdev
ChoiPinMing
Щас делаю дравер для emmc, чтоб можно было через uart либо jtag кидать ядро по шнуру сразу на sd карту
Через jtag+gdb можно ядро прямо в память грузить. А на сд оставить только стаб который gpio включает для jtag и дальше просто спит
источник

C

ChoiPinMing in pro.osdev
Berkus Decker
Через jtag+gdb можно ядро прямо в память грузить. А на сд оставить только стаб который gpio включает для jtag и дальше просто спит
Да я так делаю с оговорками, но мне показалось это слишком долго в итерациях
источник

BD

Berkus Decker in pro.osdev
Ну да в целом как то небыстро получается. А как ты хочешь быстрее?
источник

C

ChoiPinMing in pro.osdev
А на uart еще дольше, хочу вложиться в гибкость дебага
источник

BD

Berkus Decker in pro.osdev
Заливать на сд и ребутить еще медленнее кмк
источник

BD

Berkus Decker in pro.osdev
А, еще одна штука которую я начал пробовать в прошлом году - code coverage тестов в qemu или на девайсе. Но пока там непонятно как заставить профайлинг либу собраться правильно.
источник

C

ChoiPinMing in pro.osdev
Berkus Decker
Ну да в целом как то небыстро получается. А как ты хочешь быстрее?
Хочу не вытыкая шнур иметь возможность апдейтить ядро на файловой системе на sdcard , не переподключая. Это поможет в тех случаях, когда хочется запустить сначала  не перекомпилируя бинарь
источник

C

ChoiPinMing in pro.osdev
Например если ищешь косяк, можно раз 20 перезапускать всю конструкцию , просто добавляя брейки
источник

BD

Berkus Decker in pro.osdev
А, понял идею
источник

C

ChoiPinMing in pro.osdev
Berkus Decker
А, еще одна штука которую я начал пробовать в прошлом году - code coverage тестов в qemu или на девайсе. Но пока там непонятно как заставить профайлинг либу собраться правильно.
А что за профайлинг либа ?
источник

C

ChoiPinMing in pro.osdev
Кстати в qemu есть косяк в эмуляции mmu. Но не помню в чем точно. По моему он игнорирует значение access bit , в то время как на железе будет data abort .
источник

C

ChoiPinMing in pro.osdev
Или был, короче я с ним столкнулся
источник

BD

Berkus Decker in pro.osdev
ChoiPinMing
Кстати в qemu есть косяк в эмуляции mmu. Но не помню в чем точно. По моему он игнорирует значение access bit , в то время как на железе будет data abort .
Я наелся с кему говна порядочно - из малинки он эмулирует правильно примерно ничего (в частности мму флаги там наполовину игнорятся, выравнивание не проверяется как на реальном проце и т.д.)

Поэтому все перепроверяю на реальной железяке.
источник

BV

Boris Vinogradov in pro.osdev
ChoiPinMing
Кстати в qemu есть косяк в эмуляции mmu. Но не помню в чем точно. По моему он игнорирует значение access bit , в то время как на железе будет data abort .
ну это стандартный баян кему
источник

BD

Berkus Decker in pro.osdev
ChoiPinMing
А что за профайлинг либа ?
В расте подключили новую фишку из llvm - source based profiling. Оно там генерит небольшую либу с примитивами но я не смог ее пока слинковать без std.
источник
2021 January 03

dt

d t in pro.osdev
d t
https://cppcast.com/ - туда бывает строуструпы заходят всякие.
О, к ним оказывается лакос "заглядывал" - https://cppcast.com/john-lakos-large-scale-cpp/. Сам пока не слушал.
источник