操作系统
文章平均质量分 84
THEONE10211024
GitHub:https://github.com/THEONE10211024
展开
-
如何打一把好锁
微软在windows 3.1以后,便引入了多线程模型,相对于单线程模型中只有一个线程主动放弃CPU(等待资源或执行完毕)的单一执行模式,多线程的出现在很大程度上提高了程序的运行效率和响应度。但是多线程的并发执行也带来了一个大问题:共享数据的不一致。因此,在多线程编程中,需要加锁来同步协调线程间的协作,保证数据执行的一致性。在windows中,常见的锁包括互斥量(mutex)、信号量(semapho原创 2013-10-24 18:03:28 · 1496 阅读 · 0 评论 -
注册表编程浅解析
什么是注册表?注册表本质上就是windows里的一个数据库。支撑其实现的结构是树形结构。注册表里面存储的就是一些乱七八糟的什么配置信息啊,用户信息啊等,具体的自己google去吧!既然注册表是用树形结构保存的,那么我就按照树的结构来剖析吧。注册表结构键:键是注册表特有名称之一,你可以把键理解成文件夹,理解成一个表的表项(注册表本身也可以理解成一个表)。但是在这里,键其实就是这棵树的非叶原创 2013-11-01 16:27:27 · 1496 阅读 · 0 评论 -
进程同步与互斥基础
一、基本概念同步:为了完成某个任务而建立的两个或多个进程,这些进程为了需要在某些位置上协调它们的工作次序而等待、传递信息所产生的制约关系。进程间的制约关系就是源于它们之间的相互合作。互斥:当一个进程进入临界区使用临界资源是,另一个进程必须等待,当占用临界区资源的进程退出临界区以后才允许进入临界区,访问资源。注意,这里的一个并非卡死就一次只能一个进程访问临界资源。当信号量个数大于1的时候,一原创 2013-11-02 15:07:53 · 5021 阅读 · 0 评论 -
奇虎360 2014后台研发二面面经(含参考答案)
面试题目:1.C和C++● 堆和栈的区别堆和栈均是计算机硬件层面的上概念,操作系统给每个进程分配4G(前提32位)的虚拟内存空间。内存空间分别由堆、栈、数据段和代码段组成。总体来说,堆和栈的区别主要有一下几点:1)存的值的类容堆中的值一般是由new、malloc、realloc分配的,存值类容不固定。可以往里写任何类型的值。栈里存的是函数返回地址,函数参数和局部变量等。原创 2013-11-03 20:36:56 · 4802 阅读 · 2 评论