当前位置: 首页 > news >正文

做网站用什么程序做网站有一个火箭回顶部

做网站用什么程序,做网站有一个火箭回顶部,it运维兼职平台,沧州网站制作公司目录 1 进程和程序区别 2 进程状态 2.1 进程的5种基本状态 2.2 进程状态之间转换 2.3 七状态模型 3 进程描述 3.1 进程控制块 PCB 3.2 进程块组织方式 4 进程控制 5 进程同步 互斥 5.1 区分进程互斥和同步 5.2 核心方案 5.3 其他方案 方案1 设置锁变量 方案2 严…目录 1 进程和程序区别 2 进程状态 2.1 进程的5种基本状态 2.2 进程状态之间转换 2.3 七状态模型 3 进程描述 3.1 进程控制块 PCB 3.2 进程块组织方式 4 进程控制 5 进程同步 互斥 5.1 区分进程互斥和同步 5.2 核心方案 5.3 其他方案 方案1 设置锁变量 方案2 严格轮转法 方案3 Peterson解决方案 方案4 关中断 方案5 机器指令实现的互斥 简单概述 什么是进程 是程序的1次执行程序执行的1个实例 每个进程有自己的地址空间。 为什么引入进程 多任务的需要。在内存中同时有多个可执行的进程以提高效率特别是CPU的利用率。 因此需要对进程进行管理以避免冲突 借助于PCB记录进程的描述和控制信息、上下文状态 1 进程和程序区别 进程是程序的1次执行。 进程Process和程序Program是两个不同的概念它们在计算机科学中有明确的区别 程序Program 定义程序是一组计算机指令的有序集合这些指令被编写成一个文件通常以可执行文件的形式存在。程序是静态的它只是一段代码的集合等待被执行。 特点程序包含了计算机程序员编写的源代码它描述了一系列任务的算法和逻辑但并没有实际执行。程序不占用计算机的内存空间也不消耗计算机的CPU时间。 例子一个文本编辑器的程序文件、一个游戏的可执行文件、一个网页浏览器的应用程序等都是程序的例子。 进程Process 定义进程是计算机中正在运行的程序的实例。它是程序在内存中加载并执行时的活动状态包括程序的代码、数据、执行状态、系统资源分配等。 特点进程是动态的它占用计算机的内存空间可以执行计算机指令与其他进程并发运行。每个进程都有自己的独立内存空间因此它们不会相互干扰。进程可以创建、启动、暂停、终止等。 例子当您运行一个文本编辑器、播放音乐、浏览网页或打印文档时每个活动都对应一个独立的进程。 总结来说程序是静态的、不执行的计算机指令集合而进程是程序的运行实例它占用计算机内存执行指令并与其他进程一起协同工作。进程是计算机操作系统中的核心概念它使多任务处理成为可能. 可以将程序和进程比喻为烹饪的过程 程序Program就像是一本菜谱。菜谱是一份详细的食物制作指南它包含了食材清单、烹饪步骤和所需的厨具。但菜谱本身并不能做出美味的食物它只是一份指导等待着被厨师计算机读取和执行。就像您需要拿出菜谱并按照其中的步骤去做一道菜一样计算机需要将程序加载到内存中并执行其中的指令。 进程Process就像是正在烹饪中的一道菜。当您选择一道菜谱并开始烹饪时您实际上在制作一道具体的菜肴。这个菜肴有自己的成分、调味料和烹饪状态。它在火上烹煮、被切割、被摆盘等等。这个菜肴是实际被制作和提供给食客的就像进程是正在计算机内存中运行和执行的程序实例。 所以程序就像是一份指导而进程是实际的动态执行。程序是静态的而进程是具体的、可见的操作。 2 进程状态 2.1 进程的5种基本状态 1新建new进程正在被创建。 2就绪ready进程可运行正等待获得处理机。 3运行running进程的指令正在被执行。 4阻塞blocked或等待进程因等待某事件如请求I/O而暂停执行。 5完成done进程结束。 2.2 进程状态之间转换 2.3 七状态模型 引入挂起即 进程此时在外存等待 就绪(Ready)进程在内存且可立即进入运行状态 阻塞(Blocked)进程在内存并等待某事件的出现 阻塞挂起(Blocked, suspend)进程在外存并等待某事件的出现 就绪挂起(Ready, suspend)进程在外存但只要进入内存即可运行 运行 新建 完成 注意 挂起都在外存 挂起把进程从内存转到外存 激活把进程从外存转到内存 补充 时间片是操作系统给程序分配的时间保证一个进程不会一直占用CPU资源不释放造成混乱 3 进程描述 3.1 进程控制块 PCB 作用 1 是OS管理和控制进程的数据结构。 2 PCB记录着进程的描述信息。 每个进程对应1个PCB。 信息内容 1进程本身的标识信息 进程标识符pid(process ID)整数由OS分配唯一 用户标识符uid(user ID)创建该进程的用户 对应程序的地址内存、外存 2CPU现场 - 为进程正确切换所需 所有寄存器的值 或称进程上下文(context) 因为要切换走进程所以要保护当前进程的上下内容使得切换回来的时候可以继续正常执行 3进程调度信息 进程的状态 优先级 使进程阻塞的条件 占用CPU 、等待CPU的时间用于动态调整优先级 4进程占用资源的信息 进程间同步和通信机制如信号量、消息队列指针 打开文件的信息如文件描述符表 CPU现场 - 为进程正确切换所需 所有寄存器的值 或称进程上下文(context) Linux的进程控制块:task_struct 进程创建时由OS创建PCB; 进程终止时由OS撤销PCB 进程运行时以PCB作为调度依据。 3.2 进程块组织方式 一般来说系统把所有PCB组织在一起并把它们放在内存的固定区域构成PCB表。 PCB表的大小决定了系统中最多可同时存在的进程个数。 同一状态进程的PCB组成一个链表不同状态对应多个不同的链表如就绪链表、阻塞链表 4 进程控制 基本概念 原语 创建、撤销进程以及完成进程各状态之间的转换由具有特定功能的原语完成 原语 由若干指令构成的具有特定功能的函数 具有原子性其操作具有不可分割性 如 进程创建原语 进程撤销原语 阻塞原语 唤醒原语 挂起原语 激活解挂原语 改变进程优先级 5 进程同步 互斥 在执行时间上互相重叠或交替一个进程的执行尚未结束另一个进程的执行已经开始的执行方式。 这样会有一个问题 因为资源共享的问题结果会产生不确定性 为此引入同步synchronization和互斥mutual exclusion。 临界资源 一次只允许一个进程独占访问使用资源 越小越好 临界区 进程中访问临界资源的的程序段 5.1 区分进程互斥和同步 互斥是指执行某个进程的时候访问某一临界资源的时候另一个进程不能执行访问这一临界资源。 经典只有互斥问题打印机打印 同步是指完成某一进程执行是有条件的必须等另一个进程的某一资源结束才可以 经典只有同步的问题售票员售票 既有互斥又有同步问题消费者问题 5.2 核心方案 信号量 利用信号量P-V操作可以实现进程的互斥访问 利用信号量P-V 操作可以实现进程的同步访问 5.3 其他方案 实现互斥方案 一个好的互斥方案应满足以下条件 1任何两个进程不能同时处于临界区。 2临界区外的进程不应阻止其他进程进入临界区。 3不应使进程在临界区外无休止地等待。就是说临界区代码执行时间要短。 4不应对CPU的个数和进程之间的相对运行速度作任何假设。 方案1 设置锁变量 即设置一个共享变量lock 当lock0的时候临界区内无进程初始值 当lock1的时候临界区内有进程 while(lock); lock1; 临界区 lock0; 非临界区 可能的问题 1 会导致两个进程同时进入临界资源 比如进程1走到lock1的时候还没来得及上锁修改lock的值为1就被切换走了这时候其他进程 就可以避免while也进入临界区 2 可能会存在盲等待 走到lock0的时候还没来得及解锁就被切换走了这时候其他进程都进不来 所以这种方案是错误的不能达到效果 方案2 严格轮转法 设置共享变量turn以指示进入临界区的进程号 以两个进程为例 turn0的时候允许进程0进入临界区初始值 turn1的时候允许进程1进入临界区 进程0 while (turn ! 0); 临界区 turn 1; 非临界区 进程1 while (turn ! 1); 临界区 turn 0; 非临界区 本质互为锁 可能的问题 进程可能会被临界区之外的进程阻塞 方案3 Peterson解决方案 设置一个共享变量process代表此时进入临界区的进程号 enter_region(process); //process是 进入/离开临界区的进程号 临界区 leave_region(process); 非临界区 ​ 当一个进程想进入临界区时先调用enter_region函数判断是否能安全进入不能的话等待当进程从临界区退出后需调用leave_region函数允许其它进程进入临界区。 两个函数的参数均为进程号 以两个进程为例子 #define FALSE 0 #define TRUE   1 #define   N       2 // 进程的个数 int  turn;   // 轮到谁• int  interested[N];   // 兴趣数组表明第i个进程是否在临界区所有元素初始值均为FALSE void  enter_region (int  process)  // process为进程号 0 或 1•{•        int  other;  // 另外一个进程的进程号•        other    1  -  process; •        interested[process]    TRUE; // 表明本进程进入临界区•       turn    process;          // 设置标志位•       while ( turn process interested[other] TRUE); } void  leave_region (int  process)•{•      interested[process]    FALSE; // 本进程将离开临界区•} 方案4 关中断 由于进程在切换进程的时候 必须进行中断处理既然如此的话 我们可以在一个程序进入临界区域之前将中断功能给关闭简称关中断 关中断 临界区; 开中断; 非临界区; 缺点 1 对多处理机系统无效因为每个处理机有自己的中断开关 2 关中断权利交给用户不合适 方案5 机器指令实现的互斥 即保证某些内容他是直接互斥的
http://www.dnsts.com.cn/news/22920.html

