Системний виклик та бібліотечний виклик пов'язані з операційною системою комп'ютера. Комп'ютер може працювати в двох режимах; а саме режим користувача та режим ядра. The ключова різниця між системним викликом і викликом бібліотеки це те, що Системний виклик - це функція, що надається ядром для входу в режим ядра для доступу до апаратних ресурсів, тоді як виклик бібліотеки - це функція, що надається бібліотеками програмування. Наприклад, 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" надає функції для маніпулювання часом та датою.
Системний виклик проти бібліотечного виклику | |
Системний виклик - це функція, що надається ядром для входу в режим ядра для доступу до апаратних ресурсів. | Виклик бібліотеки - це функція, що надається бібліотекою програмування. |
Режим виконання | |
Виклик системи виконується в режимі ядра. | Виклик з бібліотеки виконується в режимі користувача. |
Переключення режимів | |
Переключення системного виклику з режиму користувача в режим ядра. | У виклику бібліотеки немає переключення з режиму користувача на режим ядра. |
Переносність | |
Системний виклик не є портативним. | Дзвінок у бібліотеку є портативним. |
Системний виклик реалізований у ядрі, а бібліотечний виклик реалізований у просторі користувача. Різниця між системним викликом і викликом бібліотеки полягає в тому, що системний виклик - це функція, що надається ядром для входу в режим ядра для доступу до апаратних ресурсів, а виклик бібліотеки - це функція, що надається бібліотеками програмування. Виклики бібліотеки можуть залежати від системних викликів для виконання завдання. open (), fork (), cd () - деякі приклади системних викликів. fopen (), fprintf () - приклади викликів бібліотеки.
Ви можете завантажити PDF-версію цієї статті та використовувати її в офлайн-цілях відповідно до примітки. Завантажте тут версію PDF тут. Різниця між системним викликом та бібліотечним викликом
1.Будинка, Підручники. "Файли заголовків C"., Підручники, 1 листопада 2017 р. Доступні тут
2.Сантош. "Функція системного виклику v / s". Квест на знання, 19 серпня 2011 р. Доступний тут
3. Пункт, Підручники. "Бібліотека С", Навчальний посібник, 19 вересня 2017. Доступний тут