- 博客(12)
- 收藏
- 关注
原创 C++高级编程一些笔记
枚举类型:强枚举类型enum class xxx{};三元运算符表达式求值采用短路逻辑c++11中增加了基于区间的for循环C++11中每个函数都有一个预定义的局部变量__func__,记录函数名称堆栈和堆:堆是与当前函数或者堆栈帧完全没有关系的内存区域。动态数组:int *myVarry=new int[arraysize]arraysize就是变量,指针遍历在堆栈中,
2017-12-05 17:06:21 339
原创 深入理解Linux内核4
内存寻址内存地址逻辑地址,线性地址(虚拟地址),物理地址内存控制单元MMU逻辑地址 经 分段单元 转换为 线性地址线性地址 经 分页单元 转换为 物理地址内存仲裁器DMA控制器硬件中的分段实模式和保护模式实模式用来维持处理器和早期模型的兼容段选择符和段寄存器1个逻辑地址=段标识符 + 偏移量段标识符==段选择符 16位6个段寄存器cs代码寄存器,
2017-11-06 14:43:18 430
原创 基础学习第六弹
基本的排序算法直接插入排序O(n2)O(n^2),稳定void InsertSort(int r[],int n){ int i,j,s; for(i=1;i<n;++i) { s=r[i]; //s作为一个哨兵 j=i-1; //从后往前 while(s<r[j]) {
2017-11-05 17:35:45 276
原创 深入理解Linux内核3
Unix内核概述 Unix内核提供了应用程序可以运行的环境,因此,内核必须实现一组服务及相应的接口。应用程序使用这些接口而不会跟硬件资源直接交互。- 进程/内核模式用户态和内核态进程是动态的实体,在系统内通常只有有限的生存期内核本身不是一个进程,而是进程的管理者 -请求内核服务的进程使用系统调用除了用户进程,还有些称为内核线程的特权进程 以内核态运行在内核地址空间不与用户交互,不
2017-11-01 15:03:49 344
原创 基础学习第五弹
树名词: 根子树结点结点的度叶子结点孩子双亲兄弟树的度结点的层次深度有序树无序树森林祖先二叉树 满二叉树完全二叉树 当且仅当每个结点都跟相同深度的满二叉树中编号1到n的结点一一对应,才是完全二叉树二叉树的性质 第i层最多有2i−12^{i-1}方个结点深度为k的二叉树,最多有2k−12^k-1个结点对任何一个二叉树,n0,n1,n2表示度为0,1,2的
2017-10-28 15:26:53 244
原创 基础学习第四弹
双向链表定义typedef struct node{ int num; struct node *pre; //前指针 struct node *next;}stud;双向链表的创建算法没什么好说的。。。多个指针而已stud *create(int n){ stud *head,*p1,*p2; for(int i=0;i<n;i++)
2017-10-27 22:31:35 225
原创 深入理解Linux内核2
Unix文件系统概述文件 - Unix文件是以字节序列组成的信息载体,不解释内容。 - 文件被组织在一个树结构的命名空间中。 - . 和..的意思硬链接和软链接包含在目录中的文件名就是一个文件的硬链接命令:$ln P1 P2 用来创建一个新的硬链接,为路径P1创建一个名为P2的硬链接。不允许用户给目录创建硬链接只有同一个文件系统中的文件之间才能创建链
2017-10-27 17:50:09 303
原创 基础学习第三弹
今天被老师拉去做“苦力”没有学多少。。。惭愧 接第二弹循环链表 与单链表区别在于尾结点的指针不是NULL,而是指向head 算法没什么大的区别,注意尾结点p2->next=NULL改为p2->next=head; 遍历时,p1->next!=NULL改为p1->next!=head;循环链表的创建算法#include <malloc.h>tyepdef struct node{
2017-10-26 21:55:45 402
原创 深入理解Linux内核学习笔记
第一章 绪论Linux是开源的是一个真正的Unix内核,但不是一个完整的Unix操作系统 -源码获取:源码下载一般源代码安装在/usr/src/linux目录下单块结构的内核(Monolithic kernal)动态的装载和卸载部分内核代码内核线程多线程应用程序支持抢占式(preemptive)内核多处理器支持 (最优化的使用SMP)文件系统没有STREAMS I/O类似的
2017-10-25 19:31:34 656
原创 基础学习第二弹
关键算法和数据结构单链表线性表:逻辑上相邻,物理上也相邻。单链表: 数据域+指针域 如要操作链表,需要声明额外的指针。单链表的创建算法定义一个链表结点typedef struct node{ int num; struct node *next;}stud;算法如下:#include <malloc.h>typedef struct node{ int
2017-10-25 15:44:01 260
原创 基础学习第一弹
10-24学习总结C语言关键知识复习知识总览基础知识:预处理,数据类型,运算符和表达式,控制流,函数及变量,数组,指针,结构、联合、枚举数据结构和算法:线性表,链表,串,树,图,查找算法,排序算法…库函数:< malloc.c> < string.h>< ctype.h> < stdlib.h>< stdio.h>< assert.h>< math.h>… C语言的一些重要知识内存存储
2017-10-24 17:22:46 245
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人