
Operating System
文章平均质量分 70
deep_explore
本人从2010年开始从事苹果应用的开发,长期从事ios和Mac应用程序的开发,包括越狱非越狱应用的开发, 曾独立开发过多款上线应用。
展开
-
ubuntu-10.10一个BUG的解决
<br />“功夫不负有心人”<br />任何一个想有所作为的人因该记住这句话。<br />最近有一项任务需要在ubuntu10.10上安装sun-java6-jdk,尝试了N次失败之后,今天总算成功了!感到非常欣喜。<br />我安装jdk的步骤是:<br />sudo apt-get update<br />sudo apt-get install sun-java6-jdk<br />sudo apt-get update-java-alternatives -l<br />sudo update-j原创 2010-12-10 13:35:00 · 502 阅读 · 0 评论 -
操作系统学习笔记(12) 死锁问题
1 例子, 2 P进程:get(A), get(B), relese(A), relase(B) 3 Q进程:get(A), get(B), relese(A), relase(B) 4 5 死锁区: 6 P获得了A,还没获得B,下面将申请B 7 Q获得了B,还没获得A,下面将申请A 8 9 修改P、Q代码: 10 P进程:get(A), relase(A), get(B), relase(B) 11 Q进程:get(B), relase(B)原创 2011-01-04 14:15:00 · 602 阅读 · 0 评论 -
操作系统学习笔记(10) 互斥和同步的经典问题
1 经典进程互斥与同步问题: 2 3 1。生产者|消费者问题 4 多个进程写数据到缓冲区-生产 5 一个进程从缓冲区读数据-消费 6 假设缓冲区大小为n、有两个指针:in,out 7 8 不控制生产者/消费者:出错、执行结果不确定。 9 10 生产者/消费者必须互斥: 11 生产者/消费者必须同步: 12 13 //program producer_consumer 14原创 2011-01-02 12:39:00 · 723 阅读 · 0 评论 -
操作系统学习笔记(13) 互斥与同步的经典问题 -哲学家进餐问题
<br /> 1 哲学家进餐问题:<br /> 2 (算法)信号量方法:<br /> 3 //Program diningphilosophers<br /> 4 var fork:array[5] of semaphore = 1;<br /> 5 int i;<br /> 6 <br /> 7 procedure philosopher(int i){<br /> 8 while(true){<br />原创 2011-01-04 18:49:00 · 652 阅读 · 0 评论 -
操作系统学习笔记(15) 存储管理-内存的划分
<br /> 1 ====================================<br /> 2 内存划分:<br /> 3 <br /> 4 静态划分:<br /> 5 1。一旦划分完毕,分区的大小和数目将不再改变。<br /> 6 2。固定分区:当进程申请空间时,系统为之分配大小适合的分区。<br /> 7 3。分页:特殊的静态分区,页框(帧),可以为进程分配多个帧。<br /> 8 <br /> 9 分页:数据原创 2011-01-05 15:03:00 · 545 阅读 · 0 评论 -
操作系统学习笔记(14) 存储管理-储存管理的任务
<br /> 1 本章要点:<br /> 2 1。储存管理任务。<br /> 3 2。内存划分与分配技术。<br /> 4 3。程序装入技术。<br /> 5 4。简单存储管理技术。<br /> 6 5。虚拟存储管理技术。<br /> 7 <br /> 8 ===========================<br /> 9 储存管理任务:<br /> 10 <br /> 11 (一)存储分配:<br />原创 2011-01-05 13:22:00 · 8677 阅读 · 0 评论 -
操作系统学习笔记(16) 存储管理-程序装入内存技术
<br /> 1 3种装入模式:<br /> 2 1。绝对装入:逻辑地址=绝对地址。<br /> 3 2。重定位装入:静态重定位技术,地址在程序装入时计算,装入后物理地址不再<br /> 4 改变。<br /> 5 3。运行时动态装入:重定位寄存器<br /> 6 <br /> 7 可执行程序的链接形成:<br /> 8 1。静态链接:整个的装入模块具有一个线性的逻辑地址,可以采用2、3装入方式。<br /> 9原创 2011-01-06 09:48:00 · 1113 阅读 · 0 评论 -
fork()函数-创建子进程
<br />fork():<br />The fork() system call will spawn a new child process which is an identical process to the parent except that has a newsystem process ID. The process is copied in memory from the parent and a newprocess structure is assigned by原创 2011-04-04 11:29:00 · 1050 阅读 · 0 评论 -
Linux进程解析
ProcessAbstract: 1.define and Discribe. 2.PCB. 3.Linux进程与线程的区别与联系。 4.Linux进程的创建。 5.进程的5状态。 6.进程的变迁。1、DEFINE and Discribe: “Incomputing, a process is aninstance ofa computerprogram that原创 2011-04-04 10:08:00 · 900 阅读 · 0 评论 -
操作系统学习笔记(11) 互斥和同步的解决方案-消息传递
<br /> 1 进程的互斥与同步方法:消息传递<br /> 2 <br /> 3 低级通信:进程之间交换控制信息的过程。<br /> 4 高级通信:进程之间交换批量数据的过程。<br /> 5 <br /> 6 进程之间的同步与互斥是低级通信。<br /> 7 <br /> 8 常见的进程通信机制:<br /> 9 <br /> 10 基于共享储存区方式:<br /> 11 1。不要求数据移动,一般用于本地通信。<br /> 1原创 2011-01-04 11:20:00 · 1405 阅读 · 0 评论 -
操作系统学习笔记(9) 互斥和同步的信号量算法
<br /> 1 互斥与同步解决办法之三:<br /> 2 信号量方法(semaphores)<br /> 3 主要是为了解决“忙等”问题。<br /> 4 基本原理:<br /> 5 1。多个进程传递信息合作。<br /> 6 2。信号量定义为记录型变量s(整型,队列)<br /> 7 信号量的定义:<br /> 8 type semaphore = record;<br /> 9 count:integer;<br原创 2011-01-01 18:29:00 · 1204 阅读 · 0 评论 -
操作系统学习笔记(8) 互斥和同步的实现算法
============================进程互斥与同步:如何协调多个进程对资源的竞争和共享?如何解决多个进程因为竞争资源而出现执行结果异常,甚至导致系统的不稳定、失效等问题?采用多道程序并发设计技术的操作系统对诸多进程的并发控制是非常重要的。并发控制:(竞争资源)1。并发进程竞争使用同一资源时,他们之间就会发生冲突。2。不能同时使用临界资源,必须互斥使用。3。实现互斥,就必须有阻塞。4。被阻塞进程永远得不到申请的资源,就是死锁。临界区使用原则:原创 2010-12-31 11:24:00 · 1195 阅读 · 0 评论 -
操作系统学习笔记(1)
<br />《操作系统原理》<br /><br />参考书籍:<br />OperatingSystem Internals and Design principles,William Stallings,<br />TsingHua Unuversity Press<br />Applied Operating System Concepts,<br />Abraham Silberschatz etc.,Higher Education Press<br />计算机操作系统, 汤原创 2010-12-24 15:56:00 · 500 阅读 · 0 评论 -
操作系统学习笔记(3)
<br />设备管理:<br />-为程序分配I/O设备<br />-完成程序请求的I/O操作<br />-提高处理机和I/O设备的利用率<br />-改善人机界面<br />功能:缓冲管理、设备分配、设备处理(启动设备/中断处理)、虚拟设备、RAID技术、磁盘调度<br /><br /><br />文件管理任务:<br />-管理用户文件和系统文件<br />-管理文件的存储空间<br />-保证文件数据的安全<br />-方便用户使用文件<br />功能:目录原创 2010-12-27 09:58:00 · 383 阅读 · 0 评论 -
PDF文件有的中文显示不了的解决方案
<br />今天下载了C++ Primer 第三版.pdf,我用Document Veiwer和Xpdf打开,但是里面的部分中文显示为空白。<br /> <br />怎么解决??开始查资料<br /> <br />网上资料:<br /><br />从medibuntu的源装adobe reader:<br /> <br />sudo wget --output-document=/etc/apt/sources.list.d/medibuntu.list http://www.medibun原创 2010-12-24 20:25:00 · 2719 阅读 · 0 评论 -
操作系统学习笔记(5)
<br />对换技术,交换技术:<br />(swapping)<br />就是为了腾出内存空间,换出/换入进程(程序或数据,PCB不能换出去)。<br /><br />进程的挂起状态的原因:<br />-进程全部阻塞<br />-系统负荷过重,内存空间紧张。<br />-操作系统的需要。<br />-终端用户的请求。<br />-父进程的需求。<br /><br />被挂起进程的特征:<br />1。不能执行<br />2。可能等待某个时间的发生(选择挂起的进程原创 2010-12-27 20:17:00 · 546 阅读 · 0 评论 -
操作系统学习笔记(4)
<br />进程管理:<br /><br />基础:进程描述及控制<br />策略:进程调度<br />实现:互斥与同步<br />避免:死锁与饥饿<br />解决:几个经典问题<br />关于:进程通信<br /><br />=========<br />进程的引入:<br /><br />程序顺序执行:<br />程序:源代码、目标程序、可执行程序<br />程序执行:编辑、编译、链接、执行<br />程序结构:顺序结构、分支结构和循环结构<br />原创 2010-12-27 17:50:00 · 407 阅读 · 0 评论 -
操作系统学习笔记(2)
<br />“前台”和“后台”(逻辑上的):<br />分时系统:分时+批处理<br />这两个概念的提出是为了进一步不让处理机空闲,因为在作业流在调入调出的时间内,CPU是空闲的。<br />“前台”放的是分时交互作业。“后台”放的批处理作业。<br />当前台“调入调出”时CPU空闲,这时调用后台批处理作业。<br />即前台作业的优先级高于后台作业。<br /><br /><br />多道分时系统:<br />内存中放多个作业,把具备运行条件的作业排成队列。<br /><b原创 2010-12-26 16:33:00 · 417 阅读 · 0 评论 -
操作系统学习笔记(6) 进程调度算法
<br />调度目标:<br /><br />1。公平性<br />2。处理机利用率<br />3。提高系统吞吐量<br />4。尽量减少进程的响应时间<br /><br />调度原则:<br />响应时间、周转时间、截至时间<br />系统吞吐量、处理机利用率、资源平衡、公平性、优先级<br /><br />进程的调度方式:<br />非剥夺方式:end、申请IO,这种方式不利于“及时性”较高的实时系统和分时系统,主要用于批处理系统。<br />剥夺方式:时间片完、原创 2010-12-29 12:46:00 · 4004 阅读 · 0 评论 -
操作系统学习笔记(7) 线程
<br />实时任务:<br />及时性要求、经常被重复执行的进程<br /><br />分类:<br />周期性实时任务<br />非周期性实时任务(开始截至时间或完成截至时间):硬实时任务(规定截至时间)、软实时任务(截至时间并不严格)<br /><br />实时调度的目标:<br />任务在规定时间内完成,公平性和最短平均响应时间不再重要。<br /><br />实时调度算法:<br />实时性不太高的实时系统可用的调度算法:前面的算法<br /><br />速度单原创 2010-12-29 14:48:00 · 895 阅读 · 0 评论 -
vfork()系统调用-创建子进程,阻塞父进程
<br />vfork():<br />The vfork() function is the same as fork() except thatit does not make a copy of the address space. The memory is sharedreducing the overhead of spawning a new process with a unique copy of allthe memory.This is typically原创 2011-04-04 11:47:00 · 947 阅读 · 0 评论