Linux中怎么调用常见的函数

本篇文章为大家展示了Linux中怎么调用常见的函数,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

创新互联专注于海州网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供海州营销型网站建设,海州网站制作、海州网页设计、海州网站官网定制、微信小程序定制开发服务,打造海州网络公司原创品牌,更为您提供海州网站排名全网营销落地服务。

Linux中常见的函数调用

一、 创建进程

创建进程的总结:

1、Linux中父进程调用fork创建子进程。

2、父进程调用fork时,子进程拷贝所有父进程的数据接口和代码过来。

3、当前进程是子进程,fork返回0;当前进程是父进程,fork返回子进程进程号

4、如果返回0,说明当前进程是子进程,子进程请求execve系统调用,执行另一个程序。

5、如果返回子进程号,说明当前进程是父进程,按照原父进程原计划执行。

6、父进程要对子进程负责,调用waitpid将子进程进程号作为参数,父进程就能知道子进程运行完了没有,成功与否。

7、操作系统启动的时候先创建了一个所有用户进程的“祖宗进程”,课时1,第3题A选项:0号进程是所有用户态进程的祖先

创建进程的系统调用:fork
执行另一个程序的系统调用:execve
将子进程的进程号作为参数传给它,父进程就能知道子进程运行完了没有,成功与否:waitpid

二、 内存管理

内存管理总结

1、每个进程都有独立的进程内存空间,互相之间不干扰。(隔离性)

2、进程内存空间,存放程序代码的部分,称为代码段(Code Segment)。

3、存放进程运行中产生数据的部分,称为数据段(Data Segment)。

4、进程写入数据的时候,现用现分物理内存给进程使用。

5、分配内存数量比较小时,使用brk调用,会和原来的堆数据连在一起。

6、需要分配的内存数据量比较大的时候,使用mmap,重新划分一块内存区域。

分配较小内存数量,和原来堆内数据连在一起:brk
分配较大内存数量,重新划分一块内存区域:mmap

三、 文件管理

文件的操作六个最重要系统调用:
打开文件:open
关闭文件:close
创建文件:creat
打开文件后跳到文件某个位置:lseek
读文件:read
写文件:write
Linux一切皆文件
一切皆文件的优势即使统一了操作的入口,提供了极大的便利。

四、 信号处理(异常处理)

进程执行过程中一旦有变动,就可以通过信号处理服务及时处理。

五、 进程间通信

有两种方式实现进程间通信
消息队列方式
创建一个新的队列:msgget
发送消息到消息队列:msgsnd
取出队列中的消息:msgrcv

六、 共享内存方式

创建共享内存块:shmget
将共享内存映射到自己的内存空间:shmat
利用信号量实现隔离性
占用信号量:sem_wait
释放信号量:sem_post

伪代码: 假设信号量为1 signal = 1 sem_wait伪代码 while True { if sem_wait == 1; signal -=1; break; } code.code; sem_post伪代码 signal +=1;

七、 网络通信

网络插口:socket
网络通信遵循TCP/IP网络协议栈

八、 glibc

glibc是Linux下开源标准C库
glibc把系统调用进一步封
sys_open对应glibc的open函数
一个单独的glibcAPI可能调用多个系统调用
printf函数调用sys_open、sys_mmap、sys_write、sys_close等等系统调用

上述内容就是Linux中怎么调用常见的函数,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。

网站标题:Linux中怎么调用常见的函数
当前网址:https://www.cdcxhl.com/article48/jcihhp.html

成都网站建设公司_创新互联,为您提供企业网站制作动态网站自适应网站网站营销企业建站网站策划

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设