摘要: 设备管理一般指的是计算机外部设备,主要功能有设备分配、设备映射、设备驱动、I\O缓冲区的管理等。设备分配:用户进程不能直接使用设备,必须通过操作系统的分配和调度完成对设备的操作。操作系统对提出申请使用设备的进程使用分配算法,按照一定的策略为用户分配设备,并且记录设备的使用情况。设备映射:操作系统要求程序中对设备的引用不能通过物理名称指定,这样做是为了提高应用软件对设备的适应性。应用软件不应该知道将会使用到的具体哪一台设备,由操作系统调度。因此,设备的名称有了逻辑名称和物理名称,逻辑名称是在程序中使用的,每一类设备使用统一的命名规则,物理名称则是实际用户可见的设备。操作系统必须完成从逻辑名称到物 阅读全文
posted @ 2012-10-19 17:23 我不是geek 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 因为很多编译器在编译程序的过程是对程序进行优化,将程序中的变量值存储在缓存中以提高运行效率,这就可能出现这样的情况,用的到变量值不是最新的,而是已经存在在缓存中的值,这样就可能出现莫名其妙的错误,所以对一些易变的变量,加上violate 修饰,编译器在编译过程中就不会对读写这个变量就不会进行优化比如两个线程在运行中。第一个线程已经初始化,将变量a载入了缓存后,这时候第二个线程改变了a的值。如果a没有用volatile修饰的话,那么可能在第一个线程中使用a时,还是使用的缓存中没有改变过的值。(这只是一个可能性,因为多线程的运行谁都不能保证结果是什么,这是与不同的系统有关的)。如果使用了volat 阅读全文
posted @ 2012-10-19 15:04 我不是geek 阅读(719) 评论(0) 推荐(0) 编辑