2023-2024-1 20211306 密码系统设计与实现课程学习笔记9

20211306 密码系统设计与实现课程学习笔记9

任务详情

自学教材第6章,提交学习笔记

  • 知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容

“我在学***X知识点,请你以苏格拉底的方式对我进行提问,一次一个问题”
核心是要求GPT:“请你以苏格拉底的方式对我进行提问”
然后GPT就会给你提问,如果不知道问题的答案,可以反问AI:“你的理解(回答)是什么?”
如果你觉得差不多了,可以先问问GPT:“针对我XXX知识点,我理解了吗?”
GPT会给出它的判断,如果你也觉得自己想清楚了,可以最后问GPT:“我的回答结束了,请对我的回答进行评价总结”,让它帮你总结一下。

  • 问题与解决思路,遇到问题最先使用chatgpt等AI工具解决,并提供过程截图
  • 实践过程截图,代码链接
  • 其他(知识的结构化,知识的完整性等,提交markdown文档,使用openeuler系统等)

一、第六章学习总结

摘要

本章讲述了信号和信号处理;介绍了信号和中断的统一处理,有助于从正确的角度看待信号;将信号视为进程中断,将进程从正常执行转移到信号处理;解释了信号的来源,包括来自硬件、异常和其他进程的信号:然后举例说明了信号在 Unix/Linux中的常见用法详细解释了Unix/Linux中的信号处理,包括信号类型、信号向量位、信号掩码位、进程PROC结构体中的信号处理程序以及信号处理步骤;用示例展示了如何安装信号捕捉器来处理程序异常,如用户模式下的段错误;还讨论了将信号用作进程间通信(IPC)机制的适用性。

信号和中断

“中断”是从I/0设备或协处理器发送到CPU的外部请求,它将CPU从正常执行转移到中断处理。与发送给CPU的中断请求一样,“信号”是发送给进程的请求,将进程从正常执行转移到中断处理。


Unix/Linux信号示例

  • CTRL+C
  • nohup a.out
  • sh命令:kill pid (or kill -s 9 pid)
信号类型
  • 31种信号类型

信号来源
  • 硬件中断
  • 异常
  • 其他进程
PROC结构体信号
  • sigmask
  • sigsetmask
  • siggetmask
  • sigblock
信号处理函数

安装信号捕捉函数


信号处理步骤

  • 内核模式检查信号并处理未完成的信号
  • 重置用户安装的信号捕捉函数
  • 信号和唤醒

信号与异常

  • 作为进程异常的统一处理方法
  • 让进程通过预先安装的信号捕捉函数处理用户模式下的程序错误
  • 在特殊情况下,他会让某个进程通过信号杀死另一个进程

信号用作IPC

  • 机制不可靠因为可能丢失信号
  • 竞态条件
  • 大多数信号都有预定义的含义

Linux中的IPC

  • 管道和FIFO

连接一对管道写进程和读进程

  • 信号

进程可使用 kil1系统调用向其他进程发送信号,其他进程使用信号捕提函数处理信号。
将信号用作IPC的一个主要缺点是信号只是用作通知,不含任何信息内容。

  • System V IPC
  • POSIX消息队列
  • 线程同步机制
  • 套接字

二、苏格拉底挑战GPT









三、问题与解决方案








四、代码实践



posted @ 2023-11-12 00:01  20211306丁文博  阅读(6)  评论(0编辑  收藏  举报