相关文章:

  • 中国门户网站建设重要性应用镜像wordpress
  • 网站下载免费软件网站建设项目的预算
  • 昆明调整高风险地区网站快照优化公司
  • 网站ui设计学的是什么石嘴山北京网站建设
  • 建设网站难吗梯子代理网址
  • 网站建qq群基于wordpress多商户
  • 创新创业网站建设制作wordpress模板教程
  • 昌平做网站公司做网站的具体需求
  • 永嘉规划建设局网站网站环境搭建
  • 网站后期维护管理自动更新wordpress失败
  • 东莞汽车网站建设网页设计作业动态
  • 太平洋建设网站潍坊网站建设托管
  • 网站建设需求说明全国部分高校精品课程建设网站
  • 如何在手机做网站php网站建设外国参考文献
  • 页面设计排版网站贵州 网站建设
  • 做招聘网站怎么设计框架装修平台哪个最好
  • 个人网站可以做网上支付吗贵阳市城乡建设厅网站
  • 网站备案授权顺义城区网站建设
  • 东莞响应式网站哪里好山东查询网站备案
  • 网站语言有几种淘宝优惠券查询网站怎么做
  • 高端品牌网站建设兴田德润在哪儿怎么做旅游网站
  • 一般购物网站有哪些模块用dw做网站首页
  • 吉林建设厅官方网站桂林市有几个区和县
  • 代刷网站只做软件吗做国外网站关键词用写
  • 2015微信网站资质类网站如何做优化
  • 如何做亚马逊备案的网站东莞网站建设dgjcwl
  • 张家港专业的网站制作公司数据库做网站
  • 最好的产品网站建设网站设计网站机构
  • 静态网站说明书活动策划方案步骤
  • 网站后台编辑器不显示天津做胎儿鉴定网站