@WisdomButcher

Многопоточность в Си в ассемблерном исполнении — возможно?

Добрый вечер!
В Си многопоточность.обычно реализована в библиотеке pthreads.h, причём Си можно отлаживать как код на ассемблере. Прочитал в интернете, что ассемблерная программа может выполняться только на одном ядре. Как тогда реализована многопоточность в Си, раз есть эквивалентный код на ассемблере, например, в gnu debugger?
Спасибо.
  • Вопрос задан
  • 291 просмотр
Пригласить эксперта
Ответы на вопрос 1
15432
@15432
Системный программист ^_^
В Си многопоточность.обычно реализована в библиотеке pthreads.h
Многопоточность реализуется операционной системой. pthreads - просто библиотека, чтобы операционной системе сказать, мол, вот тебе отдельный поток для запуска

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

Прочитал в интернете, что ассемблерная программа может выполняться только на одном ядре.
Покажите, где такая ерунда написана

Как тогда реализована многопоточность в Си
В Си - просто интерфейс управления многопоточностью. Сама многопоточность - в операционной системе.

раз есть эквивалентный код на ассемблере например, в gnu debugger
Как в Си, так и в ассемблере вы просто увидите "вызвать pthread_create", и всё
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
VMS Software Санкт-Петербург
от 110 000 ₽
ГК «ХайТэк» Москва
от 150 000 до 200 000 ₽
Aquarius Москва
от 160 000 ₽
23 окт. 2020, в 05:33
15000 руб./за проект
23 окт. 2020, в 03:00
1500 руб./за проект