自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 KMP算法

如果 s[i] 与 s[j + 1] 相同,那么就同时向后移动i 和j 说明找到了相同的前后缀,同时还要将j(前缀的长度)赋给next[i], 因为next[i]要记录相同前后缀的长度。当j>=0时,向前回退,也就是找到对应的s[i]==s[j+1],单纯的j-1肯定不行,这样只算单个字符相等,前面的字符相不相等还不知道比如。为什么用j=next[j],就是相当于0-j+1这一段字符串匹配 i这一段字符串时,不匹配,于是用next数组来找到对应的。最长公共前后缀就是 前缀子串和后缀子串相同的最大长度。

2024-10-28 10:04:36 538

原创 stm32的学习(江科协)

PMOS 是给输出提高高电平,NMOS是给输出提供低电平,推挽模式下:PMOS 和 NMOS 都有效,1,0决定谁导通,既可以输出高电平,也可以输出低电平,开漏模式是PMOS无效,NMOS有效,此时为1,PMOS NMOS都无效,相当于高阻状态,输出相当于断开,可以外接5v高电平,实现5v输出。这一部分是可以通过程序配置成上拉输入,下拉输入,浮空输入,通过控制开关,作用是为了给输入提供一个默认电平,上拉是高电平,下拉是低电平,浮空是不确定的,读取输入数据寄存器将得到实际的电平状态(高或低)。

2024-09-10 11:12:44 1938

原创 mmap的原理

buf 映射了内存的kernelbuf,但是因为你映射的时候是MAP_PRIVATE,你往kernelbuf写数据时,会触发内核的写时复制,内核会重新生成一个kernelbuf,然后此时buf就指向这个新的kernelbuf,但你read还是旧的kernelbuf,就会出现数值不一样的情况。他这里讲这个的意思是,mmap可以配置数据是否通过cache,因为数据通过cache来传送,中间会存在数据延时问题,就是数据写到cache,但是cache认为没必要传给主存,如果你要写的是寄存器,那就写寄存器失败。

2024-09-02 22:42:19 704

原创 操作系统内核原理

也就是说假设4g内存,每个进程都独占除kernel space 的所有4g内存空间。感觉共享内存是不是在创建子进程时,不采用写时复制了,直接读是不变,写也是不变。

2024-08-10 09:05:02 223

原创 linux多线程

就是线程在获取锁和解锁这个过程中,他想要释放锁,比如写线程的buffer满了,想短暂的释放锁,让读线程来清理buffer,引入了条件变量机制。主要还是线程锁是采用争抢机制的,你无法按照你想的流程来进行,引入条件变量就好很多。竞争产生的原因:多个线程对同一个变量进行+1操作,如果线程A对变量先读后写的过程中,线程切换到B,B对变量进行+1后,切换回A,但是A是按照之前读的变量值进行+1再赋值给变量,所以相当于B没进行+1。当有读锁时,写锁无法获得,防止别的线程在读,你突然写了,久会导致数据出现问题。

2024-08-07 15:42:34 322

原创 linux对信号的处理

先将current的地址给eax,然后根据地址偏移量来得到signal和blocked(屏蔽的信号),如果有信号,则调用do_signal。进程的task结构体有struct sigaction sigaction[32];

2024-07-26 17:17:54 181

原创 进程间通信

正常来说我们在写文件读文件的时候是需要使用系统调用api来进行,比如说read/write,这两个系统调用读写文件的方式是需要进行两次拷贝的,从用户空间拷贝到内核空间,然后从内核空间再拷贝到磁盘,而mmap将文件的地址直接映射到虚拟内存,这样,我们直接往这个地址读/写内容,可以像操作malloc申请出来的空间地址一样,写到这个地址,内容就直接在文件中了,减少了一次拷贝,提高了效率。把匿名管道的内核文件结构体换成了具体的文件,这样你就可以不需要父子进程都可以访问这个文件。

2024-07-24 19:17:51 682

原创 学习进程创建时,子进程与父进程代码段与数据段的关系

关于fork创建时的数据段和代码段的问题

2024-07-16 17:29:25 239

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除