Обновить
18

Пользователь

1
Подписчики
Отправить сообщение

А почему просто не воспользоваться возможностями которые идут из коробки?
С кросс-компилятором идет gdb, openocd умеет работать как gdb сервер,
подключаемся gdb к openocd и вот у нас repl, gdb умеет и скрипты запускать,
и интерпретироваться подмножество языка С, типа *(int *)0x4 = 5;,
и можно даже вызывать отдельные функции из загруженного кода в память МК.
Ну и скрипты на python он поддерживает.

А что не так с io streams?

Первые реализации streams были значительно медленнее аналогов из C stdlib,
поэтому сложилось предубеждение, что io stream это плохо:


https://stackoverflow.com/questions/18688763/why-is-istream-ostream-slow

А у меня результат (gcc 8.2.1) выглядит так:


(gdb) disassemble main 
Dump of assembler code for function main:
   0x0000000000001040 <+0>:     push   %rbp
   0x0000000000001041 <+1>:     vmovdqa 0xfd7(%rip),%ymm0        # 0x2020
   0x0000000000001049 <+9>:     xor    %eax,%eax
   0x000000000000104b <+11>:    vpxor  %xmm3,%xmm3,%xmm3
   0x000000000000104f <+15>:    vmovdqa 0xfe9(%rip),%xmm4        # 0x2040
   0x0000000000001057 <+23>:    mov    %rsp,%rbp
   0x000000000000105a <+26>:    and    $0xffffffffffffffe0,%rsp
   0x000000000000105e <+30>:    xchg   %ax,%ax
   0x0000000000001060 <+32>:    vextractf128 $0x1,%ymm0,%xmm1
   0x0000000000001066 <+38>:    vpaddq %xmm0,%xmm4,%xmm2
   0x000000000000106a <+42>:    vpaddq %xmm1,%xmm4,%xmm1
   0x000000000000106e <+46>:    add    $0x1,%eax
   0x0000000000001071 <+49>:    vxorps %ymm0,%ymm3,%ymm3
   0x0000000000001075 <+53>:    vinsertf128 $0x1,%xmm1,%ymm2,%ymm0
   0x000000000000107b <+59>:    cmp    $0x2625a0,%eax
   0x0000000000001080 <+64>:    jne    0x1060 <main+32>
   0x0000000000001082 <+66>:    lea    0xf7b(%rip),%rdi        # 0x2004
   0x0000000000001089 <+73>:    vmovdqa %xmm3,%xmm0
   0x000000000000108d <+77>:    xor    %eax,%eax
   0x000000000000108f <+79>:    vextractf128 $0x1,%ymm3,%xmm3
   0x0000000000001095 <+85>:    vpxor  %xmm3,%xmm0,%xmm3
   0x0000000000001099 <+89>:    vpsrldq $0x8,%xmm3,%xmm0
   0x000000000000109e <+94>:    vpxor  %xmm0,%xmm3,%xmm3
   0x00000000000010a2 <+98>:    vmovq  %xmm3,%rsi
   0x00000000000010a7 <+103>:   vzeroupper 
   0x00000000000010aa <+106>:   callq  0x1030 <printf@plt>
   0x00000000000010af <+111>:   xor    %eax,%eax
   0x00000000000010b1 <+113>:   leaveq 
   0x00000000000010b2 <+114>:   retq   
End of assembler dump.
Маловероятно, что у них есть тест, проверяющий завершение 1000 процессов

Это же одна из самых востребованных функций ОС — запуск новых процессов,
думаете у них теста одновременного запуска максимально возможного количества процессов? А как иначе тестировать обработку максимального количества объектов разного рода от дескрипторов файлов до GDI объектов и как ОС обрабатывает эту ситуацию. Очень странно было бы не автоматизировать проверку обработки этого крайнего случая.


Но я имел ввиду не конкретный тест, а совокупность тестов. Разработчики llvm не делают же чего-то необычного запуская тесты в нескольких процессах одновременно,
точно также прогон тестов WIN32 API и всех компиляторов разработанных MS должен по идее выглядеть.

А что в самом MS происходит раз они выпускают Update с такой проблемой? У них же самих должен быть набор тестов для WIN32 API, и он идее прогон их тестового набора тоже должен был замедлиться в несколько раз, им было на это наплевать?

