原语和系统调用的区别和联系

区别:

1)首先根据操作系统层次划分,原语和系统调概念强调于不同层次上。

原语属于操作系统,在操作系统面和硬件面之间

系统调用属于操作系统,在用户程序面和操作系统面之间

2)其次术语概念不同。

原语是指一系列原子性的操作/针对硬件的一系列操作,一般的实现是通过指令实现的,比如开关中断,主要强调的是原子性,也就是原子操作。

系统调用强调的是一个接口性的问题,是用户程序和操作系统的接口,是为了获取系统服务而为用户程序提供的接口

3)系统调用强调在核心态执行的os的程序,原语强调是操作系统核心态下程序可以调用的小程序,可以直接当成是命令,指令来理解。也可以用大程序和小程序简单理解.

4)原语常驻内存,但是系统调用不是

联系:

1)再者从代码上系统调用是一个程序,本质确实也是指令的集合,这点和原语一致,但这是程序的最基本组成单元,几乎无法再分,所以只能说是二者的联系。

2)都在内核态下才能运行

相关推荐
代码村新手1 小时前
Linux-vim的使用和配置
linux
吴声子夜歌1 小时前
编写Shell脚本——启动项目
linux·运维·shell
闲云野鹤在人间2 小时前
云计算入门|网络与存储云服务知识梳理
linux·运维·服务器·网络·centos·云计算·php
heqingchun162 小时前
Ubuntu 22.04 交叉编译 RK3568 MPP + FFmpeg 完整指南
linux·ubuntu·ffmpeg
好评1242 小时前
【Linux】五种IO模型与非阻塞IO
linux·服务器·nat
啦啦啦啦啦zzzz2 小时前
Appender抽象类的实现c++20
linux·服务器·c++·c++20
小此方2 小时前
Linux网络(七):从 Socket 封装到应用层协议:手写网络版计算器,彻底搞懂 TCP 通信、序列化与反序列化
linux·网络·tcp/ip
kyle~2 小时前
Linux --- epoll (I/O就绪事件通知机制)
linux·运维·服务器
AlfredZhao2 小时前
进程都杀了,为什么 `netstat` 还能看到端口?
linux
一条泥憨鱼2 小时前
【从0开始学习计算机网络】| 邮件协议入门:SMTP、POP3、IMAP
linux·运维·计算机网络·github