Top.Mail.Ru
Ответы

В чем разница между системными вызовами и обычными библиотеками (string, iostream...) ?

По дате
По рейтингу
Аватар пользователя
Просветленный
7лет

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

Аватар пользователя
Просветленный
7лет

Системные вызовы - это вызовы функций операционной системы (API). Программа, использующая такие вызовы в исходном коде, не будет работать на другой ОС (её нельзя даже откомпилировать для другой ОС).
Библиотеки скрывают разницу между операционными системами и более удобны в использовании. Библиотечные функции при необходимости вызывают функции ОС.
Для работы класса string системные вызовы не нужны (если не учитывать выделение памяти).

Аватар пользователя
Просветленный
7лет

библиотеки это удобный интерфейс к системным вызовам

Источник: <a rel="nofollow" href="https://stackoverflow.com/a/572954/6229350" target="_blank">https://stackoverflow.com/a/572954/6229350</a>