02 2020 档案
摘要:linux采用模块化的思想来管理内核所提供的功能。比如驱动程序可以制作成模块,当安装上相应的硬件时,就将该模块载入,以提供访问该硬件的功能,当硬件被移除时,就将模块卸载,可以节约空间。 我使用Manjaro来作驱动开发,以下是我的经验。 一.编写一个简单的内核模块 参考LDD这本书,模块程序需要三个
阅读全文
摘要:ISO C标准对C语言中数据类型的大小做了要求,下表展示了这个要求,其中有不同数据类型的最小值的要求,也有在32bit和64bit操作系统下的实现。 C语言数据类型大小规定与实现 名称 说明 可接受的最小值 32bit系统典型值 64bit系统典型值 CHAR_BIT char的位数 8 8 8 C
阅读全文
摘要:操作系统的实现中,有很多数据的数据类型是不同的,比如历史上的主设备号和次设备号,分别为8位,而Solaris则分别是14位和18位,那么我现在正在使用的操作系统,其主从设备号分别是多少位呢? 类似设备号这样的操作系统属性,其数据类型都由文件<sys/types.h>来定义,统称为基本系统数据类型(p
阅读全文
摘要:一:内存泄漏的问题 考虑如下的程序 void func() { ClassA *a = new ClassA; ... delete a; } 应该使用delete语句以保证new分配的空间一定会被释放。我几乎总会忘记delete语句,尤其函数要写return语句时,更容易忘记。 另外即使你加上了d
阅读全文

浙公网安备 33010602011771号