Linux用户态与内核态 2017-06-25 Linux 约 1934 字 预计阅读 4 分钟 一、 Unix/Linux的体系架构 如上图所示,从宏观上来看,Linux操作系统的体系架构分为用户态和内核态。 内核从本质上看是一种软件——控制 阅读更多
Linux的进程调度算法 2017-06-25 Linux 约 8882 字 预计阅读 18 分钟 常见进程调度算法 先来先服务调度算法 先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调 阅读更多
Linux操作系统的组成和基本功能 2017-06-25 Linux 约 532 字 预计阅读 2 分钟 组成 Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得 阅读更多
调试工具Valgrind 2017-06-25 Linux 约 12648 字 预计阅读 26 分钟 Valgrind是运行在Linux上一套基于仿真技术的程序调试和分析工具,是公认的最接近Purify的产品,它包含一个内核——一个软件合成的 阅读更多
Linux启动过程详解 2017-06-25 Linux 约 1845 字 预计阅读 4 分钟 转载:http://blog.chinaunix.net/uid-26495963-id-3066282.html 启动第一步--加载BIOS 阅读更多
多态实现机制详解 2017-06-24 C++ 约 6377 字 预计阅读 13 分钟 数据成员指针、函数成员指针 1. 数据成员指针 对于普通指针变量来说,其值是它所指向的地址,0表示空指针。 而对于数据成员指针变量来说,其值是数据成员 阅读更多
日常编程技巧 2017-06-24 C++ 约 2036 字 预计阅读 5 分钟 创建三维数组 vector法 vector<vector<vector> > f(N+1,vector<vector>(N,vector(N))); 第一维 第二维 第三维和类型 1维容量 2维数组正常构建方式:vector<vector>(N,vect 阅读更多
不使用vector保存bool的理由 2017-06-24 C++ 约 559 字 预计阅读 2 分钟 转载:http://blog.csdn.net/u013249689/article/details/25297657 vector不是容器, 阅读更多
C++编译不了的C程序 2017-06-24 C++ 约 184 字 预计阅读 1 分钟 有些C程序用C++编译器会报错,有如下几种情况: 函数声明在使用之后: 1 2 3 4 5 6 7 8 9 10 11 #include<stdio.h> int main() { foo(); // foo() is called before its declaration/definition } int foo() { printf("Hello"); return 0; } 普通指针指 阅读更多
new/delete用法详解 2017-06-24 C++ 约 1127 字 预计阅读 3 分钟 new运算符 开辟单变量地址空间 使用new运算符时必须已知数据类型,new运算符会向系统堆区申请足够的存储空间,如果申请成功,就返回该内存块的 阅读更多
assert()用法 2017-06-24 C++ 约 1447 字 预计阅读 3 分钟 定义 assert()的用法是一种“契约式编程”,在我的理解中,其表达的意思就是,程序在我的假设条件下,能够正常良好的运作,其实就相当于一个i 阅读更多
STL中的Traits编程技法 2017-06-24 C++STL 约 3771 字 预计阅读 8 分钟 在STL实现中,traits编程技术得到大量的运用,它利用了“内嵌类型”的编程技巧与C++的template参数推导功能,弥补了C++类型识 阅读更多
strcpy、strncpy、memcpy和memmove浅析 2017-06-24 C++STL 约 3055 字 预计阅读 7 分钟 前言 本文仅对函数本身进行分析,不考虑编译环境的差异。 例如关于strcpy,memcpy和memmove关于内存重叠的问题,各个编译器和库都对 阅读更多
内存泄漏和内存溢出 2017-06-24 C++ 约 809 字 预计阅读 2 分钟 内存溢出和内存泄漏的区别 内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个 阅读更多
new和malloc的区别 2017-06-24 C++ 约 2762 字 预计阅读 6 分钟 1. 申请的内存所在位置 new操作符从自由存储区(free store)上为对象动态分配内存空间,而malloc函数从堆上动态分配内存。自由存储区 阅读更多
指针和引用的区别 2017-06-24 C++ 约 1614 字 预计阅读 4 分钟 转载:http://www.cnblogs.com/jiu0821/p/4127382.html 概念 指针是一块内存的地址值,而引用是一块内存 阅读更多
C/C++源代码到可执行程序的过程详解 2017-06-24 C++ 约 2734 字 预计阅读 6 分钟 1.预处理 读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进行处理 伪指令主要包括以下四个方面: 宏定义指令,如#define Name Toke 阅读更多
缓冲区溢出(Buffer Overflow) 2017-06-24 C++ 约 4110 字 预计阅读 9 分钟 堆栈溢出 堆栈溢出通常是所有的缓冲区溢出中最容易进行利用的。了解堆栈溢出之前,先了解以下几个概念: 缓冲区 简单说来是一块连续的计算机内存区域,可 阅读更多
迭代器和指针的区别 2017-06-24 C++STL 约 466 字 预计阅读 1 分钟 迭代器: 迭代器不是指针,是类模板,表现的像指针。他只是模拟了指针的一些功能,通过重载了指针的一些操作符,->,*,++ –等封装了指针, 阅读更多
STL迭代器特性及失效问题 2017-06-24 C++STL 约 2284 字 预计阅读 5 分钟 vector vector是一个顺序容器,在内存中是一块连续的内存。引起内存重新分配的插入运算使所有迭代器失效,插入也使得插入位置及其后位置的迭代器失效 阅读更多