Почему обычные админы localhost-а не имеют возможности

Но есть же и плюсы, опыт управления localhost можно использовать
для управления любой машиной с Linux и даже не нужно разбираться что там
за дистрибутив.

Так вроде эта сфера уже поделена давно, там сейчас Sailfish OS плюс китайский телефоны, а до это вроде жена Касперского продвигала телефон с "проверенным Android".

А если возможно, то какие минусы? Они же должны быть, раз этого еще не сделали.

Давно уже вроде сделали, насколько я помню интерфейс некоторых антивирусов написан на
https://sciter.com/

У меня с закрыьвми глазами, скорее амего, проблемы с позицирнированием рук

Там же выступы/пимпочки специальные на клавишах, на которые нужно ставить указательные пальцы.

Это может сработать только при условии, что автор статьи жил в отдельно стоящем доме, куда уходит своя пара медных проводов

В США, Коннектикут разве это может быть не отдельно стоящий дом на одну семью?

Основной бизнес Блумберга финансовые софт, данные и услуги, включая терминал

Отсылка к авторитету? Но ведь сначала они утверждали, что всех их источники это офицеры спецслужб и сотрудники Amazon и Apple и даже дали фотографию "закладки".
Теперь источник не несколько, а один, работает он в совершенно другом месте, и закладка совсем не там, плюс еще выявлена только по косвенным данным, банально разобрать разьём предъявить чип никто не смог? Все это мы должны забыть и помнить что это огромная компания и она не может ошибаться?

Там есть такие начальные условия


freq[256] = 1;
v = 1000000000L;

поэтому внутрь if поток управления должен попасть.


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

Вообще xdxf можно прямо в формата stardict конвертировать.
Например с помощью https://github.com/soshial/xdxf_makedict .

А смысл вообще существования этих телеканалов в Интернет?
Разве те, кто обладают техническими возможностями по просмотру
видео в Интернете, не будут пользоваться какими-то другими ресурсами,
зачем им нужны эти телеканалы?

Современный процессор Intel выполняет до 180 инструкций одновременно (в отличие от
последовательной абстрактной машины C

А точно эта и куча перечисленных сложностей из-за С?
Мне всегда казалось, что из-за обратной совместимости "ассемблера" (если мы уж говорим о языках программирования). Иными словами уже написанные и скомпилированные программы
нужно с каждой ревизией процессора выполнять все быстрее и быстрее. А никак не для того,
чтобы облегчить разработчикам С компилятора жизнь.

всё необходимое для удаленной сборки, тестирования, отладки и пр. уже давно >придумано, а в гугле явно есть еще и культура использования этих инструментов.

А смысл тогда какой? Если все будет происходить на удаленной машине,
то какая разница сколько памяти и ядер на машине разработчика.


Тем более что хром надо собирать и гонять тесты на нескольких ОС, и какой бы >быстрой машинка разработчика не была, несколько серверов могут делать это >параллельно

Ну это уже CI/CD и по-моему к теме обсуждения касательства не имеет.

Ну насколько я знаю, каждая машина разработчика chrome одновременно является таким сервером удаленной сборки. Но учитывая что еще нужна IDE и их любовь к fuzzer'ам и sanitizer'ам думаю все равно в 4 ядра не влезет. Насколько я знаю Google активно участвует в разработке clangd, возможно это поможет им решить проблему с IDE, но все равно необходимость тестирования и отладки…

Возможно, имея компьютер с 4мя ядрами, они, выкачав с утра последние изменения из VCS, не успели бы к вечеру собрать chrome с новыми изменениями.

В смысле именно по Qt встроенная документация?

Да, документация пример которой можно увидеть здесь: http://doc.qt.io/
Поставляется с Qt (для linux часто отдельным пакетом), ее можно посмотреть
либо в отдельном приложении (Qt assistant) или просто нажав F1 на классе в Qt Creator.

Недавно было интересное обсуждение в рассылки clang,
называлось "clangd/libclang: how to emulate other compilers?"


Думаю там можно посмотреть как clangd собирается бороться с этим.


Интересная и уникальная возможность clangd на мой взгляд это индексация
во время компиляции, собрал проект — вот тебе и индекс, а то переключаешься
с проекта на проект и начинается — компиляция того что поменяли, плюс IDE
индексы перестраивает...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность