- 博客(44)
- 收藏
- 关注
原创 进程概念详解
当系统负载高时,资源不够用,操作系统可能会杀掉S状态,而D状态进程处于深度睡眠,不可中断,即使你是操作系统也无法给他杀掉(D状态就是爷,不干事,你也管不了我)。当程序执行完毕,直接退出是不行的!因为只有一份寄存器,所以进程在离开时,要将数据拷贝一份,再下次回来运行的时候,再把数据拷贝回寄存器,然后接着运行。竞争性:进程数目多,而cpu只有几个,甚至一个,所以进程之间具有竞争属性,为了高效运行,便有了优先级。所以,在程序执行完毕后,该进程会先进入Z状态,也就是僵尸状态,此时由父进程读取其退出码,
2023-04-15 21:11:29
600
原创 冯诺依曼体系结构+操作系统
学校管理者为校长,校长要了解某些同学的成绩,他会通过你的辅导员获得你的信息,然后通过这些信息去对你进行嘉奖或惩罚决策,传递给辅导员,由辅导员执行。但是,它又必须为用户提供服务,因此,它会暴露部分接口,也就是系统调用接口,用户可 以通过系统调用接口完成开发等工作,这就是系统调用。库函数,有了库,用户就不必跟系统调用直接打交道了,使用库函数即可,极大提高了效 率,又降低了学习成本。我们知道,每个学生的属性是一样的,都有成绩,姓名,班级,学号等等。主要包含:内核(进程管理,内存管理,文件管理,驱动管理)
2023-04-14 23:35:23
1029
原创 linux工具gcc/g++/gdb/git的使用
c程序当中,如果要使用一个函数,不仅需要函数声明,还需要定义,但是我们所包含的头文件stdio.h当中,只有printf函数的声明,没有其定义,但是我们却可以完成调用?这是因为系统把c函数的定义都放到libc.so.6这个库当中了,gcc会到默认的/usr/lib路径下进行查找,找到函数定义,这也就是动态链接过程。函数库分为静态库和动态库,一般以.so结尾为动态库,.a结尾为静态库。静态链接是指编译链接时把库文件代码全部拷贝到该文件,生成的文件比较大。gcc默认生成的文件是动态链接的。查看git日志信息。
2023-04-13 20:56:29
770
原创 哈希表详解
哈希表缺陷:空间浪费多。闭散列与开散列比较:开散列空间效率高。表面看开散列存储节点指针,需要增设链接指针,似乎增加了存储开销,但是其实闭散列表项所占空间比指针大得多,所以开散列比闭散列节省空间。
2023-03-22 13:31:09
1548
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人