Amina
14.05.2018
11:41:15
Дед Пегас
14.05.2018
11:42:49
Amina
14.05.2018
11:43:56
Born
14.05.2018
15:06:56
Всё-таки ftrace и правда мощная штука. Сложно нарадоваться.
Такой вопрос. В кернел коде много функций с названием типа func() и __func(). Это же какое-то соглашение? Есть у кого линк под рукой?
Google
Дед Пегас
14.05.2018
15:08:05
LexsZero
14.05.2018
15:09:41
Casus
14.05.2018
15:10:22
народ подскажите как выкрутиться с 8 битным мк и плавающей точкой
когда мне нужно было работать с 24 битным числом на 8 битном мк я распологал 3 байта в памяти последовательно, работал с младшим байтом, а флаг переноса пихал дальше в средний байт, а с него в старший...
Теперь появилась нужда работать с длинными вещественными числами, как похожим образом такое сделать?
Born
14.05.2018
15:10:44
LexsZero
14.05.2018
15:11:29
про нейминг тоже есть немного
Born
14.05.2018
15:11:56
LexsZero
14.05.2018
15:13:27
и эти апишные функции это тупо врапперы для дженерик-кишков
но вообще это такой толстый намек, что нормальным людям эту функцию вызывать ОЧЕНЬ НЕ СТОИТ
Born
14.05.2018
15:17:45
LexsZero
14.05.2018
15:18:25
а, еще в стайлгайде написано, что если вам нужно больше двух уровней индентов - то код ваш говно и его надо отрефакторить for clarity. вот для этого тоже юзаются __func
Born
14.05.2018
15:19:54
Лол. Мне нравится. Теперь всегда так делать буду. Хороший код -- это хорошо!
LexsZero
14.05.2018
15:20:22
ну на самом деле злоупотреблять этим тоже не стоит
Google
LexsZero
14.05.2018
15:21:03
но если у тебя допустим какой-нибудь цикл с телом на два экрана, то его логично вынести в функцию
Artem
14.05.2018
15:21:41
и будет функция на два экрана))
LexsZero
14.05.2018
15:22:08
зато не будет двух экранов лишнего индента и сразу понятно что делает цикл
Artem
14.05.2018
15:22:57
большие функции стоит разбивать на более мелкие
иначе боль
LexsZero
14.05.2018
15:23:22
void __ebat(kogo) { /* два экрана ебли */ }
void vyebat_vseh_gusey() {
for_each(gusi, item) {
__ebat(item)
}
}
In internal code, the convention usually is that symbol __something is workhorse for something excluding some management, often locking. That is a reason for things like __d_lookup . Similar convention for system calls is that sys_something is the system call entry point that handles context switch to and from kernel and calls do_something to do the actual work.
вот пример про локинг - частый и хороший, да
Xessao
14.05.2018
17:20:36
Casus
14.05.2018
17:49:28
если тема про эмбедд то эта функция я так понимаю от какого-то комбайна на птицефабрике
Denis
14.05.2018
17:50:43
Born
15.05.2018
05:17:19
Бтв тут как-то я поднимал вопрос про то, каким волшебными образом соки семейства am335x (по крайней мере они точно) умудряются бутиться с карт с fat. Таки дошли руки и глянул. Действительно, как тогда и сказали, сок составляет бутинг лист, а когда доходит до mmc/sd, он может работать либо в raw режиме, либо в fat. Режим он детектит по мэджик намберам в обязательной структурке загрузочного образа. Если фейл, то пытается считать mbr и дальше листает активные партиции до тех пор, пока в руте не находит файл с названием MLO.
Dmitry
15.05.2018
05:43:43
Это ж какого размера бутром нужен, чтобы туда всё это влезло?
Nikita
15.05.2018
06:24:14
Жирный, но это ti, эти могут
Erdni
15.05.2018
06:45:33
В загрузчиах не шарю,
Но разве прочитать фат - много надо? Либа от elm-chan на 8бит мк заводится нормально
Nikita
15.05.2018
07:17:05
проблема больше в том, что это надо очень хорошо и аккуратно оттестить, поскольку забивается в масочное ПЗУ
Знакомый рассказывал как они матерясь отлаживали такую штуку на симуляторе
точнее сам bootrom
ну и много туда не запихаешь, дорого.
Amina
15.05.2018
07:29:01
Всем привет!? Опубликуйте, пожалуйста, вакансию на канале @rabotaembedded. Заранее спасибо)
#вакансия #запроснарекомендацию #C #C++ #Linux #embeddeddeveloper #job #spb
Ищу Embedded Developer (Linux) в международную IT-компанию (СПб)
Опыт и знания:
•Высшее образование (предпочтительно техническое)
•Знание ПК на уровне программиста
•Уверенный технический английский язык (способность читать и использовать в работе профессиональные материалы на английском языке). Знание английского языка на разговорном уровне - дополнительное преимущество.
•Понимание архитектуры ОС системы GNU/Linux
•C/C++ - обязательно уверенное владение
•Опыт написания драйверов устройств и прототипов
•Желателен опыт программирования на скриптовых языках (Bash, Awk,Sed,Perl,Python)
•Ответственность, внимательность, умение решать несколько задач одновременно
Задачи:
•Системное программирование
•Создание драйверов периферии, сервисного меню
•Разработка модулей ядра и системных библиотек комплекса программного обеспечения для игрового оборудования: отказоустойчивые системы хранения данных с восстановлением целостности данных после сбоев, модули ядра, драйверы оборудования приёма и выдачи купюр/карт
•Портирование драйверов Windows в Linux
•Обнаружение ошибок в системах, обработка нештатных ситуаций
Условия:
•Привлекательный уровень заработной платы (высокий оклад + годовые бонусы, подробнее - в личку)
•Расширенный компенсационный пакет, включая ДМС, бесплатное питание
•Комфортабельное рабочее место, современный офис
•Возможности для профессионального развития в крупной международной компании
Telegram: @aminaefendieva44
Google
Valter
15.05.2018
07:53:00
Умение решать несколько задач одновременно...гениально
Nikita
15.05.2018
07:53:29
Valter
15.05.2018
07:54:33
А почему наличие второй головы и пару рук хотя бы не требуют
Nikita
15.05.2018
07:55:10
потому что аугментации пока ещё не массовый продукт
а если серьёзно - ни разу не встречал ситуацию чтобы был один проект и ты его пилишь. Обычно есть что-то в параллель с большим или меньшим приоритетом.
Valter
15.05.2018
07:56:40
Это не есть одновременно
Это что то из фулстек
Одновременно больше одной задачи никто не могет
Nikita
15.05.2018
08:01:37
именно одновременно да
а по таймслотам вполне
мне, например, бывает даже полезно переключиться на что-то другое, если основная задача не идёт
Valter
15.05.2018
08:04:10
Это всем полезно, сама формулировка про одновременно звучит как рабство
Vasia
15.05.2018
08:11:02
Умирает orange pi, как настроить логи так, чтобы он все вываливал в уарт когда работает и помирает, а то после перезагрузки пустота
Alexey
15.05.2018
08:14:06
Я имею в виду ttyS0, который типа системный
Vasia
15.05.2018
08:14:38
Значит колом встаёт чип
Alexey
15.05.2018
08:15:12
Скорее флешка умирает. Если много записи на неё, то ресурс быстро исчерпывается.
Vasia
15.05.2018
08:15:39
Ему может не нравится dcdc чтоб аж помирает?
Флешку другую тоже попробую
Хочется хоть какой то обратной связи от системы, кернелпаник или крешдамп
Google
Vasia
15.05.2018
08:16:38
Падает то после 2-3 дней работы
LexsZero
15.05.2018
08:17:01
у меня на оранже выгорели регули на 3.3 лул
Alexey
15.05.2018
08:17:05
Может быть ещё перегрев, так как по умолчанию там конфиги разогнанные во многих образах.
Vasia
15.05.2018
08:18:11
Не, радиатор стоит и температура терпимая
Хотя ничего не мешает сделать мониторинг
Alexey
15.05.2018
08:20:25
Начни с питания.
Обычно, всегда стоит начать с питания.
Valter
15.05.2018
08:24:27
Точно, нужно поесть
Alexey
15.05.2018
08:25:28
Причём при плохом питании вроде и флешка может умирать быстрее - такие у меня были симптомы, пока я не отказался от китайского PoE и не воткнул БП на 2А.
Vasia
15.05.2018
08:29:07
У меня плата питает от преобразователя 12 -> 5, 12в блок мощный, но на нем висит винт.
Попробую просто от блока питания, там уже плясать буду
Nikita
15.05.2018
08:34:53
Vasia
15.05.2018
08:36:34
Винт постоянно крутит блины, там свой контроллер стоит
Nikita
15.05.2018
08:36:52
Vasia
15.05.2018
08:37:01
Неа
Так же надёжнее
Nikita
15.05.2018
08:37:09
обычно винт всё же когда к нему никто не ходит блины тормозит
LexsZero
15.05.2018
08:39:26
это настраивается, hdparm -B
Evgeniy
15.05.2018
08:42:42
Граждане, мало ли, но все же, нет ли у кого IPC 7351B?
Google
пикотранзистор
15.05.2018
13:48:37
Всем привет!? Опубликуйте, пожалуйста, вакансию на канале @rabotaembedded. Заранее спасибо)
#вакансия #запроснарекомендацию #C #C++ #Linux #embeddeddeveloper #job #spb
Ищу Embedded Developer (Linux) в международную IT-компанию (СПб)
Опыт и знания:
•Высшее образование (предпочтительно техническое)
•Знание ПК на уровне программиста
•Уверенный технический английский язык (способность читать и использовать в работе профессиональные материалы на английском языке). Знание английского языка на разговорном уровне - дополнительное преимущество.
•Понимание архитектуры ОС системы GNU/Linux
•C/C++ - обязательно уверенное владение
•Опыт написания драйверов устройств и прототипов
•Желателен опыт программирования на скриптовых языках (Bash, Awk,Sed,Perl,Python)
•Ответственность, внимательность, умение решать несколько задач одновременно
Задачи:
•Системное программирование
•Создание драйверов периферии, сервисного меню
•Разработка модулей ядра и системных библиотек комплекса программного обеспечения для игрового оборудования: отказоустойчивые системы хранения данных с восстановлением целостности данных после сбоев, модули ядра, драйверы оборудования приёма и выдачи купюр/карт
•Портирование драйверов Windows в Linux
•Обнаружение ошибок в системах, обработка нештатных ситуаций
Условия:
•Привлекательный уровень заработной платы (высокий оклад + годовые бонусы, подробнее - в личку)
•Расширенный компенсационный пакет, включая ДМС, бесплатное питание
•Комфортабельное рабочее место, современный офис
•Возможности для профессионального развития в крупной международной компании
Telegram: @aminaefendieva44
Опубликовал в @rabotaembedded.
Amina
15.05.2018
13:49:00
Mikhail
15.05.2018
18:48:17
Доброго вечера! Подскажите, пожалуйста, кто знает. Есть плата BeagleBone Black. Для нее есть готовые образы для установки (https://beagleboard.org/latest-images ). Зашиваешь MicroSD карту и она сама ставится во внутреннюю память. Как сделать такой же образ с кастомным ядром и rootfs?
Ядро и rootfs я собрал. Заливаю на карту памяти и с нее линукс работает. Научился заливать вручную во внутреннюю память, но это очень трудозатратно. Хочется сделать именно так, как у этих образов, чтобы вставил карту памяти и линукс сам перекочевал в плату. очень много времени уже на это потратил. Очень буду признателен, если вы мне что-нибудь посоветуете.
Valter
15.05.2018
18:50:50
Qt кто нидь использует для программировпния мк?
ge0gr4f
15.05.2018
18:51:14
Oleh
15.05.2018
18:51:20
Mikhail
15.05.2018
18:58:48
Oleh
15.05.2018
19:00:38
Немного уточню :)
https://github.com/jumpnow/meta-bbb/tree/rocko/recipes-support/emmc-installer
А то Yocto как далеко
Это рецепт который находится в слое для beaglebone black для Yocto
Cate
15.05.2018
19:03:28
https://habr.com/post/358638/
Casus
15.05.2018
19:09:36
народ у кого сайт работает http://www.coocox.org/software/coide.php
можете кокос на яндекс диск перезалить?
Богдан
15.05.2018
19:12:52
Valter
15.05.2018
19:13:53
И как по коду на выходе, сильно раздувает?
Богдан
15.05.2018
19:14:40
Mikhail
15.05.2018
19:19:15
Qt ж — это UI, в основном, нет?
пикотранзистор
15.05.2018
19:21:53
Есть же Qt Embedded. Во всяких Sharp Zaurus'ах на нём весь гуй написан, да.
Mikhail
15.05.2018
19:26:05
Максим
15.05.2018
19:30:33
Valter
15.05.2018
19:33:29
Поддержка в 2009 прекращена Qt Embedded