- 博客(12)
- 收藏
- 关注
原创 日志框架
分离统一的日志接口层:日志门面(日志的一个抽象层) JCL、SLF4J(Simple Logging Facade for Java)、jboss-logging 实现的抽象层 log4j、logback、log4j2(借log4j之名)、JUL(java utils logging) log4j的使用使用方法导入slf4j包 导入log4j包 导入适配包log4j与log4j2的区别log4j只需一个jar包<dependency> <g
2020-12-08 19:52:01
107
原创 复杂度分析
复杂度量级常量阶 对数阶 线性阶 线性对数阶 平方阶 指数阶 阶乘阶粗略分为两类:多项式量阶和非多项式量阶。其中非多项式量阶的标红,这种算法问题叫作NP(Non-Deterministic Polynomial)问题...
2020-12-08 11:57:40
83
原创 kmp算法
prefix table(前辍表)字符串a b a b c 最长前后辍0 a0 a b1 a b a2 a b a b0 a b a b a c最后的0不要 最前加一个 -1前辍表a b a b c-1 0 0 1 2求前辍表void prefix_table(char pattern...
2020-06-02 08:24:24
120
原创 第8章 下半部和推后执行的工作
软中断 软中断在编译期间静态分配,不像tasklet能被动态地注册或注销。软中断由结构体softirq_action表示struct softirq_action{ void (*action) (struct softirq_action *);}kernel/softirq.c中定义一个包含有32个该结构体的数组static struct ...
2019-05-28 20:25:46
99
原创 第7章 派遣函数
派遣函数是Windows驱动程序中的重要概念。驱动程序的主要功能是负责处理I/O请求,其中大部分I/O请求是在派遣函数中处理的。用户模式下所有对驱动程序的I/O请求,全部由操作系统转化为一个叫做IRP的数据结构,不同的IRP数据会被“派遣”到不同的派遣函数(Dispatch Function)中7.1 IRP与派遣函数IRP的处理机制类似Windows应用程序中的“消息处理”机制,...
2019-05-26 22:20:40
182
原创 3 资源管理
条款 13 以对象管理资源void f(){ Investment* pInv = createInvestment(); *** delete pInv;} 若操作区过早的return会造成内存泄露,为确保函数的返回值能正常释放,需将资源放进对象内,当控制流离开f,该对象析构函数会自动释放那些资源 auto_ptr是个“类指针...
2019-05-26 21:26:16
82
原创 8 定制new和delete
条款50 了解new和delete的合理替换时机想要替换编译器提供的operator new或operator delete三个理由1 用来检测运用上错误 new后没有delete,或多次delete2 强化效能 编译器的operator new和operator delete主要用于一般性,定制版的效果往往更好3 收集使用上的统计数据写一个定制型operator new...
2019-05-26 20:32:04
169
原创 第6章 windows内核函数(字符串操作)
6.1字符串操作6.1.1. ASCII字符串和宽字符串char(ASCII字符串)一个字节wchar_t(宽字符串)两个字节在构造字符串时使用关键字"L",编译器会自动生成所需的宽字符wchar_t *str = L"abc";在驱动程序开发中,DDK替换成CHAR和WCHARCHAR *str ="hello"';KdPrint("%s\n",str); ...
2019-05-20 15:10:52
394
原创 linux设置磁盘分区
指令 lsblk -f 查看磁盘1、增加磁盘2、设置分区 指令 fdisk /dev/sdb 接着 n 增加新分区 3、格式化mkfs -t ext4 /dev/sdb14、挂载 mount /devsdb1 /home/newdisk 挂载到newdisk文件夹 这种方式只是暂时挂载5、umount /dev/sdb1或/home/newdisk 卸载...
2018-08-19 21:13:45
255
原创 复数
定义复数类,实现对复数的相加,相乘和相除操作#includeusing namespace std;class Complex{ private: float real; float image; public: Complex(){real=0;image=0;}; Complex(float r,float i):real(r),image(i){}; float
2018-01-12 12:19:54
486
原创 洗牌
#includeusing namespace std;struct node{ int data; //牌的大小 int num; //牌所在位置 node *next;};node *transform(node *head){ int i=1; node *p=head->next; node *start,*r; r=s
2018-01-10 22:52:19
163
原创 判断IP是否正确
#include#includeusing namespace std;bool judge(string a) //判断函数 { int n=a.size(),count=0,b[3]={0},j=0; for(int i=0;i<n;i++) //有非法字符 if(!((a[i]>='0'&&a[i]<='9')||a[i]=='.'))
2018-01-08 09:59:12
2398
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人