自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

cszhao1980的专栏

十年碌碌

  • 博客(6)
  • 收藏
  • 关注

原创 进(线)程同步原语

<!--p {margin-bottom:0.08in}-->                                                                                      现代操作系统的核心任务之一就是实现进线程的并发,因此必须采用一定的方法来消除进线程间的“竞态条件”(racecondition),

2012-09-26 11:50:22 4703

原创 (莱昂氏unix源代码分析导读-32) RK磁盘驱动

by cszhao1980别紧张,RK磁盘是一种非常简单设备——这一点从其代码量中也可以看出。首先,它由一个控制器外加 1~8个devices组成,这8个devices编号为0~7,缓冲头的b_dev的minor号记录的就是该device编号,为简单起见,我们不考虑多于8个device的情况——对RK磁盘来说,b_dev的minor部分就是0~7,而major部分为0。

2012-09-24 11:48:34 2918

原创 Linux线程模型概述

By cszhao19801. 轻量进程(LWP)我们知道进程拥有大量资源,如:(1)寄存器信息,如pc等;(2)Data段(3)Stack;(4)正文段(可与其他进程共享);(5)open 的file;(6)信号;(7)etc。 在进行context switch时,os必须妥善的保存进程的各种资源,开销较大,故进程有也被称为重量进程(HWP)。传统的

2012-09-21 11:07:59 5164

原创 (莱昂氏unix源代码分析导读-31) “缓存头”初探

By cszhao1980struct buf结构,又被称为“缓存头”结构,而buf[NBUF]数组被称为“缓存头”数组。顾名思义,“缓存头”结构应该是用于缓存处理的,事实上,它确实有这个功能——“缓存头”数组的每个entry可与系统的一个缓存区域对应,用于操控一个缓存区域。 4520: struct buf4521: {4522:     int b_flags;

2012-09-17 15:05:59 2531

原创 (莱昂氏unix源代码分析导读-30) device

By cszhao1980我们现在必须放下身段看一看低层的IO操作了,复杂繁琐的外设。 PDP-11/40拥有两种外设:(1)         Block device (2)         Character device 简单说来,Block device以block来单位操作数据,而character device则以character为单位操作数据。我

2012-09-10 12:23:25 2658

原创 (莱昂氏unix源代码分析导读-29) swap in/out (下)

by cszhao1980最后,看一下我们的老朋友sched(),上次看到它还是在系统初启时,#0进程在sched()函数中调用sleep(&runout ,…)睡眠,从而让出cpu,切换至#1进程。 sched()函数是个黑洞,它内部是个死循环,永远也不会退出(除非出错)。也就是说#0进程将陷入在sched()中,而sched()用来进行调度,自此#0进程就蜕变为调度

2012-09-03 11:48:42 4027

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除