首页 > 系统相关 >进程间通信九天学习笔记

进程间通信九天学习笔记

时间:2024-06-07 09:34:15浏览次数:22  
标签:信号量 SCHED pipefd 调度 笔记 间通信 进程 九天

进程间通信九天学习笔记

day1: 基本进程操作

  • fork() 返回pid进程id
  • getpid() 获取当前进程ID
  • system() 执行系统命令

day2: 管道

  • 匿名管道
    • pipe(int pipefd[2])
    • pipefd[0] 读操作
    • pipefd[1] 写操作
  • 有名管道(FIFO)
    • mkfifo(,0644)
    • open()
    • read()
    • write()

day3: 信号

  • 标准信号 (1~31)
    • SIGSTOP
    • SIGCONT
    • SIGKILL
    • SIGUSR1
    • SIGUSR2
    • SIGINT
  • 信号处理
    • 屏蔽
    • 忽略
    • 默认
    • 捕获(自定义行为)
  • signal(int num, 宏)

day4: 消息队列

day5: 共享内存与信号量

  • 共享内存
    • shmget()
    • shmat() 映射
    • shmdt() 解除
  • 信号量
    • semget()
    • P 操作 (等待信号量)
    • V 操作 (增加信号量)

day6: 线程

day7: 同步互斥与读写锁

  • 同步互斥
    • pthread_cond_wait()
    • pthread_cond_signal()
  • 读写锁
  • 信号量组
    • sem_post()
    • sem_wait()

day8: 调度策略

  • SCHED_OTHER
    • 分时调度策略
    • 静态优先级=0
  • SCHED_FIFO
    • 实时调度策略
    • 先到先服务
    • cpu=1
  • SCHED_RR
    • 实时调度策略
    • 时间片轮询
  • 优先级
    • 抢占式调度策略

day9: 线程池

标签:信号量,SCHED,pipefd,调度,笔记,间通信,进程,九天
From: https://www.cnblogs.com/zcx0326/p/18236527

相关文章

  • 载谭 Binomial Sum 学习笔记
    原文链接:载谭BinomialSum:多项式复合、插值与泰勒展开。下面就从例题开始慢慢说这个算法。P5430[SNOI2017]礼物加强版题目描述给定\(n,k\),求\[n^k+\sum_{i=1}^{n-1}2^{n-1-i}i^k\]答案对\(10^9+7\)取模。\(1\len\le10^{100000},1\lek\le2\times10^7\)。......
  • Golang学习笔记(1):包管理
    Golang学习笔记(1):包管理本人学习Golang主要是为了做MIT6.824的lab,然而一上来就被Golang神奇的import搞混了,因此写一篇博客记录学习Golang的包管理的过程。packagemainimport"fmt"funcmain(){fmt.Println("hello,world")}如果有编程基础肯定会觉得这段代码很好理......
  • 工作笔记(8)
    Program.cs启用OpenAPI支持:(Swagger支持)顶级语句:使用控制器:miniAPIHTTP与HTTPS的区别1.HTTPS协议需要到CA申请证书,一般免费的证书比较少,因而需要一定费用。2.HTTP是超文本传输协议,信息是明文传输,HTTPS则是具有安全性的SSL加密传输协议。3.HTTP和HTTPS使用的是完全不同的链......
  • 工作笔记(7)
    SQL事务begintransactiondemo--开始事务+事务名 begintry insertinto[User]values('tianqi','123456','田七','false','2001-09-22','','0','false',NULL,'false') insertin......
  • 大模型学习笔记-汇总篇
    本文记录一下最近一个月学习的大模型相关的技术知识点,为拥抱AI浪潮做些技术储备。大模型术语相关参数规模GPT3.5千亿级别GPT41.8W亿级别国内一般都是十亿或百亿级别ChatGLM2_2K_6BBAICHUAN_4K_13B淘宝星辰_4K_13BTOKEN长度Token是指被LLM处理的离散的数据单......
  • 工作笔记(6)
    快捷键替换选中内容:Ctrl+HCtrl+Alt+Enter退出终端:Ctrl+Cvue初始化格式:Vueinit设置路由:router/index/js{path:"/studentInfo",name:"studentInfo",component:()=>import("../views/Student/StudentView.vue")}布局页:APP.vueEmmit语法......
  • 工作笔记(10)
    SignalR微软官方文档TMS关键字:大车GPS交通局短信休息15分钟/4小时火星坐标=>大地坐标(如果要用百度地图还要将大地坐标=>百度坐标)电子围栏①模拟制造数据(预制路线):C/S架构1条/5秒非关系型数据库/时序数据库 17280条/日/车SignalR:长连接 API主动同步数据到客户端案例......
  • 代码随想录算法训练营第二十九天 | 491.非递减子序列
    491.非递减子序列题目链接文章讲解视频讲解层间去重:回溯法相当于深搜,所以所以是一直递归到叶节点才开始回溯;每次进入backtracking也就进入了搜索树的下一层,所以每进入一层需要用一个used_set来记录使用过的元素;classSolution{private:vector<int>sub;vecto......
  • 数据结构学习笔记-归并排序
    归并排序算法的设计与分析问题描述:设计并分析归并排序算法【算法设计思想】分割(Divide):从中间分割数组,使每个子数组包含一半的元素。这通过计算中点m来完成,通常是(l+r)/2,但为了防止大数溢出,使用l+(r-l)/2。解决(Conquer):递归地对两个子数组应用归并排序,直到......
  • 算法学习笔记(21):数论分块
    数论分块大部分内容来源于OI-WIKI引理1:\(\\foralla,b,c\in\mathbb{Z},\left\lfloor\frac{a}{bc}\right\rfloor=\left\lfloor\frac{\left\lfloor\frac{a}{b}\right\rfloor}{c}\right\rfloor\)引理2:\(\lfloor\frac{n}{i}\rfloor\)的取值有\(O(\sqrtn)\......