课程设计1精要
主要任务 线程的创建和撤消 FCFS调度 时间片轮转调度 同步机制的实现 消息缓冲队列 通信机制的实现 编程环境 16位的DOS模式:内存地址20位 Turbo C 2.0 DOS的内存管理 地址线为20根,即物理地址为20位; 内存空间不超过1M; 字长为16位; 分段存储管理方式: 每段长度不超过216B; 段表用寄存器的方式来实现: CS——代码段内存基址 DS——数据段内存基址 SS——堆栈段内存基址 DOS规定:段在内存的起始地址的低4位必须为0。 DOS的内存管理 二维的逻辑地址: seg:off 逻辑地址 seg×24+off 物理地址 DOS的内存管理 DOS系统,C语言中地址的两种表达方式: 指针 :如 char *p; 用两个无符号整数seg:off分别表示段内存基址的高16位,段内偏移: 如 0X100:0X20 Turbo C提供了宏函数,使两种方式之间可以互相转化: p=MK_FP(seg,off); seg=FP_SEG(p); off=FP_OFF(p). 线程的概念 线程是进程内一个相对独立的运行单位,一个进程可以有一个或多个线程(至少有一个),这些线程共享这个进程的代码、数据及大部分管理信息,但每个线程有自己的程序计数器、堆栈和线程控制块。 拥有资源的基本单位——进程; 执行的基本单位(即CPU调度和分派的单位)——线程。 堆栈的概念 堆栈其实是一段内存空间; 堆栈中最后压入数据的那个单元叫栈顶,该单元的地址就是栈顶指针; CPU执行很多指令时都会用到堆栈,比如: push 指令; pop指令; 函数调用指令 call; 函数返回指令ret和中断返回指令 iret; int指令 等等。 函数调用的参数及返回地址,程序的局部变量等信息通常都被保存在进程的堆栈中。 堆栈的概念 传统的进程由PCB、代码段、数据段和堆栈段四部分组成,但很多系统中把堆栈包含在数据段中。 引入线程后,每个线程都必须有自己的私有堆栈。 CPU切换时,要进行堆栈的切换,从而使新进程(或新线程)可以把信息保存在自己的堆栈中,而不是老进程(或线程)的堆栈中。 CPU正在使用的堆栈被称作现行堆栈,它的栈顶指针存放在CPU的栈顶指针寄存器中(如SS:ESP)。 堆栈的概念 线程控制块 #define NTCB 5 struct TCB{ unsigned char *stack; /* 线程堆栈的起始地址 */ unsigned ss; /* 堆栈段址 */ unsigned sp; /* 堆栈指针 */ char state; /* 线程状态:执行、就绪、阻塞 */ char name[10]; /* 线程的外部标识符 */ } tcb[NTCB]; /*NTCB是系统允许的最多任务数*/ 线程控制块 #define FINISHED 0 /* 表示线程处于终止态 或 TCB是空闲状态 */ #define RUNNING 1 /* 表示线程处于运行态 */ #define READY 2 /* 表示线程处于就绪态 */ #define BLOCKED 3 /* 表示线程处于阻塞态 */ CPU切换 CPU的指令计数器(X86中的CS,IP寄存器)中保存有下一条要执行的机器指令的地址; 每次CPU取指令后,指令计数器的值被加上所取指令的字节数,调整为下一条指令的地址; 修改指令计数器的方法: 跳转指令(如JMP,JNE等) 函数调用指令 中断。 CPU切换 跳转指令JMP的格式: JMP 操作数 CPU切换 函数调用指令CALL的格式: CALL 操作数 CPU切换 中断 -当CPU在执行指令1的期间收到8号中断信号,并在该指令执行完后响应中断时,硬件将完成下列动作: 将flags寄存器压栈; 将CS,IP寄存器压栈; 从中断向量表的第8个向量中获得8#中断处理程序的入口地址,将它们装入CS,IP中。 -Iret指令将从栈顶依次弹出ip,cs,flags。 X86实模式的寄存器 CPU切换时需要保存的现场信息
您可能关注的文档
- 如何做好一名IQC要点.ppt
- 如何做一名合格的医务工作者(医院)要点.ppt
- 课堂新坐标2016_2017学年高中物理第7章机械能守恒定律10能量守恒定律与能源课件精要.ppt
- 如何做好手机销售技巧培训-PPT(精)要点.ppt
- 如何做好患者的护理评估.ppt要点.ppt
- 课堂新坐标2016_2017学年高中物理第4章牛顿运动定律章末分层突破课件精要.ppt
- 课堂新坐标2016_2017学年高中物理第7章机械能守恒定律章末分层突破课件精要.ppt
- 课堂新坐标2016_2017学年高中语文第2单元6鸿门宴课件新人教版必修1精要.ppt
- 课堂新坐标2016_2017学年高中语文第1单元3哈姆莱特课件精要.ppt
- 如何做好消防演练要点.pptx
最近下载
- 制造业信息化战略规划实施与优化-PDM.docx VIP
- 那智不二越机器人flexgui toolbox操作说明书.pdf VIP
- 智慧工厂-智慧工厂解决方案.docx VIP
- 高中化学解题方法归纳:和量法.doc VIP
- 译林牛津新版高中英语(必修1-3)单词表.pdf VIP
- 包装有限公司分切机安全风险分级清单.docx VIP
- 重庆市西南大学附属中学2025届高三下学期二诊模拟考试物理试卷 含解析.docx VIP
- 【高中英语】《星火英语同步词汇》抗遗忘速记手册.docx VIP
- 成都市锦江区2026届初三一诊(暨期末考试)数学试卷(含答案).docx
- 三坐标 培训教程.pptx VIP
原创力文档

文档评论(0)