
操作系统
劉俊
这个作者很懒,什么都没留下…
展开
-
由OJ提交结果联想到内存页面大小的一些小猜想
今天不知道抽起那条筋,去看了下之前买的二手的盗版的《APUE》。虽然对于Unix/Linux系统来说,我可以说是一概不知,但是看了前几章,感觉Linux和Windows都有不少相似的地方,当然不是指内核那些。好吧,其实我想说的不是这个。 其实想说的是,今晚提交完之后,看着那个提交结果,尤其是那个内存使用量,突然联想到了些什么。然后去翻一下自己AC过的题目,也是去看那个内存量。发现原创 2012-05-21 00:50:30 · 1510 阅读 · 2 评论 -
Windows进程间各种通信方式浅谈
1 Windows进程间通信的各种方法进程是装入内存并准备执行的程序,每个进程都有私有的虚拟地址空间,由代码、数据以及它可利用的系统资源(如文件、管道等)组成。多进程/多线程是Windows操作系统的一个基本特征。Microsoft Win32应用编程接口(Application Programming Interface, API)提供了大量支持应用程序间数据共享和交换的机制,这些机制行转载 2013-10-04 20:01:56 · 1730 阅读 · 0 评论 -
[综合面试] 牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结
基础篇:操作系统、计算机网络、设计模式一:操作系统1. 进程的有哪几种状态,状态转换图,及导致转换的事件。2. 进程与线程的区别。3. 进程通信的几种方式。4. 线程同步几种方式。(一定要会写生产者、消费者问题,完全消化理解)5. 线程的实现方式. (也就是用户线程与内核线程的区别)6. 用户态和核心态的区别。7. 用户栈和内核栈的区转载 2013-10-04 00:32:45 · 2063 阅读 · 0 评论 -
程序员技术练级攻略
文章来自 coolshell.cn,11年的文章,如今依然非常受用。月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学转载 2013-07-04 00:35:33 · 1245 阅读 · 0 评论 -
错误合集(2013-3-11更新)
今天将书上的一个实例程序实现的时候,发现问题多多。首先是书上的代码本来就有BUG,而且书上作者是抄袭中的渣渣,连抄袭也没有抄完全,再加上自己能力上的问题,在查错、发现问题、调试上花了很多时间。最令人蛋痛的是,有很多错误其实是已经错过很多次了,又或者根本不是什么技术性错误。为了更好地节省自己的时间,自己每犯一次错误就在这里记一次,总结一次,就算再忙也要。这里的错误都将以小标题的格式分开,原创 2012-02-21 19:54:37 · 2122 阅读 · 6 评论 -
《Windows核心编程 5th》部分读书笔记----第10章 同步设备I/O与异步设备I/O
异步设备I/O基础假设一个线程向设备发出一个异步I/O请求。这个请求被传给设备驱动程序,后者负责完成实际I/O的操作。当驱动程序在等待设备响应的时候,应用程序的线程并没有因为要等待I/O请求完成而被挂起,线程会继续运行并执行其他有用的任务。到了某一时刻,设备驱动程序完成了对队列中的I/O请求的处理,这时它必须通知应用程序数据已发送,数据已收到,或发生了错误,这些通知称之为“接收I/O请求完成通原创 2013-03-23 15:12:14 · 1171 阅读 · 0 评论 -
《深入理解计算机系统 2nd》部分读书笔记---第9章 虚拟存储器(未完成)
进程--摘自《深入理解计算机系统 2nd》第8章 异常控制流进程提供给应用程序的关键抽象:一个独立的逻辑控制流,它提供一个假象,好像我们的程序独占地使用处理器。一个私有的地址空间,它提供一个假象,好像我们的程序独占地使用存储器系统。这两个抽象很重要,对理解《Windows核心编程 5th》和《Unix环境高级编程 2nd》两书中描述的一些机制很有帮助。虚原创 2013-03-17 15:48:13 · 3385 阅读 · 2 评论 -
《Windows核心编程 5th》读书笔记----第9章 用内核对象进行线程同步
用户模式与内核模式下的线程同步首先,先引用一下《深入理解计算机系统 2nd》第8章 “异常控制流”关于用户模式和内核模式的一段话,理清一下关于用户模式和内核模式的概念:为了使操作系统内核提供一个无懈可击的进程抽象,处理器必须提供一种机制,限制一个应用可以执行的指令以及它可以访问的地址空间范围。处理器通常是用某一个控制寄存器中的一个模式位(mode bit)来提供这个功能的,该寄存器描述原创 2013-03-16 10:49:20 · 992 阅读 · 0 评论 -
Windows内核对象句柄的继承小总结
对象句柄的继承 跨进程边界共享内核对象有三种常用的机制:为对象命名、复制对象句柄,还有就是使用对象句柄继承。 Windows支持“对象句柄的继承”,而不是支持对象的继承。(这里顺带总结一下,内核对象本质上是一个内存块,是操作系统内核分配,并只能由操作系统内核访问。而句柄标识了所创建的内核对象,与进程相关。句柄的值大概可以认为是进程句柄表的一个索引值,标识内核对象在进程句柄表中的原创 2012-07-23 22:20:25 · 4780 阅读 · 1 评论 -
摘录-德问每周精选编程问答
前一阵子,在微博发现了一个叫做“德问”的编程问答网站,里面有不少有意思、值得思考的问题,也有让人叹为观止的解答。所以,自己想弄个博客长期记录,自己所关注领域的问题与解答。 下面的内容转自“德问:编程社交问答” 非精选,自己觉得有意思的: 1、deque的插入和删除操作会使迭代器失效么? 2、MinGw中GCC与G++的异同?3、Windows中,互斥转载 2012-11-29 00:53:42 · 983 阅读 · 0 评论 -
Windows下的线程终止
Windows下的线程可以通过以下4种方法来终止。1、 线程函数返回。(强烈推荐)2、 线程通过调用ExitThread函数“杀死”自己。(避免使用)3、 同一个进程或另一个进程中的线程调用TerminateThread函数(避免使用)4、 包含线程的进程终止运行(避免使用) 1)、线程函数返回(自然死亡)清理工作包括:C原创 2012-07-28 01:28:22 · 4336 阅读 · 0 评论 -
CreateThread和_beginthreadex
在《Windows核心编程 5th》一书里经常提到一个的建议,那就是:如果写的是C/C++代码,尽量不要用CreateThread来创建线程,而必须调用C/C++运行库函数_beginthreadex。其中的原因摘自书上的原话就是:”标准C/C++运行库不是为多线程应用程序而设计的。”。以全局函数和全局变量为例,在多线程环境中会问题。因为他们是多个线程访问同一个资源,例如调用函数出错后设置err原创 2012-07-28 01:24:45 · 1090 阅读 · 0 评论 -
标准I/O缓冲机制读书笔记总结和理解
缓冲标准I/O库提供缓冲的目的是尽可能减少read和write调用的次数。它也对每个I/O流自动地进行缓冲管理,从而避免了应用程序需要考虑这一点所带来的麻烦。不幸的是,标准I/O库最令人迷惑的也是它的缓冲。 标准I/O提供了三种类型的缓冲:(1)、全缓冲。在这种情况下,在填满标准I/O缓冲区后才进行实际I/O操作。对于驻留在磁盘上的文件通常是由标准I/O库实施全缓冲的。 (原创 2012-07-25 18:34:01 · 1803 阅读 · 0 评论 -
各种ID总结
嗯,看书的时候,自己老是记不住那种ID对应什么作用,所以~~ 用户标识 1、用户ID:口令文件登录项中的用户ID是个数值,它向系统标识各个不同的用户。系统管理员在确定一个用户的登录名的同时,确定其用户ID。用户不能更改其用户ID。通常每个用户有一个唯一的用户ID。 2、组ID:口令文件登录项中也包括用户的组ID,它是一个数值。组ID也由系原创 2012-07-19 15:36:18 · 1529 阅读 · 0 评论 -
可等待的计时器与APC调用
以前第一次看到APC,也就是异步过程调用的时候,没有搞明白这是一个什么样的机制。今天再看一次,然后结合一些简单的测试代码和搜索来的资料,大概明白了是怎么回事。 先来非常简单地描述一下这一个“可等待的计时内核对象”。大概定义如下:可等待的计时器对象是这样一种内核对象,它们会在某个指定的时间触发,或每一段时间触发一次,它们通常用来在某个时间执行一些操作。 相关的API(具体原创 2012-08-02 19:20:04 · 1689 阅读 · 1 评论 -
文件描述符、文件表项、V节点表项的一些总结
看书的时候对这三样东西把握得不太清楚,嗯,所以写篇blog来总结一下。 文件描述符(进程级别): 1)、在每个进程表中都有一个记录项,记录项中包含有一张打开文件描述符表,可将其视察为一个矢量(数组),每个描述符占用一项。与每个文件描述符相关联的是: (a)、文件描述符标志。 (b)、指向一个文件表项的指针。(不同的文件描述原创 2012-07-12 11:26:39 · 6603 阅读 · 5 评论 -
写一下这些年看过的书(2014.7.31更新)
之前答应了啊牛要写一篇东西分享一下经验,但是却一直都没怎么动手。因为自己大学四年基本上都是摸着石头过河的感觉,也谈不上什么经验,所以也不知道自己可以写些什么。不过,后来受一位师兄的日志启发,觉得也可以分享一下自己看过的书,让师弟师妹参考一下,希望能起到一点帮助吧。 PS:水平有限,下面介绍的那些书完全是站着自己角度去写的,所以如有不妥的地方,请大家指正。 1、《C Prime原创 2014-07-06 01:18:57 · 2207 阅读 · 0 评论