加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux系统编程(二) ------ 多进程编程

发布时间:2022-12-12 14:32:18 所属栏目:Linux 来源:转载
导读: IO 课程属于:Linux 下的高级编程,也称为Linux系统编程,也就是应用层和内核层之间的接口层。

1. 为什么要学Linux 下的高级编程?
应用层的学习:不知道Linux内核的强大功能
Linux 下高级

IO 课程属于:Linux 下的高级编程,也称为Linux系统编程,也就是应用层和内核层之间的接口层。

1. 为什么要学Linux 下的高级编程?

应用层的学习:不知道Linux内核的强大功能

Linux 下高级编程的学习:能感知到内核的存在和内核的强大功能

linux内核5大功能:

文件管理

进程管理

设备管理

内存管理

网络管理

举例:printf write

printf

write函数:

#include 
#include 
int main()
{
    write(1, "hello linux\n", 128);
    return 0;
}

2. 怎样学Linux 下高级编程?

Linux 下高级编程的特点:涉及到内核向用户空间提供的接口(函数)。

3. 为什么内核要提供这些接口呢?

主要原因:

A:内核要为应用程序服务,应用程序如果没有内核服务,则应用程序功能非常单一。

B:内核是一个稳定的代码,同时也要为多个用户空间的程序服务,为了防止用户空间的某些用户程序使内核代码崩溃或产生其它问题,从而不能为其它用户服务。

所以,内核向用户空间提供的接口(函数),在这些接口函数中加上一些保护,这样会使符合接口函数的应用提供服务,同时也保护内核。

4. 这一部分重点是在学习这些接口上面。怎样学习呢?

应用层学习的是程序的实现,即算法思路。

在系统编程阶段主要任务是系统调用接口(函数),接口的功能、参数、返回。

5. 这一部分主要涉及哪些相关课程?

IO:

文件IO

标准IO

目录IO

进程:

进程控制

线程(线程的控制,线程的同步与互斥)

进程通信(无名管道,有名管道,信号,IPC(共享内存,消息队列,信号灯)

====》一台机器上两个进程之间的通信。

网络:仍属于进程通信,它是一个网络中两台机器之间的两个进程之间的通信。

TCP

UDP

服务器代码的完善(循环服务器,并发服务(多进程,多线程,多路复用))

IO模型:信号驱动IO,阻塞IOlinux 编程,多路复用IO

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!