摘要: 1. 调用fork产生一个子进程,同时父进程退出,所有后续工作都在子进程中完成。如果我们是从命令行执行的该程序,这可以造成程序执行完毕的假象,shell会回去等待下一条命令; 刚刚通过fork产生的新进程一定不会是一个进程组的组长,这为第2步的执行提供了前提保障。由于父进程已经先于子进程退出,会造成... 阅读全文
posted @ 2014-05-08 19:40 RAMA 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 总体存储布局我们知道,一个磁盘可以划分成多个分区,每个分区必须先用格式化工具(例如某种mkfs命令)格式化成某种格式的文件系统,然后才能存储文件,格式化的过程会在磁盘上写一些管理存储布局的信息。下图是一个磁盘分区格式化成ext2文件系统后的存储布局。ext2文件系统的总体存储布局文件系统中存储的最小... 阅读全文
posted @ 2014-04-26 11:23 RAMA 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 为啥需要枚举类型编程语言中的所有特性都是为了满足某种需求,达到某个目的还出现.不会莫名其妙的出现在那.枚举可以用来保存一组属性的值.enum的全称是enumeration意思是列举看着这句话可能觉得太书面化了,不够通俗易懂.那举些通俗的例子说说.日常生活中我们特喜欢分类,比如读书时分啥数,理,化.当... 阅读全文
posted @ 2014-04-17 14:26 RAMA 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 类型安全很大程度上可以等价于内存安全,类型安全的代码不会试图访问自己没被授权的内存区域。“类型安全”常被用来形容编程语言,其根据在于该门编程语言是否提供保障类型安全的机制;有的时候也用“类型安全”形容某个程序,判别的标准在于该程序是否隐含类型错误。类型安全的编程语言与类型安全的程序之间,没有必然联系... 阅读全文
posted @ 2014-04-07 22:34 RAMA 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 一、进程(作业)调度算法1.先来先服务调度算法(FCFS):每次调度是从就绪队列中,选择一个最先进入就绪队列的进程,把处理器分配给该进程,使之得到执行。该进程一旦占有了处理器,它就一直运行下去,直到该进程完成或因发生事件而阻塞,才退出处理器。特点:利于长进程,而不利于短进程。2.短进程(作业)优先调... 阅读全文
posted @ 2014-02-27 21:44 RAMA 阅读(712) 评论(0) 推荐(0) 编辑
摘要: 聚集索引 一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。 聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。... 阅读全文
posted @ 2014-02-08 13:54 RAMA 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 临时变量有两个特征:1.invisiable,在程序代码中没有显式出现2 没有名字 non - named。出现临时变量/对象的场合1.函数的返回值2. 参数传递 值传递 by - value 采用 const-reference时,且需要转换时,例如 double d; const int &... 阅读全文
posted @ 2014-02-03 20:24 RAMA 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Opt... 阅读全文
posted @ 2014-01-13 23:55 RAMA 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 这次分享的宗旨是——让大家学会创建与使用静态库、动态库,知道静态库与动态库的区别,知道使用的时候如何选择。这里不深入介绍静态库、动态库的底层格式,内存布局等,有兴趣的同学,推荐一本书《程序员的自我修养——链接、装载与库》。什么是库库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基... 阅读全文
posted @ 2013-12-25 16:11 RAMA 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明。 我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理... 阅读全文
posted @ 2013-12-25 13:31 RAMA 阅读(346) 评论(0) 推荐(0) 编辑