Системното повикване и библиотечното повикване са свързани с операционната система на компютър. Компютърът може да работи в два режима; а именно потребителски режим и режим на ядрото. Най- ключова разлика между системното повикване и библиотечното повикване е това Системното повикване е функция, осигурена от ядрото за влизане в режим на ядрото за достъп до хардуерните ресурси, докато библиотечното повикване е функция, осигурена от библиотеки за програмиране. Например, open () е системно повикване, а fopen () е библиотечно повикване. Когато fopen () в програма C използва заглавната библиотека stdio.h. Тогава системното обаждане 'open ()' се използва от ядрото, за да завърши задачата за отваряне на файл.
1. Преглед и ключова разлика
2. Какво е системно обаждане
3. Какво е библиотечно обаждане
4. Прилики между системно повикване и библиотечно обаждане
5. Паралелно сравнение - системно повикване срещу библиотечно обаждане в таблична форма
6. Резюме
Компютърът работи в два режима. Те са потребителски режим и режим на ядрото. Някои процеси протичат в компютърна система. Процесът е програма в изпълнение. Когато се изпълняват приложни програми, компютърът е в потребителски режим. Ако е необходим хардуерен ресурс, процесът изпраща заявка до ядрото и компютърът влиза в режим на ядрото. Тези заявки се изпращат чрез системни повиквания. Компютърът често превключва между тези два режима. Когато задачата е завършена, компютърът се връща в потребителски режим от режима на ядрото. Този преход на режим е известен като „контекстна смяна.”Системните повиквания са интерфейс между операционната система и потребителските програми.
Фигура 01: Системни обаждания
Има различни видове системни обаждания. Създайте, прекратете процеса, изпълнявайки процеса, разпределете и освободете памет, можете да направите с помощта на „Система за обаждания на системата за управление на процесите.""Система за обаждания на файлови системи”Може да се използва за създаване, изтриване, четене, писане, отваряне, затваряне на файлове. Процесът изисква някои ресурси за завършване на изпълнението. Заявката и освобождаването на устройствата се извършват чрез „Система за обаждания на устройството за управление.""Система за обаждания в системата за управление на информация“Може да се използва за получаване на системни данни и за получаване на процеси и атрибути на устройството. Процесите общуват помежду си. Тази комуникация се извършва с помощта на „Призиви за комуникационна система.”Изпращане на информация за състоянието, създаване и изтриване на комуникационни връзки и изпращане, получаване на съобщения може да се извърши с помощта на повиквания в комуникационната система.
Повикването в библиотеката е функция, осигурена от програмните библиотеки. Преди да извършите библиотечно обаждане, тази библиотека трябва да бъде импортирана. Повикването в библиотеката може да зависи от системното повикване.
На езика на C тези функции могат да се използват в програмата, като се включат заглавните файлове. Файловете в заглавката са включени чрез директива за предварително обработване #include. Препроцесорът сканира указания файл, преди да продължи с останалата част от изходния файл. Някои общи функции на библиотеката са както следва: „math.h“ библиотеката включва функции, свързани с математическите операции. „Stdio.h“ библиотеката предоставя функции за извършване на вход и изход. „Fopen ()“ отваря посочено името на файла. „Fclose ()“ затваря файла. “Printf () се използва за изпращане на форматирания изход към стандартен изход. „Fprintf ()“ се използва за изпращане на форматирания изход към поток. „Scanf ()“ се използва за четене на форматиран вход от стандартен вход. „Stdlib.h“ предоставя функции за управление на паметта, а „time.h“ предоставя функции за манипулиране на час и дата.
System Call vs Library Call | |
Системното повикване е функция, осигурена от ядрото за влизане в режим на ядрото за достъп до хардуерни ресурси. | Библиотечното повикване е функция, осигурена от библиотеката за програмиране. |
Начин на изпълнение | |
Системно повикване се изпълнява в режим на ядрото. | Обаждането в библиотеката се изпълнява в потребителски режим. |
Превключване на режим | |
Превключване на системно повикване от потребителски режим в режим на ядрото. | В библиотечното повикване няма преминаване от потребителски режим в режим на ядрото. |
преносимост | |
Системното повикване не е преносимо. | Обаждането в библиотеката е преносимо. |
Системното повикване е реализирано в ядрото, а библиотечното повикване е реализирано в потребителското пространство. Разликата между системно повикване и библиотечно повикване е, че системното повикване е функция, осигурена от ядрото, за да влезе в режим на ядрото за достъп до хардуерни ресурси, а библиотечното повикване е функция, осигурена от библиотеките за програмиране. Обажданията в библиотеката може да зависят от системните обаждания за изпълнение на задачата. open (), fork (), cd () са някои примери за системни обаждания. fopen (), fprintf () са примери за повиквания в библиотеката.
Можете да изтеглите PDF версия на тази статия и да я използвате за офлайн цели, съгласно цитираната бележка. Моля, изтеглете PDF версия тук Разлика между системно и библиотечно обаждане
1. Точка, уроци. „Файлове със заглавия на C“., Учебни точки, 1 ноември 2017 г. Достъпни тук
2.Santhosh. „Функция на системно повикване v / s Библиотека.“ Търсенето на знания, 19 август 2011 г. Достъпно тук
3. Точка, уроци. „Библиотека на C“., Учебни пунктове, 19 септември 2017 г. Налични тук