Linux总结(2)

这篇博客详细介绍了Linux中的进程与线程概念及其状态,包括僵死进程的处理。讲解了进程创建、并发与并行的区别、主函数参数的含义、库函数调用与系统调用的差异。还讨论了IPC机制中的管道、信号量、临界资源和临界区。此外,阐述了TCP与UDP的区别、HTTP协议、select与epoll的对比,以及服务器与客户端的编程基础。最后,提到了常用Linux命令和文件权限等知识点。
摘要由CSDN通过智能技术生成

1、什么是进程、线程?都有哪些状态?与程序的区别?什么时僵死进程?

进程:正在运行的程序

状态:就绪、运行、阻塞

线程:进程内部的一条执行路径

同步方法:信号量、读写锁、条件变量、互斥锁

线程安全:无论如何执行,结果都是正确的,就是线程安全状态(同步、线程安全函数)

区别:程序运行一次便是一个进程,运行多次就是多次进程

僵死进程:子进程结束,父进程没有结束,此时子进程就会变为僵死进程,解决方法:父进程获取子进程的退出码。

进程fork()、写时拷贝、进程替换、信号量

并发:一段时间里,程序互相交替执行

并行:两个程序同时执行

2、Linux中主函数的参数有哪些?分别由什么含义?

参数:int argc参数个数、char* argv[]参数char*  envp[]环境变量

3、库函数调用与系统调用的区别?

库函数的实现在库文件里,执行时切换为入口地址。

系统调用是实现在内核,陷入内核(从用户空间到内核空间)常见系统调用(fork(),printf())

4、什么是ipc机制?有名管道与无名管道的区别?

管道文件、共享内存、消息队列、套接字文件

有名管道:实现不同进程间通信。

无名管道:实现父子进程间通信。

5、下面代码一共产生多少个进程?(fork成功返回0)

int main(){
    
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值