- 博客(9)
- 收藏
- 关注
原创 51单片机——中断
1.什么是中断?中断有什么作用?2.中断优先级分为高级和低级,低级能被高级所打断,转为执行高级,高级中断返回后,继续执行低级。通过中断优先级寄存器IP设置其优先级。3.中断请求源——6种触发中断的可能4.特殊功能寄存器TCON 各中断请求标志有4类5.中断允许寄存器IE中断总控制EA另外六个中断源分别对应一个中断允许标志,0关1开6.若该中断没有被屏蔽则执行中断响应判优——中断优先级寄存器IP六个中断源分别对应一个位,0低1高命名原则同上。
2025-07-13 00:54:14
718
原创 操作系统学习笔记【P20】——内存使用与分段
1、内存是如何使用的回忆计算机的工作过程:CPU就是不断地取指执行。指令是被存放在内存里的。因此内存的使用就是:将程序放到内存中,PC指向开始地址,然后不断+1(或是执行分支跳转).使得程序不断执行起来。主要涉及这两方面的问题:如何将程序放入内存,如何让程序执行起来。
2025-07-13 00:49:41
805
原创 操作系统学习笔记【P18】—— 信号量的代码实现
哈工大李治军老师操作系统P18 信号量的代码实现(Linux0.11)。反复看目录,理解程序功能被分为哪几个部分
2024-05-13 01:19:14
437
1
原创 Rust语言学习笔记
这是个人阅读官方文档整理的笔记,大部分是从文档里复制过来的,也有一些自己的思考。阅读建议:至少掌握一门编程语言,C/C++,python更好(因为可以类比理解)。
2024-03-29 01:31:14
1382
1
原创 哈工大操作系统实验四——内核栈的切换
原linux0.11内核利用TSS完成切换,传给switch_to()函数的内容只有next(作为task[]的index,取出的内容是。在新的 switch_to 中将用到当前进程的 PCB、目标进程的 PCB、当前进程的内核栈、目标进程的内核栈等信息。(1)linux0.11 不支持内核级线程,但是进程和内核级线程非常像,只是没有资源切换。我们要将其修改为用内核栈的方式,还需要传递一个指针参数 pnext 直接指向下一个PCB。== LDT(next)怎么用的 还不知道,后续添加,==
2024-03-15 22:34:45
530
原创 操作系统学习笔记——对系统调用中sys_call_table的理解
对于最后的sys_call_table,是一个全局的数组,存放的是每个系统调用的处理函数的地址。下面是sys_call_table的定义文件 位于./include/sys.h。add = &sum //sum是一个函数,将其地址赋给add指针。从sys_setup ()等内核函数的声明中,我们可以看到确实是这样。这是一个函数指针,指针指向的函数 没有参数,返回值是int类型。因此,这个数组里存放的变量 就是函数指针,函数的地址,为两个int类型的变量,函数的。1.3 函数指针的使用。
2024-03-06 15:53:22
540
原创 计算机如何确定“奇偶校验码的 奇偶校验冗余位”的取值
对于书上给出的偶校验ri的公式,我们用任意一串二进制数,如01101,模拟将其从左到右依次异或的过程,由此我们可以得出结论,对一串二进制数的每一位依次异或,最终结果为N。(问题背景:计算机网络-数据链路层-差错编码-奇偶校验码)1、计算机如何确定“奇偶校验码的 奇偶校验位”的取值?请明确我们的目的:异或结果用以统计1的个数的奇偶性。同样的例子推广一下,注意看红字。
2023-10-08 00:27:09
100
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人