
Linux
tsfg
这个作者很懒,什么都没留下…
展开
-
进程间通信---共享内存
实现共享内存的步骤:什么是映射:共享内存 映射 在不同进程中的地址不同。原创 2023-12-28 17:01:04 · 437 阅读 · 0 评论 -
进程间通信---信号量同步
【补充一下:为什么上节课互斥的做法不能同步哪?信号量的初始值为1,如果a进程先执行是可以的,但是如果b进程先执行就不行了】生产者代码 producer.c。消费者代码 custom.c。原创 2023-12-27 17:43:02 · 408 阅读 · 0 评论 -
进程间通信---信号量互斥
student1.c。原创 2023-12-25 10:17:54 · 382 阅读 · 0 评论 -
进程间通信---信号
】参数sig:代表 信号图中的等待操作使用:pause()函数运行效果:原创 2023-12-24 22:12:17 · 429 阅读 · 0 评论 -
进程间通信---有名管道
除了 创建/删除fifo文件两个函数,其他函数都是之前学过的。原创 2023-12-24 10:18:36 · 412 阅读 · 0 评论 -
进程间通信---无名管道
【代码】进程间通信---无名管道。原创 2023-12-22 21:37:29 · 384 阅读 · 0 评论 -
Linux多线程之线程同步(条件变量)
什么是线程同步?案例原型:A先扫5次地,A扫完地B再拖地,从而完成线程同步。#include <stdio.h>#include <pthread.h>pthread_t thread[2];int number = 0;//共享资源pthread_mutex_t mut;void studentA(){ int i; for(i=0;i&l...原创 2019-02-12 21:54:51 · 661 阅读 · 1 评论 -
Linux多线程之线程互斥(互斥锁)
什么是线程互斥?初始化互斥锁:int pthread_mutex_init(pthread_mutex_t * restrict mutex, const pthread_mutexattr_t * restrict attr);获取互斥锁:pthread_mutex_lock(pthread_mtex * mutex );释放互斥锁:pthread_mutex_unlock(pth...原创 2019-02-11 12:47:09 · 1114 阅读 · 0 评论 -
Linux多线程基础之线程基础用法
什么是线程?多人砌墙的故事 加快任务完成可以通过加人的方法来实现。 同样,程序中可以通过加进程来实现,但是,多进程存在资源浪费的问题。 而线程没有资源浪费的问题。总结:线程就是“轻量级”的进程线程与创建它的进程共享代码段、数据段线程有自己的栈创建线程:int pthread_create(pthread_t * thread, const pthread_attr_t ...原创 2019-02-11 12:41:51 · 281 阅读 · 0 评论 -
Linux多进程基础之进程间通讯概述
Linux进程和进程之间是否需通讯哪?通讯目的:通讯发展:POSIX介绍:通讯方式:原创 2019-01-29 11:47:27 · 272 阅读 · 0 评论 -
Linux多进程基础之进程基础用法
创建进程:pid_t fork(void);功能:创建一个子进程返回值: 成功:在父进程中返回子进程的PID 在子进程中返回的是0 失败:-1#include &lt;unistd.h&gt;void main(){ fork(); printf("program is end\n");}运行结果:为什么运行了两次哪?原因: 注意:子进程...原创 2019-01-29 11:34:33 · 282 阅读 · 0 评论 -
Linux多进程基础之部分概念讲解
简介本节讲解内容为学习多进程前,需要学习的Linux操作系统基础中的部分概念。概念讲解进程进程是一个具有一定独立功能的程序的一次运行活动。 程序:磁盘上的代码文件进程特点动态性并发性独立性异步性进程状态:3态 进程调度:一个CPU一个时间只能处理一个进程,选择一个进程进行处理,这个过程叫做进程调度进程ID(PID):标记进程的唯一数字父进程ID(PPID)启动进...原创 2019-01-22 12:57:29 · 317 阅读 · 0 评论 -
Linux网络编程之Tcp(内含服务器、客户端代码实例)
文章目录前言:Tcp模型:服务器端:客户机端:代码:运行结果:结束前言:本节讲解需要相关的网络基础知识,如果缺少相关知识,请先学习:Linux网络编程之网络基础 和 Linux网络编程之网络基础2 。Tcp模型:先打开我们之前讲过的Tcp模型作为参考:服务器端:创建socket:int socket(int domain, int type, int protocal);参数1:域...原创 2019-01-08 18:30:17 · 12363 阅读 · 2 评论 -
Linux网络编程之网络基础2
目录Linux网络编程模型:模型1:模型2:Tcp编程模型:Udp编程模型:Linux网络编程模型:模型1:比如有个A进程要通过ICMP协议通信,可能需要调用icmp_send()函数【假如是这个名,不一定】;通过Tcp协议通信,可能需要调用tcp_send()函数【假如是这个名,不一定】,这样不同协议通信时,由于接口不统一,导致使用很不方便。模型2:A...原创 2018-12-18 22:22:32 · 486 阅读 · 0 评论 -
Linux网络编程之网络基础
目录网络模型:网络协议:什么是网络协议?我们经常见到的网络协议:协议和协议之间的关系:协议包的格式:以太网协议格式:IP协议格式Tcp协议格式:Udp协议格式:网络模型:大家经常听到的7层和4层模型,Linux系统采用的是Tcp/Ip4层模型。网络协议:什么是网络协议?①.规则:举例说明,A和B通信,规定A发了以后,B需要回应。②...原创 2018-12-17 17:48:38 · 548 阅读 · 0 评论