- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 死锁
因为最近在看APUE的多线程里面有讲到死锁,而且操作系统也在讲死锁的概念,就在此总结一下,后续还会陆续的添加1.死锁的定义 系统中存在的一组进程,它们中的每一个进程都占用了某种资源而而又都在等待着其中的另一个进程所占用的资源而无限期的僵持下去的局面。2.死锁的根本原因 系统能提供的资源个数比要求该资源的进程数要少。3.死锁产生的必要条件 (1)互斥条
2014-12-23 17:21:35 415
转载 程序员10年总结
展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告 走过的路,回忆起来是那么曲折,把自己的一些心得体会分享给程序员兄弟姐妹们,虽然时代在变化,但是很可能你也会走我已经做过的10年的路程,有些心得体会你可以借鉴一下,觉得说得有道理的你就接纳,觉得说得没道理的,你就抛弃,以下是我发自内心的,给大家的忠告,特别是针对那些小弟弟妹妹们。01. 自己的户口档案、养老保险
2014-12-16 12:31:16 494
转载 应届生高薪就业的背后
我是11月4号开始去面试的,总共投了10份简历,到6号为止,收到7个面试电话,其中有三个我觉着不大合适,就打电话拒绝了,没有去面试,总共面试了4家,3家给了offer,一个是7000,一个7200一个是8000,我本来特别期待创业园的那家公司,可惜最后还是错过了。总的来说,面试还是挺顺利的。虽然只面试了这几家,但是和他们的技术面试官都聊了很久,最长的一个聊了2个半小时,对于面试,我还是有一点看法的
2014-12-12 21:41:37 1272
原创 c语言的声明
在看APUE这本书上的signal函数的声明时感觉c语言声明太复杂,所以在此总结一下,看了几遍书还是觉得复杂。后来看一本书上介绍右左法则,虽然可以解决问题但我觉得按那样分析的话还是太慢了,可能是我理解的不够透彻吧。现在介绍一下我看c语言复杂声明的方法,感觉这样方便多了记住常用的几个,复杂的声明就很容易理解了。1.数组指针int (*p)[3]; 其实可以通过int a[3];来理解,
2014-12-12 07:35:49 471
原创 linux中信号的基本概念
1.信号的基本概念:信号全称为软中断信号,也有人称作软中断,信号机制是进程之间相互传递消息的一种方法。 2.信号的作用:进程之间可以互相通过系统调用kill发送软中断信号,通知进程发生了某个事件。内核也可以因为内部事件而给进程发送信号,通知进程发生了某个事件 例如:中断用户键入中断键(CTRL+C),则会通过信号机制停止一个程序。 3.信号发生的条件:1.
2014-12-10 22:44:46 640
转载 Linux环境进程间通信
Linux环境进程间通信(二): 信号(上)linux信号机制远远比想象的复杂,本文力争用最短的篇幅,对该机制做了深入细致的分析。读者可以先读一下信号应用实例(在信号(下)中),这样可以对信号发送直到相应的处理函数执行完毕这一过程有个大致的印象。本文尽量给出了较新函数的应用实例,着重说明这些的功能。2 评论:郑彦兴 (mlinux@163.com)国防科
2014-12-08 13:04:25 506
转载 linux僵死进程
一个进程在调用exit命令结束自己的生命的时候,其实它并没有真正的被销毁, 而是留下一个称为僵死进程(Zombie)的数据结构(系统调用exit,它的作用是使进程退出,但也仅仅限于将一个正常的进程变成一个僵死进程,并不能将其完全销毁)。 一、僵死进程的产生 在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等,但是仍然为其保留一定的信息(包括进程号
2014-12-07 19:09:36 482
转载 vim 的语法错误定位
vim 的语法错误定位 2013 年 5 月 3 日 孙鹤 Vim,1因为 vim 天生就是 C 语言开发者的利器,所以很多时候它的一些原生功能就能为 C 程序员提供非常好的用户体验。在 C 语言编译环境中,我们的编译一般是由 make 这个命令开始的,而 vim 就很好的整合了这个 make 命令。当然很多编译型的语言都可以通过 Makefile 编写编译规则,vim 默
2014-12-07 10:35:48 4693
转载 c语言规范
文件结构 c程序文件:*.C (implementation) 、 *.h (Declaration) 一. 头文件结构 头文件作用:通过头文件来调用库功能。在很多场合,用户得不到源代码,只向用户提供二进制库和头文件;头文件能加强类型安全检查。如果某个接口被实现或被使用时,其方式与头文件中的声明不一致,编译器就会指出错误 1>头文件开头处的版权
2014-12-07 09:39:29 530
转载 fork函数详解
分类: LINUX 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有
2014-12-07 09:20:37 830
转载 理清Linux中的各种用户ID关系
绿色代表进程(进程的性质)橙色代表文件(文件的性质)。当进程试图打开文件时,内核会进行如下权限测试:0. 若进程的有效用户ID是0(超级用户),则允许访问。1. 若进程的有效用户ID等于文件的所有者ID,那么进行文件所有者访问权限的测试(与open的参数对比),对应图中的1。2. 若进程的有效组ID或进程的附加组ID之一等于文件的组ID,则进行文件所属组的权限测试,
2014-12-06 00:10:05 531
转载 嵌入式经典面试题-亲身经历
嵌入式经典面试题-亲身经历 2014-10-21 11:37:06分类: 嵌入式 C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。 从被面试者的角度来讲,你能了解许
2014-12-05 21:41:12 585
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人