当前位置:文档之家› Nucleus Plus操作系统综述

Nucleus Plus操作系统综述

Nucleus Plus操作系统综述
Nucleus Plus操作系统综述

Chapter 1

一、 ATI公司简介

■公司全称:Accelerated Technology Inc.

■成立于1990年8月

■总部在美国Alabama州的Mobile

■在美国的加利佛尼亚,德克萨斯,马塞诸塞,佛罗里达以及田纳西等设有分支机构■在英国、法国和德国设有分支机构

■在日本、韩国、澳大利亚、台湾、中国、意大利和俄罗斯等国设有代理商

■1990年推出Nucleus实时多任务操作系统

■专注于RTOS的研发、销售和技术应用及技术支持

■1993年成为MOTOROLA推荐的四大RTOS厂商之一

■1994年推出全球唯一的MNT虚拟开发平台

■1994年推出全球唯一的VNET网络化虚拟平台

■1994年成功地推出Java和RTOS产品

■1995年成为全球第一大源代码RTOS厂商

■1996年选定旋极科技公司为其中国大陆及香港地区独家代理商

■1997年公司员工数量为82人,成为美国大型的RTOS厂商

■1998年NET4.2成功推出

■1998年成功推出机顶盒方案和OSEK汽车电子方案

■1999年推出WebBrowser浏览器

■1999年ATI公司员工数量为150人,已成为美国成长速度最快的嵌入式操作系统公司■2000年NET4.4成功推出,完善了NUCLEUS的网络模块

■ATI,Accelerated Technology Inc现在是Mentor Graphics ESD

二、 Nucleus PLUS的特点:

Nucleus PLUS 是为实时嵌入式应用而设计的一个抢先式多任务操作系统内核,其95%代码是用ANSIC写成的,因此非常便于移植并能够支持大多数类型的处理器。从实现角度来看,Nucleus PLUS 是一组C函数库,应用程序代码与核心函数库连接在一起,生成一个目标代码,下载到目标板的RAM中或直接烧录到目标板的ROM中执行。在典型的目标环境中,Nucleus PLUS 核心代码区一般不超过20K字节大小。

Nucleus PLUS 采用了软件组件的方法。每个组件具有单一而明确的目的,通常由几个C及汇编语言模块构成,提供清晰的外部接口,对组件的引用就是通过这些接口完成的。除了少数一些特殊情况外,不允许从外部对组件内的全局进行访问。由于采用了软件组件的方法,Nucleus PLUS 各个组件非常易于替换和复用。

Nucleus PLUS 的组件包括任务控制、内存管理、任务间通信、任务的同步与互斥、中断管理、定时器及I/O驱动等。

Nucleus PLUS具有如下特点:

1、提供源代码

Nucleus PLUS 提供注释严格的C源代码给每一个用户。这样,用户能够深入地了解底层内核的运作方式,并可根据自己的特殊要求删减或改动系统软件,这对软件的规范化管理及系统软件的测试都有极大的帮助。另外,由于提供了 RTOS 的源代码,用户不但可以进行 RTOS 的学习和研究,而且产品在量产时也不必支付 License,可以省去大量的费用。对于军方来说,由于提供了源代码,用户完全可以控制内核而不必担心操作系统中可能会存在异常任务导致系统崩溃。

2、性价比高

Nucleus PLUS 由于采用了先进的微内核 ( Micro-kernel ) 技术,因而在优先级安排,任务调度,任务切换等各个方面都有相当大的优势。另外,对C++语言的全面支持又使得Nucleus PLUS 的 Kernel 成为名副其实的面向对象的实时操作系统内核。然而,其价格却比较合理。所以,容易被广大的研发单位接受。

3、易学易用

Nucleus PLUS 能够结合 Paradigm,SDS以及 ATI自己的多任务调试器组成功能强大的集成开发环境,配合相应的编译器和动态联结库以及各类底层驱动软件,用户可以轻松地进行RTOS 的开发和调试。另外,由于这些集成开发环境 ( IDE ) 为所有的开发工程师所熟悉,所以容易学习和使用。

4、功能模块丰富

Nucleus PLUS 除提供功能强大的内核操作系统外,还提供种类丰富的功能模块。例如用于通讯系统的局域和广域网络模块,支持图形应用的实时化 Windows 模块,支持Internet 网的 WEB 产品模块,工控机实时 BIOS 模块,图形化用户接口以及应用软件性能分析模块等。这样,用户就可以根据自己的应用来定制不同的应用模块。

Nucleus PLUS支持的CPU类型:

Nucleus PLUS 的 RTOS内核可支持如下类型的CPU:x86,68xxx,68HCxx,NEC V25, ColdFire, 29K,i960, MIPS, SPARClite, TI DSP, ARM6/7/9, StrongARM, H8/300H, SH1/2/3, PowerPC, V8xx, Tricore, Mcore, Panasonic MN10200, Tricore, Mcore等。可以说NUCLEUS+是支持CPU类型最丰富的实时多任务操作系统。

针对各种嵌入式应用,Nucleus PLUS 还提供相应的网络协议(如TCP/IP,SNMP等),以满足用户对通讯系统的开发要求。另外,可重入的文件系统、可重入的C函数库以及图形化界面等也给开发者提供了方便。

针对不同的CPU类型,Nucleus 还提供编译器、动态连接库、多任务调试器等相应的工具来配置用户的开发环境。值得提出的是ATI公司最近还发表了基于Microsoft Developers Studio的嵌入式集成开发环境-NUCLEUS EDE。从而率先将嵌入式开发工具与Microsoft的强大开发环境结合起来,提供给工程师们强大的开发手段。

三、源代码带来的优势

众所周知,Nucleus实时多任务操作系统提供给用户源代码。这除商务上给用户带来巨大益处(免交Royalty)外,还在技术方面给用户极大的方便,即无需编写和调试BSP,从而达到易学易用的目的,加速产品上市。

对RTOS有一定知识的工程师一定清楚,使用RTOS最大的障碍在于编写和调试BSP。大家知道,在调试目标系统的软件之前,必须将目标与主机连接起来并建立通讯。为此,我们可以编写一段监控程序(Monitor)。然而,如果要调试基于RTOS内核的程序,主机上的调试器(Debugger)除要与目标建立通讯外,更重要的是必须识别RTOS的任务,这样才能进行任务级调试(Task-aware Debugger)。因此,只有Monitor是不够的。如果我们选用的RTOS 不提供源代码,那么,主机上的调试器(Debugger)就只有通过用户编写的BSP来了解Kernel 在现有硬件平台上对各个任务进行调度的情况。显然,编写BSP必须对CPU目标系统的硬件以及应用软件等有全面而深入的了解。一般说来,对于一个有一定硬件开发经验的工程师来说,编写一个新的BSP要花的平均时间为两个月左右。这对于一个新手来说可是比较困难的。对于编写BSP的工程师来说,另外一个更大的挑战就是如何调试BSP,即如何验证所编写的BSP是否正确。通常刚刚焊接安装好的PCB板中,硬件或软件的故障(Bugs)是比较多的。甚至更常见的是CPU部分都没有运作正常。有时时序错误和总线错误都还存在。在您把写好的BSP烧入EPROM(或FLASH)中试图将目标与主机建立联系时,您几乎100%地会发现根本无法通讯,眼前一团漆黑,不知是软件有错误还是硬件不运转。BSP在正常运行吗?不得而知。在焦急和摸索中您可能发现几个月已悄然而过。

对于早期的实时操作系统来说,BSP是必由之路。然而,新一代的RTOS-Nucleus PLUS则避免了BSP带来的痛苦过程,因为Nucleus的调试是基于全新的动态连接库(DLL)。

用户只须通过监控程序(Monitor)或者BDM调试口(或者JTAG调试口)建立目标系统(Target)与主机(Host)之间的通讯,并给主机上的Debugger初始化特性中加入Nucleus的动态连接库(DLLs),这时,调试器就能够自动地去识别运行在目标系统中的Nucleus内核和各个应用任务,从而完成任务级调试。上述的动态连接库(DLLs)是由RTOS厂商和Debugger 厂商合作完成的,用户无须自行编写。因此,Nucleus的用户只需要将精力放在基于Nucleus 的编程工作中。对于一个新手,往往经过一天到两天的学习和培训,就可以投入到应用程序编制工作中去,无需花大量的时间去研究CPU,特定的硬件等。

另外,由于有了源程序,用户在调试程序时可以清楚地通过STEP INTO命令,追踪到RTOS

的内层中去,观看和学习Kernel对任务的管理和调度机制。对于有志研究RTOS深层技术的工程师来说极为方便。

对于Motorola 68K和PowerPC,用户可以利用GreenHill公司的Mutil调试器或TRACE-ICD 来完成Nucleus PLUS的调试;对于ARM和StrongARM,用户可以利用ARM公司的SDT251调试器或TRACE-ICD来完成Nucleus PLUS的调试;对于Intel x86实模式,用户可以利用Paradigm公司的调试器及其DLL来进行任务级调试;对于Intel x86保护模式则可以利用SSI公司Softprobe调试器和SSI DLL来调试;对于i960,SH3/4,ARM6/7,MIPS等芯片,则可以使用ATI公司自己的UDB调试器来进行任务的调试。

结论:

动态连接库(DLL)是在RTOS工具中新出现的应用趋势,通过这种方式,用户可以免去BSP 带来的麻烦,灵活方便地进行开发和调试,大大加速开发进度。

Nucleus实时操作系统提供源代码,支持丰富的CPU种类,配合各类DLL动态连接库,为使用和研究RTOS技术的工程带来极大的利益。

四、 Nucleus的应用领域和国内外用户

■Nucleus主要应用领域在:网络、路由、桥接、Hubs、数据通讯、顶置盒、数字摄像机、ISDN、调制器、数字绘图仪、GSM、蜂窝电话、PDA、打印机、GPS、无线通讯、汽车、医疗仪器、RAID、适配卡、智能卡、安全保密、工业控制、扫描仪、煤气分析仪、游戏机、多媒体、手持产品、消费产品、局域网、广域网、导航设备、卫星通信、自动提款机、视频产品、条码机、过程控制等等

■Nucleus部分典型的用户名单:

AT&T/Lucemt, Blaupunkt, Compaq Computer, Canon, Chrysler Technologies, Dassault SA, DOD, Draper Labs, Eastman Kodak, Ford Motor Company, General Motors, General Electric, GE Medical, Goddard Space Flight Systems, Fujitsu, Harris Digital Phone, Hewlett Packard, IBM, IGT Interface Systems, Kenwood Corporation, Lucent ,Mannesmann Tally Corp, M.I.T., Motorola, NASA, NEC, Network Peripherals, Nippon

Denso, MSA Baseline, Orbitel Mobile Comm, Psi Printer GmbH, Philips Semiconductor, Rockwell International, Sagem SA, Samsung Electronics, Siemens, Sony Corp, Storage Technology, Texas Instruments, Takasago Corp, Toyota, Video Lottery, Video Guide, VLSI, Westinghouse, Xircom, Zitel

■国内部分用户:

航天部204所,邮电部数据所,北京卡斯特,航空部614所,中科院沈阳自动化所,北京千网数据公司,北京凌云公司,清华大学,长沙国防科技大学,复旦大学,华北电力大学,郑州信息工程学院,烟台东方电子集团,深圳桑达,上海博达,深圳迈瑞,深圳天地通讯,铁道部大连内燃机车研究所,总参机要局,南京南瑞总公司,航天第二设计院,西安仪表,郎讯(中国)有限公司,海军计算所,恒基伟业,广州金鹏集团,杭州东方集团,福州新大陆,深圳康佳,西安东强,北京华大集成电路设计中心,广东信利集团,香港IDT,香港讯研,太原中航仪表集团,新科电子,上海中兴,上海广电,石家庄54所,总参56所,武汉邮科院,上海德理,上海贝尔,斯高柏(C-Cube)、航天部503所等等

开发信息:

开发平台 Windows NT,

支持处理器 x86, 68k, PPC, MCORE, National Semiconductor NS CR16A/16B/32A, 29K, TMS320Cxx, MIPS, H8, i960 (rx, hx, ix, kx, sx), Coldfire, MN10200, 8xx, PowerPC 403/505/601/821/823/860, SH

支持实验板 Nucleus PLUS: Intel 8086/80186, Intel 80386/80486, Motorola 680x0/683xx, 68HC11, ARM, National Semiconductor 80486, IDT 30xx/4600/4640

Chapter 2

2.1 Nucleus PLUS应用开发综述

2.1.1 开发调试环境

嵌入式实时应用程序的开发基于宿主机系统。IBM PC 和UNIX 工作站都是典型的宿主机系统。一般来说,应用程序都是运行在分离的计算机系统上被目标系统调用。然而,IBM PC 系统并不遵循上述规则,因为它既可以作为Nucleus PLUS 应用程序的主机,也可为目标机为其服务。运行在IBM PC系统上的应用程序以EXE 文件的形式存在。

针对目标系统的调试软件通常包括ICE 仿真工具和TRM(目标仿真)工具。ICE仿真工具给工程师提供了完全控制和了解目标系统硬件状况的工具,特别是在校验新硬件时尤为有用。但是,考虑到开发工具成本问题和ICE时有的使用局限性,许多项目采用TRM调试。TRM 就是一个运行在目标系统(通常为ROM)上的小型的软件组件。TRM 提供包括下载、下断点和内存入口服务。ICE 和TRM 都有宿主系统控制。这通常由串口来完成。

2.1.2使用Nucleus PLUS

Nucleus PLUS被设计成C库的形式使用。使用内部应用程序软件的服务从Nucleus PLUS 库文件取出并且组合成应用程序目标文件来生成最终的映像文件。此映像文件可以下载到目标系统或是存放到目标系统ROM 中。

使用Nucleus PLUS 的步骤被描述成下列通用的方式:

1) 如果有必要,修改低级系统初始化文件,INT.S。注:这些文件通常以汇编语言形式交货并且它的的扩展是指定的开发工具。

2) 定义Application_Initialize 函数,Nucleus PLUS 启动系统时它优先运行。注意NUCLEUS.H 文件必须包含以至于能被Nucleus PLUS 服务调用。

3) 定义应用程序任务。如果用到Nucleus PLUS 服务,文件NULCUES.H 必须被包含。

4) 编译所有应用程序软件,包括低级系统初始化文件INT.s。

5) 用Nucleus PLUS 库和必要的开发工具库连接INT.a 和所有应用程序目标文件。

6) 下载应用程序映像文件到目标系统并运行。

2.1.3 初始化

INT_Initialize 程序在Nucleus PLUS 内核中是最先运行的程序。对大多数的目标环境而言,硬件复位向量必须包含在 INT_Initialize 地址中。INT_Initialize 程序主要负责所有与目标硬件相关的初始化,通常包括设置不同种类处理器的控制寄存器、中断向量表、全局C数据元素、Nucleus PLUS的一些变量以及系统的堆栈指针。当 INT_Initialize 程序执行完成后,控制权交给到Nucleus PLUS上一层初始化程序INC_Initialize,并且控制权不会再返回给 INT_Initialize 程序。

INC_Initialize 调用每一个Nucleus PLUS 组件的初始化程序进行初始化操作,在所有Nucleus PLUS初始化完成之后,它还调用用户提供的初始化程序Application_Initialize。

Application_Initialize 程序负责定义初始化应用环境,包括初始化应用任务、邮箱、队列、管道、信号量、事件集、内存池和其他Nucleus PLUS 对象。在Application_Initialize 返回后,INC_Initialize程序开始初始化任务调度表。

2.2 实现约定

Accelerated Technology(ATI)使用软件组件方法学。组件具有简单、清晰的优点,一个软件组件往往只包括几个C程序和汇编程序。并且,每一个软件组件都有特定的目的和提供给其他组件的外部接口,使得可以通过外部接口来方便的使用组件。在组件方法中,除了很少的特例外,一般不允许在组件外访问组件的全局数据结构。由于采用了组件方法学,Nucleus PLUS 具有代码清晰、模块化、可靠、可复用和易于维护的特点。

2.2.1 组件的组成

一个软件组件通常包含头文件、一个或多个C程序文件,有的还包括汇编程序文件。包含的文件的文件名满足如下的约定:

文件含义

XX_DEF.H 定义组件的常量和数据类型

XX_ EXTR.H 定义组件的外部接口,以函数原型的形式定义

XXD.C 定义组件的静态和全局变量,除很少的特例外,一个组件的数据结构只能被本组件访问

XXI.C 定义组件的初始化函数

XXF.C 提供被组件管理的对象的信息

XXC.C 提供组件的核心函数

XXS.C 提供组件核心函数的错误处理外壳函数

XXS.C 组件的补充定义函数

XXSE.C 提供组件补充定义函数的错误处理外壳函数

2.2.2 命名规则

1、组件命名

组件名字一般限于两个字符。组件名字作为构造组件的每个文件名的首两个字符。例如:动态内存管理组件(Dynamic Memory Management Component)名字:DM,构成DM 的文件:DM_DEFS.H

DM_EXTR.H

DMC.C

DMCE.C

DMI.C

DMF.C

DMD.C

2、宏定义名字

宏名由下划线、大写字母和数字字符构成。最大支持长度为31 个字符。此外一个宏定义首

3 个字符是CC_ ,其中“CC”与定义该宏的文件名的首2 个字符相同。例如:(对于EX_DEFS .

H 文件)

#define EX_MY_CONSTANT 10

3、结构体名字

结构体名字由下划线、大写字母和数字字符构成。最大支持长度为31 个字符。此外,一个结构体名的首3 个字符是CC_ ,其中“CC”与定义该结构体的文件名的首2 个字符相同。例如:(对于 EX_DEFS.H)

struct EX_MY_STRUCT

{

int ex_member_a;

int ex_member_b;

int ex_member_c;

};

4、typedef 名字

typedef 定义新结构体名字由下划线、大写字母和数字字符构成。最大支持长度为31个字符。此外,一个由typedef 定义新结构体名字的首3 个字符是CC_ ,其中“CC”与定义由typedef 命名结构体的文件名的首2 个字符相同。例如:(对于EX_DEFS.H 文件)

typedef struct EX_MY_STRUCT

{

int ex_member_a;

int ex_member_b;

int ex_member_c;

} EX_MY_TYPEDEF;

5、结构体成员名字

结构体成员名字由下划线、大写字母和数字字符构成,最大支持长度为31 个字符。此外,一个结构体成员名字的首3 个字符是CC_ ,其中“cc”与包含该结构体定义的文件“cc_defs”的首2 个字符相同。例如:(对于EX_DEFS.H 文件)

struct EX_MY_STRUCT

{

int ex_member_a;

int ex_member_b;

int ex_member_c;

};

6、全局变量名字

Nucleus PLUS 全局变量名由下划线以及紧跟着每个下划线的一个大写字母、小写字母、数字字符组成,最大支持长度为31 个字符。此外,一个全局变量名字的首3 个字符是CCC ,其中“CCC”与包含实际变量描述的文件“ccc.C”的首3 个字符相同。例如:(对于EXD.C 文件)

int EXD_Global_Integer;

7、局部变量命名

局部变量名由小写字母、有可能是下划线或数字字符组成,最大支持长度为31 个字符。局部变量名字没有要求包含定义它们的文件的首3 个字符。例如:(对于EXD.C 文件)

/* Assume the following declaration is inside a function. */

int I;

8、函数名字

Nucleus函数名字由下划线以及紧跟在下划线的一个大写字母、小写字母、数字组成,最大支持长度为31个字符。此外,一个函数名的首3个字符与包含该函数定义的文件名相同。例如:(对于EXD.C文件)

void EXD_My_Function(unsigned int i)

{

}

2.3 软件概述

2.3.1 基本用法

Nucleus PLUS 通常是以C语言库的形式实现的。实时Nucleus PLUS应用程序和Nucleus PLUS 库链接在一起生成的目标文件可以被下载到目标板或者固化到ROM中。

NUCLEUS.LIB是典型的Nucleus PLUS库文件名。它由批处理文件PLUS.BAT运行产生,而且PLUS.BAT文件的内容依赖于所使用的开发工具。

1、运行模式

在处理器结构中有管理模式和用户模式之分。由于Nucleus PLUS应用任务需要直接地调用需要调用特权指令的系统服务程序,所以Nucleus PLUS应用任务通常是在管理模式下运行。这样的实现方法减少了系统服务调用的开销而且便于实现。

2、应用初始化

用户有责任提供自己的初始化程序Application_Initialize,该程序应创建任务、队列和其他系统初始化时需要的系统对象。如果应用程序不在系统运行时动态创建和删除系统对象,那么所有的系统对象都应该在Application_Initialize中被创建。用户的Application_Initialize程序一旦返回,多任务立即开始执行。在一些目标环境中,底层的系统初始化文件INT.S、INT.ASM或INT.SRC文件可能需要修改。这些文件初始化系统的定时中断、可用存储空间以及处理器或目标板的其他实体。

3、头文件

所有的用户代码在调用Nucleus PLUS服务或数据类型时,都必须包含NUCLEUS.H文件。该文件包含数据类型定义、常量定义和所有Nucleus PLUS服务函数的原型。不同的Nucleus PLUS移植系统,该文件是不同的。

2.3.2 数据类型

Nucleus PLUS在NUCLEUS.H文件中定义了标准的数据类型。这些数据类型保证了Nucleus PLUS能以相同的风格在不同的目标环境中运行。

Nucleus PLUS定义的数据类型如下:

数据类型含义

UNSIGNED 32位无符号整数,常被定义为无符号长整型(unsigned long)的C数据类型SIGNED 32位有符号整数,常被定义为有符号长整型(long)的C数据类型

IPTION 容易操作的最小的数据类型,常被定义为无符号字符型(unsigned char)的C数据类型

DATA_ELEMENT 和OPTION数据类型相同

UNSIGNED CHAR 8位无符号字符

CHAR 8位有符号字符

STATUS 等价于目标C编译器的有符号整数(int)

INT 整数数据类型,具有word大小

VOID 等价于目标C编译器的void数据类型(void)

UNSIGNED_PTR 指向UNSIGNED数据类型的指针

BYTE_PTR 指向UNSIGNED_CHAR数据类型的指针

2.3.3 系统服务映射关系

1、错误检查

Nucleus PLUS的主包含文件NUCLEUS.H包含了和《Nucleus PLUS Reference Manual》里面定义的函数相匹配的函数的原型。然而,这些NU_*函数并不真是存在。对于绝大多数Nucleus PLUS函数,都有一个真正操作的函数,也有一个在调用真正执行操作函数前对用户调用进行错误检查的外壳函数。错误检查条件定义宏NU_ERROR_CHECKING定义和不定义时的具体的系统服务映射关系请参见附录(表格形式,Nucleus PLUS Internals文档中的表格)。

2、条件编译

Nucleus PLUS源码有一定的条件编译选项。有一些是在应用程序编译时用到,而绝大多数时在Nucleus PLUS系统库编译时可用。

Nucleus系统库条件编译标识往往是在一个编译批处理文件中使用。这些条件编译选项控制各种Nucleus PLUS系统库特征。

这些条件编译选项如下:

条件编译选项含义

NU_ENABLE_HISTORY 运行在特定文件中保存历史记录。注意:仅形如**C.C的文件受该选项影响

NU_ENABLE_STACK_CHECK 运行在特定文件中的每个函数开始检查堆栈。注意:仅形如**C.C

的文件受该选项影响

NU_ERROR_STRING 允许在一个致命系统错误发生时生成一个ASCII错误字符串。该标记适用ERD.C、ERI.C和ERC.C三个文件

NU_NO_ERROR_CHECKIN

Chapter3 Nucleus Plus在嵌入式系统应用

适合于航空/航天、军队、国防等重要应用的可靠的嵌入式操作系统Nucleus Plus. Nucleus Plus是美国源代码操作系统商ATI公司(现为Mentor Graphics ESD)推出的新一代嵌入式操作系统,属于抢先式实时多任务操作系统内核, 95%的代码使用ANSI C编写,非常便于移植于各种处理器家族。从实现的角度讲,不同于传统嵌入式开发,Nucleus Plus 是以函数库的形式链接到目标应用程序中,形成可执行目标代码,下载到目标板上或烧到ROM/FLASH ROM 中去执行。Nucleus Plus内核在典型的CISC体系结构上占据大约20k空间,而在典型的RISC体系结构上占据空间为40k左右,其内核数据结构占据1.5k字节的空间。Nucleus Plus以其实时响应、抢先、多任务以及源代码开放特性获得在通讯、国防、工业控制、航空/航天、铁路、网络、POS、自动化控制、智能家电等领域的广泛应用。Nucleus Plus内核技术

ATI公司使用一种叫做软件组件的方法。所谓软件组件,就是具有明确目的或用途的由1个或数个C语言/汇编源文件的一段非独立执行应用程序,且每个组件都提供一个定义好的外部接口,必须通过外部接口来使用组件。访问组件内的全局数据结构是被禁止的。使用了组件方法,软件组件既易于更新也易于重用。Nucleus Plus软件组件通常由定义数据类型、常量以及外部接口的INCLUDE 头文件和一个或多个C语言/汇编源文件组成。Nucleus Plus 提供如下组件:任务控制管理、内存管理、定时器管理、中断、系统诊断、I/O驱动管理等共16个组件如下,

Nucleus Plus Kernel: Common Service Component(CS)

Initialization Component(IN)

Tread Control Component(TC)

Timer Component(TI)

Mailbox Component(MB)

Pipe Component(PI)

Semaphore Component(SM)

Event Flag Component(EV)

Partition Component(PM)

Queue Component(QM)

Dynamic Memory Component(DM)

I/O Component(I/O)

History Component(HI)

Error Component(ER)

License Component (LI)

Release Component(RL)

其中:

* IN:负责初始化Nucleus Plus 系统

* TC:负责管理Nucleus Plus的抢占式实时任务和HISR的运行

* CS:负责提供具有链接列表其它的设备Nucleus Plus 组件

* TM:负责管理所有的Nucleus Plus 定时器设备。Nucleus Plus 的基本定时单元为一个Tick,它相当于一次硬件定时器中断

* MB:负责管理所有的Nucleus Plus 信箱设备

* QM:负责管理所有的Nucleus Plus 队列设备

* PI :负责管理所有的Nucleus Plus 管道设备

* SM:负责管理所有的Nucleus Plus 信号量设备

* EV:负责管理所有的Nucleus Plus 事件组设备

* PM:负责管理所有的Nucleus Plus 分区内存

* DM:负责管理所有的Nucleus Plus 动态内存

* I/O:负责管理所有的Nucleus Plus 输入/输出

* HI:负责Nucleus Plus的历史设备管理

* ER:负责管理所有的Nucleus Plus 系统错误

* LI:负责Nucleus Plus的许可证管理

* RL:负责Nucleus Plus 的版本管理

Nucleus Plus 其它功能模块

Nucleus Plus 除了其功能强大的内核外,还提供了面向INTERNET、TCP/IP、WEB浏览器、图形以及文件系统的软件包,参阅图1。

图1: Nucleus Plus功能模块图

Nucleus Plus 开发

1, Nucleus Plus 定制

Nucleus Plus 也能根据目标板的需要进行裁剪和定制,生成适合目标系统的操作系统,尽量少占系统内存。OS定制完成后,将其链接到目标应用程序,成为目标应用程序的一部分。在典型的CISC体系结构的目标板上,它占用约20K 左右的空间,而在RISC体系结构的目标板上占用约40K左右的空间。一般地,Nucleus Plus 足以满足绝大多数的嵌入式应用。ATI公司提供了一个名为BUILD_LI.BAT或PLUS.BAT的批处理文件,用户可以删剪其中的模块,更改相关的选项或开关,执行该文件生成与目标相关的操作系统,也就是根据系统需要生成定制的操作系统。需要注意的是,该批处理文件的内容与开发工具有关。

2,开发方案

Nucleus Plus可以结合Paradigm、SDS以及ATI的多任务调试器组成功能强大的集成开发环境,配合相应的编译器(Borland c/c++ 编译器、Turbo c/c++ 编译器或者Microsoft c/c++编译器)和动态链接库以及各类底层驱动软件就可以满足嵌入式应用的开发。

3,开发流程

用Nucleus Plus 开发嵌入式应用程序,一般遵循如下步骤:

* 如果有必要,应对低级系统初始化文件.INT进行修改,使之符合目标板的需要。如中断向量、I/O地址、时钟频率等。

* 定义Application _Initialize()函数。该函数在启动系统之前先执行。注意的是要把NUCLEUS.H头文件包括在目标应用程序中,以便利用Nucleus Plus 的服务。

* 定义应用程序的任务。如果调用Nucleus Plus 的服务,要把NUCLEUS.H包含进去。

* 编译/汇编所有的应用程序软件,并且包含系统低级初始化文件.INT。

* 链接.INT和所有的应用程序目标文件、Nucleus Plus库文件以及相关的开发工具库。

* 把生成的最终目标代码下载或烧到目标板上执行。

4, Nucleus Plus 初始化

Nucleus Plus 分三个层次的初始化,即:系统低级初始化Int-Initialize()、系统高级初始化Inc-Initialize()和应用程序初始化Application_Initialize(),初始化之后便进入Nucleus Plus 的任务调度循环。各个初始化函数任务见表1。

Int_Initialize()

Inc_Initialize()

Application_Initialize()

* 设置必要的处理器/系统控制寄存器

* 初始化中断向量表

* 设置系统堆栈寄存器

* 计算定时器HISR堆栈和优先级

* 计算系统第一个可用内存

* 将控制交给系统高级初始化例程

* 初始化Nucleus Plus 组件

* 将控制交给应用程序初始化例程

* 任务调度

* 执行用户定义的初始化,如创建内存池,创建任务、创建信号量、创建队列等

表1:Nucleus Plus 初始化表

5, Nucleus MNT

Nucleus MNT是为软件开发者设计的,在WIN95/NT下构筑Nucleus Plus嵌入式应用的原型(Prototyping)环境。它通过两个库来实现,即针对目标环境的库和针对Win95/NT开发环境的库。开发时,应用程序代码可以不变,仅仅替换掉MNT库,使用交叉开发工具包重构目

标环境下的可执行目标代码,请看图2。

PROTOTYPING TARGET

图2:Nucleus MNT

6,开发注意事项

嵌入式开发在内存需求、任务管理等方面存在着特殊性,因此,开发中对以下方面要额外加以注意,

* 任务饥荒

任务优先级的分配要合理,否则会导致系统中的一些任务一直不断地在运行而另一些任务永远得不到运行,引起饥荒。

* 死锁

系统资源的分配要合理,否则会引起两个或多个任务为竞争某一系统资源而处于无限挂起现象。

* 内存

* 内存泄露

内存分配过程中要尽量避免碎片并且要注意及时回收。

* 内存节约

* 默认情况下,Nucleus Plus,在高级初始化函数Inc_Initialize()中。调用其它函数初始化它所提供的所有特征的数据结构中,有些特征用户目标应用程序可能用不到,为此,要去掉不必要的函数调用。

* 改变Nucleus.H中NU_MAX_LISRS的大小,它定义的是目标处理器的最大中断向量数。

* 改变TC_DEFS.H中TC_PRIORITIES的大小。它定义了任务的优先级数。Nucleus Plus 能支持256个优先级。

* HISR栈共享。

* TCD.C中禁止查询表TCD_LOWEST_SET_BIT的RAM拷贝。

* 使用一个更小的INT选项。

结束语

由于Nucleus Plus 的模块化、可靠、重用、开放、易用以及安全等特性使得它成为嵌入式应用开发的理想平台,尤其是关系到国计民生的领域,如航空/航天、军队、国防等方面。

Chapter4 嵌入式操作系统Nucleus触摸屏驱动的开发

本文详细分析在Nucleus下触摸屏驱动程序的开发,针对触摸屏控制芯片ADS7846,分析其配置、工作原理,以及如何加载到操作系统中。这些方法为手机,PDA触摸屏驱动的开发有一定的借鉴意义.

Nucleus 是一款优秀的嵌入式实时操作系统(RTOS),具有抢占式和时间片轮转任务调度方式,主要用在时间苛刻的嵌入式应用当中。大约95%的Nucleus用ANSI C 写成,作为一个库加载到应用代码当中。目前手机行业有很多使用Nucleus。

1.触摸屏控制电路的硬件结构

触摸屏控制电路主要有一下四部分组成:进行数据处理、控制功能的MCU,一个四线电阻式触摸屏和控制芯片ADS7846, 以及显示触摸点坐标的显示部分。

在这里主要对触摸屏的硬件电路和驱动设计做一个较详细的介绍

ADS7846是美国TI公司推出的一款四线制电阻式触摸屏控制器,通过机械式触摸,可以迅速得到触摸点位置信号。它是一种典型的带有连续逼近型寄存器的A/D转换器,内部自带2.5V参考电压,一个和微处理器相连的SPI接口,同时具有测量温度、触摸压力和电池电压的功能,有可编程的8位或12位的分辨率。在2.7V电压和125kHz的转换速率下,功耗仅为750uW,在 power down 模式下仅为0.5uW。由于这些优良的性能,在移动设备中有大量的应用。下表为控制器的主要引脚

引脚名功能描述

+Vcc 逻辑正电源

X+,Y+ 接触摸屏正电极

X-,Y- 接触摸屏负电极

GND 接地

Vbat 电源监控输入端

PENIRQ 中断输出端

Vref 参考电压输入输出端

DOUT 串行数据输出端

DCLK 外部时钟输入端

DIN 串行数据输入端

BUSY 忙信号输出端(低电平有效)

CS 片选

工作原理:图2是触摸屏控制器和MCU的连接电路图。当ADS7846检测到触摸屏被按下时,它就会产生一个中断信号(PENIRQ为低电平)给MCU,MCU选中ADS7846控制器(CS为低),然后通过串行口DIN向ADS7846发送8位控制字,此后DOUT在DCLK的下降沿得到12位的输出。图3为ADS7846在每次转换为24个时钟周期下的时序图。

图2

2.Nucleus下ADS7846的驱动设计

驱动设计的目的是将触摸坐标即时的转换为显示坐标,直接在LCD屏上显示出来,然后经过输入识别软件的处理(例如汉王的识别软件),识别出输入的字符,汉字等。

2.1 当触摸屏按下时,会产生一个中断,应当为ADS7846配置一个中断。在Nucleus下,中断分两种,Low level 中断(Lisr)和High level 中断(Hisr),一般的中断服务程序在Hisr当中处理。一个较为复杂的,多任务嵌入式系统当中,中断服务程序(优先级比普通任务的优先级高)不能占用太多的时间,否则可能会导致其他任务不能及时得到响应。例如在触摸屏中断服务程序的处理,在较坏的情况下,触摸屏可能一直被按下去,其Hisr就会占用很多的资源,导致别的任务(例如一个手机应用当中,可能导致接受电话的任务不能处理,而这是不能让人接受的,不能想象当你写短信时不能接受电话的情况,)所以当中断服务程序需要占用CPU较多的处理时间时,一般要在另外激活一个任务,由任务调度机制来处理和系统中其他任务的关系,它的流程图如图四所示,实践证明,这种处理方法是较好的处理方法。

图4

2.2 这里不打算对怎么创建一个Lisr,Hisr和激活一个任务做太多的介绍,详细可以看Nucleus的文档。重点介绍ADS7846的驱动程序的处理和如何将所得数据在LCD上正确显示出来。

2.2.1 ADS7846处理程序的流程图如图五所示

图5

ADS7846在计算触摸坐标时有两种方式,single ended模式和difference 模式。Single ended模式利用ADS7846内部参考电压或者外部参考电压,得出的结果是一个电压的AD结果。 Difference 不需要内部或者外部的参考电压,这种模式得出的结果是触摸点在触摸屏位置上的百分比。这种模式可以消除参考电压波动对换算结果的影响。 2.2.2 ADS7846换算结果在LCD屏幕上的映射

假设LCD是个160 x 128 像素大小的屏幕,如图六所示,假设A点的坐标为(0,0),那么可知道B,C,D是(128,0),(0,160),(128,160)。通过ADS7846得出A,B,C,D的转换结果分别是(Xa,Ya),(Xb,Yb),(Xc,Yc),(Xd,Yd),再得出屏幕中任意点X转换结果(Xx,Yx),那么X的坐标(x,y)可以通过下式算出来:

X=Xb -Xa=Xd -Xc

Y=Yc -Ya=Yd -Yb

x = (Xx-Xa) * 128 /X

y = (Yx -Ya) * 160/Y

得出触摸屏的一系列坐标以后,作为手写识别软件的输入,就可得出输入的汉字,字符等。

3. 结论

本文简单介绍了Nucleus下触摸屏驱动的开发,由于当前触摸屏的应用越来越广泛,嵌入式系统的应用范围也越来越广,将对其他嵌入式系统下驱动的开发有一定的借鉴意义。

操作系统虚拟机小论文

课程设计 课程设计名称:计算机操作系统 专业班级:计算机科学与技术 学生姓名: 学号: 指导教师: 课程设计时间: 操作系统专业课程设计任务书

说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页 目录 一、设计目的 为了掌握Linux环境下常用编译工具如gcc/g++/nasm及开源虚拟机bochs 的下载、安装、使用,掌握x86架构下分页式存储管理系统的基本原理,设计一个请求分页式虚拟存储系统。掌握Linux系统下程序的编写及运行等方面展开实验。 二、设计要求 2.1要求熟练掌握sudo apt-get install的用法。 2.2要求能够掌握分页存储管理系统的基本原理。 2.3要求学会在Linux系统下编写程序、执行程序。 三、设计容 3.1运行环境 3.1.1虚拟机系统下 3.1.2使用Ubuntu下提供的apt-get软件包安装工具安装vim、 g++ 、nasm 、bochs等 3.2 2.详细设计

1)回顾虚拟页式存储系统:作业分页,存分块,只有当进程要使请认真阅读readme.txt文件,弄清楚各个文件的作用 2)用其虚拟存时,其对应的数据才装入物理存。 3)完成frame_pool.H 、frame_pool.C 、page_table.C三个文件,其中 page_table.H已经提供,我们需要添加page_table.C,自己设计并实现这些函数。 4)在frame_pool.H定义所需要的数据结构,在frame_pool.C完成这些函数。 添加代码如下所示: class FramePool {private: unsigned long base_frame_no; unsigned long nframes; unsigned long info_frame_no; unsigned char* free_frames; public:static const unsigned char USED -1;static const unsigned char UNUSED -0; static const unsigned int FRAME_SIZE -4096; public:FramePool(unsigned long _base_frame_no,unsigned long _nframes, unsigned long _info_frame_no); 5)建立Frame_pool.C文件 系统中使用位示图bitmap标识页面是否使用,start_frame表示第一个页面的起始地址(如系统存池从2M开始),pool_size表示在用户池中页框的总数(如系统存池的页框从2M~4M,因此共有(4M-2M)/4KB=512个页框)。初始化用户池中位示图的容 Frame_pool::frame_pool()初始化bitmap记录系统中所有物理块是否可用,如果可用设置为0,否则为1。 Frame_pool::get_frame()通过该方法去查询bitmap,查找可用物理块号。

上公司会计信息披露质量研究[- +文献综述+开题报告]本科毕业论文

(2011届) 毕业论文(设计) 题目:上市公司会计信息披露质量研究 姓名: 专业:会计学 班级: 学号: 指导教师: 导师职称:

我声明,所呈交的论文(设计)是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文(设计)中不包含其他已经发表或撰写过的研究成果,也不包含为获得 或其他教育机构的学位或证书而使用过的材料。我承诺,论文(设计)中的所有内容均真实、可信。 论文(设计)作者签名: 签名日期:年月日

学校有权保留送交论文(设计)的原件,允许论文(设计)被查阅和借阅,学校可以公布论文(设计)的全部或部分内容,可以影印、缩印或其他复制手段保存论文(设计),学校必须严格按照授权对论文(设计)进行处理不得超越授权对论文(设计)进行任意处置。 论文(设计)作者签名: 签名日期:年月日

摘要:会计信息披露质量研究是会计研究中的一个重要领域。会计信息是将企业经济活动会计信息系统化的产品。我国对会计信息披露质量特征的基本要求包括:客观性、相关性、明晰性、可比性、实质重于形式、重要性、谨慎性、及时性。 随着资本市场规范化程度的日益增高,我国上市公司的会计信息披露质量也在逐步提高,但仍然存在着一些问题,影响资本市场的秩序,因此,解决会计信息披露质量存在的问题,寻找提高上市公司会计信息质量的对策,仍是当前需要认真探讨的问题。 本文在分析我国上市公司会计信息披露质量现状的基础上,指出我国上市公司会计信息披露存在虚假性、不充分性以及不及时性等问题,识别可能影响我国上市会计信息披露质量的因素,并提出了提高会计从业人员素质,加强监督管理机制以及完善上市公司内部治理等建议。 关键词:上司公司;会计信息;披露质量;影响因素;研究

Linux基础综述论文

Linux的发行版本以及与Windows的比较 摘要 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间),而在当代,Linux已经发展成为继Windows之后的又一大操作系统霸主。所以笔者将在本文中对Linux历史上的一些较好的Linux系统分类别进行讨论,并从整体层面上对Linux优于Windows之处进行简要的描述。 关键字:Linux;发行版本;与Windows的比较 Linux的一些发行版本 最好的桌面分布 以Canonical公司和 Ubuntu社区花费了很多时间及资源,使得该版本有着好用的工具,特别是在安装Ubuntu系统以及安装软件方面上。并且因为它面对的大多是Linux的菜鸟,所以不管是正版还是非正版的文档都很稳定且易于搜索。此外,Ubuntu(乌班图)是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的"Ubuntu"一词,意思是"人性"、"我的存在是因为大家的存在",是非洲传统的一种价值观,类似华人社会的"仁爱"思想。Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃了Gnome桌面环境,改为Unity,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。2013年1月3日,Ubuntu正式发布面向智能手机的移动操作系统。Ubuntu基于Linux的免费开源桌面PC操作系统,十分契合英特尔的超极本定位,支持x86、64位和PPC架构。 最好的Linux企业服务 在企业Server上,有两个最主要的版本,RHEL和SLES。然后,当我们把所有因素考虑进去后,RHEL再次获得桂冠。Redhat略胜Novell公司的服务,因为RHEL用户获得的版本比较成熟,同时Redhat公司的服务体系在企业界是绝无仅有的。Red Hat是全球最大的开源技术厂家,其产品Red Hat Linux也是全世界应用最广泛的Linux。2010年11月10日发布了RHEL 6的正式版(红帽官方已经不用RHEL这个简称了,其全称叫做Red Hat Enterprise Linux)。,红帽产品和技术部总裁Paul Cormier曾在发布会现场说:"红帽RHEL 6是10年研发和合作的结晶"。Cormier将这个操作系统看作是云部署的基础单元,以及Windows Server的潜在替代品。总的来说,RHEL 6包含了超过2000个包,相对之前的版本而言增加了85%的代码量,一共增添了1800个新特性,解决了

操作系统原理知识点总结

第一章绪论 1、操作系统是一组控制和管理计算机硬件和软 件资源、合理的对各类作业进行调度以方便用户的程序集合 探2、操作系统的目标:方便性、有效性、可扩 展性、开发性 探3、操作系统的作用:作为计算机硬件和用户 间的接口、作为计算机系统资源的管理者、作为 扩充机器 4、单批道处理系统:作业处理成批进行,内存中始终保持一道作业(自动性、顺序性、单道性) 5、多批道处理系统:系统中同时驻留多个作业,优点:提高CPU利用率、提高I/O设备和内存利用率、提高系统吞吐量(多道性、无序性、调度性) 6、分时技术特性:多路性、交互性、独立性、 及时性,目标:对用户响应的及时性 7、实时系统:及时响应外部请求,在规定时间 内完成事件处理,任务类型:周期性、非周期性或硬实时任务、软实时任务 ※&操作系统基本特性:并发、共享、虚拟、 异步性 并行是指两或多个事件在同一时刻发生。 并发是两或多个事件在同一时间间隔内发生。

互斥共享:一段时间只允许一个进程访问该资源 同时访问:微观上仍是互斥的 虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。 异步是指运行进度不可预知。 共享性和并发性是操作系统两个最基本的特征探9、操作系统主要功能:处理机管理、存储器管理、设备管理、文件管理、用户管理 第二章进程的描述和控制 探1程序顺序执行特征:顺序性、封闭性、可再现性探2、程序并发执行特征:间断性、失去封闭性、不可再现性 3、前趋图:有向无循环图,用于描述进程之间执行的前后关系 表示方式: (1)p1--->p2 (2) --->={(p1,p2)| pl 必须在p2 开始前完成} 节点表示:一条语句,一个程序段,一进程。 (详见书P32)

操作系统论文2

一引言 1.1实验的性质、目的和任务 1.1.1性质 操作系统是计算机专业的核心系统,此课程设计用于模拟操作系统的实现。操作系统对计算机系统资源实施管理,是所有其他软件与计算机硬件的唯一接口,所有用户在使用计算机时都要得到操作系统提供的服务。要掌握操作系统的基本概念、基本原理、设计方法和实现技术,具有初步分析实际操作系统的能力,为其今后在相关领域开展工作打下坚实的基础。 1.1.2任务 模拟采用多道程序设计方法的单用户操作系统,该操作系统包括四部分内容:文件管理和用户接口、存储管理、设备管理、进程管理。 1.1.3目的 通过模拟操作系统原理的实现,加深对操作系统工作原理和操作系统实现方法的理解;通过模拟操作系统原理的实现练习编程,进一步了解操作系统的实现方法;练习合作完成系统的团队精神和提高程序设计能力。 1.2实验要求和实验意义 实现对操作系统的模拟,具体是在采用文件分配表的基础上实现单用户的磁盘文件管理部分和用户接口;加深对操作系统的工作原理和实现方式的理解,提高动手实践的能力。 1.3论文结构安排 本论文主要内容:引言、系统分析与设计、系统实现、结束语、参考文献。

二系统分析与设计 2.1系统要求 模拟采用多道程序设计方法的单用户操作系统,该操作系统包括四部分内容:文件管理和用户接口、存储管理、设备管理、进程管理。 2.2主要模块 2.2.1文件模块 2.2.1.1文件模块的定义 文件是在逻辑上具有完整意义的信息组合,它有一个名字做标识符。一个文件必须要有一个文件名,用户利用文件名来访问文件。文件名通常由一串字符构成,名字的长度因系统而异。文件系统具有5大功能:完成文件存储空间的管理,实现文件名到物理地址的映射,实现文件和目录的操作管理,提供文件共享能力和安全可靠措施,文件系统向用户提供了有关文件和目录操作的接口。 2.2.1.2文件的逻辑结构 文件的逻辑结构采用流式结构,流式文件指文件内的数据不再组成记录,只是一串的信息组合,字符是构成文件的基本单位,这种文件常常按长度来读取所需信息。 文件的内容均采用文本文件,系统中有两种文件:一种是存放任意字符的文件;一种是可执行文件:可执行文件的内容就是系统内进程的程序体。 2.2.1.3文件的物理结构 实验中采用显示链接的物理文件结构,把磁盘中每一块的指针部分提出来,组织在一起,形成文件分配表(FAT表)。一个磁盘仅设置一张文件分配表,磁盘有多少块,文件分配表就有多少项,若文件的一个磁盘块号为i,则这个文件的下一个磁盘的块号应该记录在文件分配表的第i项。 2.2.1.4磁盘模拟 用一个文件C模拟磁盘,磁盘的每个盘块64字节,模拟磁盘共有128块。第0,1块存放文件分配表,第2块存放根目录,其余存放子目录和文件。 2.2.1.5目录结构 目录结构采用树形目录结构。 目录项内容(8个字节) 目录名,文件名:2个字节; 扩展名:2个字节(目录没有扩展名)。

操作系统综述论文

徐铭彬 1007505151 医智10(1)班 操作系统综述论文 针对Windows、Unix和Linux这三种操作系统的形成与发展历程,以及它们的各种主要版本的OS的功能、性能、特点,应用场合以及所采用的主要技术等等方面的内容,比较它们的共同点与不同点,来谈谈及自己的理解、体会或者疑惑和讨论你心目中未来的操作系统应该是怎么样的。 UNIX是一个功能强大、性能全面的多用户、多任务操作系统,可以应用从巨型计算机到普通PC机等多种不同的平台上,是应用面最广、影响力最大的操作系统。稳定性在目前使用的操作系统中,UNIX是比较稳定的。提供了非常强大的安全保护机制,防止系统及其数据未经许可而被非法访问。早期UNIX的主要特色是结构简炼、便于移植和功能相对强大,经过30来年的发展和进化,形成了一些极为重要并稳定的特色,其中主要包括:1、技术成熟,可靠性高2.、极强的可伸缩性3.、网络功能强4.、强大的数据库支持能力5.、开发功能强6、开放性好7、标准化。8、移植性好。Unix系统功能主要表现在一下几个方面:1、网络和系统管理。2、高安全性。3、通信。4、可连接性。5、Internet。6、数据安全性。 linux:源码开放,有GNU项目支持,是一套免费的操作系统。方便修改源码,对底层的开发。开发工具比较多,精简短小,功能强大。网络性能比较好。移植性比较好。Linux 最早诞生于微机环境,一系列版本都充分利用了X86CPU 的任务切换能力,使X86CPU的效能发挥得淋淋尽致,而这一点连Windows都没有做到。此外,它可以很好地运行在由各种主流RISC芯片搭建的机器上。Linux是一种外观和性能与UNIX相同或更好的操作系统,UNIX上的绝大多数命令都可以在Linux里找到并有所加强。但,Linux不源于任何版本的UNIX 的源代码,并不是UNIX,而是一个类似于UNIX的产品。是一套遵从POSIX 规范的一个操作系统,它能够在普通PC计算机上实现全部的UNIX特性,具有多任务、多用户的能力。它具有UNIX的全部功能,任何使用UNIX操作系统或想要学习UNIX操作系统的人都可以从Linux中获益。作为自由软件有两个特点:一是它免费提供源码,二是爱好者可以按照自己的需要自由修改、复制和发布程序的源码,并公布在Internet上。这就吸引了世界各地的操作系统高手为Linux编写各种各样的驱动程序和应用软件,使得Linux成为一种不仅只是一个内核,而且包括系统管理工具、完整的开发环境和开发工具、应用软件在内,用户很容易获得的操作系统。 Windows系列是完全的多任务操作系统,使用简单方便。Windows 图形界面良好,拥有良好的集成开发环境,操作简单,适合普通用户,界面友好,安全、快速、易用和人性化。它们支持同样的用户接口、网络和安全性。是专用系统,由开发操作系统的公司控制接口和设计。对程序设计和用户接口设计建立了严格的标准。Windows 的设计主要围绕五个重点——针对笔记本电脑的特有设计;基于应用服务的设计;用户的个性化;视听娱乐的优化;用户易用性

上市公司会计信息披露质量研究(毕业论文+文献综述+开题报告)

毕业论文(设计)题目:上市公司会计信息披露质量研究

摘要:会计信息披露质量研究是会计研究中的一个重要领域。会计信息是将企业经济活动会计信息系统化的产品。我国对会计信息披露质量特征的基本要求包括:客观性、相关性、明晰性、可比性、实质重于形式、重要性、谨慎性、及时性。 随着资本市场规范化程度的日益增高,我国上市公司的会计信息披露质量也在逐步提高,但仍然存在着一些问题,影响资本市场的秩序,因此,解决会计信息披露质量存在的问题,寻找提高上市公司会计信息质量的对策,仍是当前需要认真探讨的问题。 本文在分析我国上市公司会计信息披露质量现状的基础上,指出我国上市公司会计信息披露存在虚假性、不充分性以及不及时性等问题,识别可能影响我国上市会计信息披露质量的因素,并提出了提高会计从业人员素质,加强监督管理机制以及完善上市公司内部治理等建议。 关键词:上司公司;会计信息;披露质量;影响因素;研究

Abstract:The disclosure quality research of accounting information Is one of the important fields of accounting research.Accounting information is the product of systematic the accounting information of enterprise's economic activities.The basic requirements of quality characteristics of accounting information disclosure in our country including objectivity, relevance, clarty, comparability, substance over form, importance, prudence and timeliness. As capital market standardization degree is increasing day by day, the accounting information disclosure quality of China's listed companies has gradually improved. But there are still some problems affecting the capital market order,which restricts the market economy high-speed and healthy development.Therefore, solving the quality of accounting information disclosure problems,finding ways to improve the listed companies' accounting information quality , is still need to seriously discuss in the present. Based on analysis of the public company accounting information disclosure quality based on the status quo of China's listed companies, and points out that the existing accounting information disclosure, not sufficiency and falsity, identify the timeliness may affect China listed factors on the quality of the accounting information disclosure, and put forward improving accounting practitioners quality, strengthen the supervision and management mechanism and perfect the internal governance of listed companies and so on. Keywords:Listed Companies;Disclosure Quality;Accounting Information;Influ- encing Factors;Research

《操作系统原理》课程考核论文

《操作系统原理》课程考核论文 vmWare 上 运 行 VxWorks 系别:电子信息工程系 班级:11嵌入式301班 教学老师:李列文

摘要:VMWare 是被广泛应用虚拟PC系统软件,他可以提供基于Inetl CPU的虚拟PC系统环境,包括CPU、BIOS、硬盘和其他外围硬件设备,使您可以在一台PC机上同时运行两个操作系统。VMWare对外围硬件设备的模拟,屏蔽了不同设备型号的差异,在硬件环境发生改变时(硬件型号变化),对于运行于VMWare上的操作系统影响很小(无须安装新的驱动程序)。 关键词:VMWare、VxWorks、虚拟软件、驱动、安装。 引言:VxWorks是风河公司(Windriver)开发的实时操作系统之一,以其优秀的可靠性、实时性及内核的可裁减性,被广泛应用于通信、军事、航天、航空等关键行业领域。VxWorks可以适用于多种硬件体系结构,其中也包括大家日常都可以接触到的PC体系结构。 VMWare 是被广泛应用虚拟PC系统软件,他可以提供基于Inetl CPU的虚拟PC 系统环境,包括CPU、BIOS、硬盘和其他外围硬件设备,使您可以在一台PC机上同时运行两个操作系统。VMWare对外围硬件设备的模拟,屏蔽了不同设备型号的差异,在硬件环境发生改变时(硬件型号变化),对于运行于VMWare上的操作系统影响很小(无须安装新的驱动程序)。 本文以下部分将介绍如何在VMWare软件提供的虚拟环境上安装VxWorks操作系统。由于可以在同一台PC机上建立完整VxWorks开发环境,所以可以有效地降低项目初期的开发成本,也可以为初学者提供一个接近于真实的模拟环境。 需要注意的是,由于VMWare本身是运行在Windows操作系统之上的,而VxWorks 运行于VMWare之上,所以这个模拟环境无法保证VxWorks的实时特性。 1.涉及的软件资源 1.1.Tornado 2.2/VxWorks5.5 安装一个Tornado2.2/VxWorks5.5 1.2.vmWare虚拟软件 vmWare为一个虚拟软件,可以虚拟出一个逻辑的电脑,提供基于Intel CPU的虚拟PC系统环境,包括CPU、内存、BIOS、硬盘和其他外围硬件设备。再进行安装。

《操作系统原理》课程教学大纲

附件1: 《操作系统原理》课程教学大纲 制定(修订)人: 李灿平、郭亚莎制定(修订)时间: 2006年 7 月所在单位: 信息工程学院 一、课程基本信息

三、教学内容及基本要求 第一章绪论 本章简要介绍操作系统的基本概念、功能、分类以及发展历史。同时讨论研究操作系统的几种观点。 §1.1 操作系统的概念 本节介绍操作系统的基本概念,什么是操作系统以及操作系统与硬件软件的关系。 本节重点:操作系统与硬件软件的关系。 本节要求学生理解什么是操作系统,掌握操作系统与硬件软件的关系。 §1.2 操作系统的历史 本节按器件工艺介绍操作系统的发展历史。 本节重点:多道程序系统的概念。 本节要求学生了解操作系统的发展历史,理解多道程序系统概念。 §1.3 操作系统的基本类型 本节介绍常见的操作系统的类型、特点及适用的对象。 本节重点:批处理操作系统、分时系统、实时系统。 本节要求学生掌握上述三大操作系统的特点及适用对象。 §1.4 操作系统功能 本节简单介绍操作系统的五个功能。处理机管理,存储管理,设备管理,信息管理(文件系统管理)和用户接口。 本节要求学生了解上述功能。 §1.5 计算机硬件简介 本节简单介绍计算机硬件系统。 本节要求学生自修。

§1.6 算法的描述 本节介绍操作系统管理计算机系统的有关过程所用的描述算法。 本节要求学生掌握本书所采用的描述算法。 §1.7 研究操作系统的几种观点 本节介绍研究操作系统的几种观点。系统管理的观点,用户界面观点和进程管理观点。 本节要求学生了解上述三种观点。 第二章操作系统用户界面 本章主要讨论操作系统的两个用户接口,并以UNIX系统为例,简单介绍用户接口的使用操作方法。 §2.1 作业的基本概念 本节介绍作业的基本概念,什么是作业及作业组织(结构)。 本节重点:作业的基本概念。 本节要求学生掌握作业的基本概念,了解作业的组织。 §2.2 作业的建立 本节介绍作业的几种输入方式和作业的建立过程。 本节重点:联机输入方式和Spooling系统,作业控制块PCB和作业的四个阶段。 本节要求学生了解作业的几种输入方式,理解Spooling系统,掌握作业建立的过程内容。理解作业的四个基本阶段。提交、后备、执行以及完成阶段。 §2.3 命令控制界面接口 本节介绍操作系统为用户提供的命令接口界面。介绍命令接口的两种使用方式。讨论联机方式下操作命令的分类。 本节重点:命令接口的使用方式。 本节要求学生理解命令接口的作用和使用方式。了解联机方式下操作命令的分类。 §2.4 系统调用 本节介绍操作系统提供给编程人员的唯一接口,系统调用。同时讨论系统调用的分类。 本节重点:编程人员通过系统调用使用操作系统内核所提供的各种功能和系统调用的处理过程。 本节要求学生了解系统调用的分类、理解系统调用的功能、掌握系统调用的处理过程。 §2.5 UNIX用户界面 本节简单介绍UNIX系统的发展历史和特点以及UNIX系统结构。同时讨论UNIX操作命令和系统调用的分类功能和使用方法。 本节重点:UNIX系统的特点。 本节要求学生了解UNIX系统的发展史,掌握UNIX系统的特点,理解UNIX系统操作命令和系统调用的功能。 第三章进程管理 本章详细介绍进程和线程管理的有关概念和技术。 §3.1 进程的概念 本节介绍进程的基本概念。通过程序的并发执行,引出进程具有并发性特征的概念。同时讨论进程的各式各样的定义以及作业和进程的关系。 本节重点:进程的特征。 本节要求学生了解程序的并发执行,掌握进程的特征。 §3.2 进程的描述 本节介绍进程的静态描述以及进程上下文结构。 本节重点,进程的上下文结构。 本节要求学生理解进程的静态描述内容,掌握进程控制块PCB的作用和进程上下文结构。

浅谈操作系统(操作系统论文)

浅谈操作系统 摘要 随着科学技术的不断发展与创新,计算机得到了广泛的普及和应用,同时计算机的操作系统也在不断的发展和完善当中。21世纪是信息的时代,最重要的体现就是计算机技术的广泛应用及发展,操作系统作为计算机系统的基础是管理计算机软硬件资源、控制程序运行、改善人机界面和为应用软件提供支持的一种系统,本文主要是通过对操作系统及其发展情况来进行分析,了解计算机操作系统发展的基本情况,阐述未来操作系统的发展趋势,从而促进计算机技术的不断的进步。 关键词:计算机;操作系统;发展; 一、计算机操作系统的发展史 操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。操作系统所处位置作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。 原始的操作系统主要是从批次模式开始,然后逐渐的发展到分时机制的模式,后来由于多处理器时代的到来,整个操作系统也逐渐有多处理器的协调功能,继而出现了分布式的系统。操作系统主要发展可分为四个阶段:纯手工操作阶段、批次处理阶段、多道程序系统阶

段及现代操作系统阶段。整个系统的发展主要面临着技术上的难题,主要体现的是计算机硬件技术的发展限制了软件的发展和操作系统的不稳定性。 二、计算机中常用的操作系统 计算机操作系统作为计算机系统的基础是管理电脑软硬件系统的程序。计算机系统的种类多,经常是通过应用领域来划分的,其中应用程序主要是包括桌面、服务器、主机以及嵌入几个应用领域的操作系统。常用的操作系统分类如下。 1.Windows系统 Windows系统作为计算机内较为常见的操作系统,在人们的日常生活和学习中都应用的较为普遍,Windows系统作为现代最为流行的操作系统,其在技术方面也是非常成熟的。目前最新版本的Windows 操作系统为Windows10。 2.UNIX系统 UNIX系统有自身较为统一的实施标准和认证规范,并且利用该规范,还可以对UNXI系统进行程序的移植,并且促进了UNIX的发展及应用程序的开发,UNXI已经开始作为大型机器、网络服务器及工作中的主流操作系统,并且其自身的发展还在一定的程度上推动了Linux等开源UNIX类操作系统的发展。 3.Linux系统 Linux系统是在UNIX的基础上进行发展的,其开源模式的软件环境极其价值越来越受到社会,并且其软件的运行环境及其价值越来

操作系统第1章(操作系统概述习题及解答)

第1章操作系统概述习题及解答 1.2 例题解析 例1.2.1 影响计算机系统性能的主要因素是什么? 解影响计算机系统性能的主要因素分为软件和硬件两个方面: (1) 硬件方面主要是指构成计算机系统器件的性能和硬件的体系结构,如存储器的速度和容量、多处理机结构、总线结构等。 (2) 软件方面主要是指操作系统,因为操作系统决定了硬件是否能被用户使用、硬件的功能是否能发挥出来、其它软件能否在计算机 系统上运行。 例1.2.2 说明操作系统与软件的关系 解操作系统与软件的关系如下: (1) 操作系统是每台计算机必备的系统软件。 (2) 操作系统是所有软件运行的基础,所有的其他软件都是建立在操作系统基础之上的,并得到它的支持和服务。同硬件一样,软件 资源也要操作系统进行有效的管理。 (3) 软件的开发依赖于操作系统。开发软件必需在一定的操作系统环境下进行,操作系统所能提供的功能支持在一定程度上决定软件 开发的难易程度。 (4) 操作系统影响软件的生命周期。如果主流操作系统的变更,就意味着一批应用软件生命的结束。 (5) 应用软件是操作系统上的可用资源,是操作系统生存的基础。如何评论一个操作系统的好坏?不仅要考虑其可靠性、易用性、安 全性、兼容性等等,还要衡量在此操作系统上开发出的软件的数量 和质量。许多用户使用操作系统的主要目的是使用其上的能够完成 某种特定功能的应用软件,例如某些财务公司安装有微软的 Windows系列操作系统,而其工作中经常使用的却是Windows上开 发的各种财务软件,此财务软件是Windows操作系统上的可用资源。只有拥有大量应用软件的操作系统才能更多的占有市场,具有旺盛 的生命力。微软的Windows系列是PC机上最流行的操作系统,它不 仅拥有众多的软件产品,如软件开发工具VB、VC++、办公软件

会计专业毕业论文文献综述范文

会计专业毕业论文文献综述范文 电力企业想达到自身经营效益和外部社会效益的双赢,不仅要以优质的服务满足客户的需求,还需要改革自身的组织结构,以提高 企业运行的效率和效果。重建后的组织模式围绕着会计的业务流程 而展开,职能单元则是为业务流程的有效运行提供服务支持。因此,基于会计业务流程而重构的会计组织其实是一种二维的组织结构———流程维和职能维,一方面需要建立与会计业务流程相适应的流 程小组;另一方面,各个会计业务流程小组统归于会计服务中心,服 务中心实现相关的职能。流程小组目的在于满足与业务流程相关的 录入、处理和控制等相关工作,服务中心的主要作用在于培养和提 供有关的会计专业人员并参与解决流程上的执行问题,在纵向上保 证组织内进行核算与管理的系统性。图2显示的是在ERP环境下, 基本财务数据的采集工作由各个业务部门自身所设的数据处理中心 完成,故需要在每个独立的业务部门下设立数据录入员,数据审核 记账员和数据文档管理员这三个职位,分别负责部门数据的录入、 审核记账和存档等基础财务工作。图3显示的是会计部门在以流程 为中心重组后只需要设立AIS系统部(主要负责ERP系统财务模块的 使用和数据库的维护及管理)及财务小组(主要负责对有关要素进行 管理和监督等职能)。 重建后会计组织的结构特征 (1)以流程为中心。会计组织的传统分工有两个基本的假设:其一,相对于组织任务的多样复杂性,雇员的工作能力往往被视为是 不能匹配的;其二,组织中的管理层被视为控制中心,对部门业务活 动行使管理职能,对应到会计部门,部门内的分工越是详细其相互 牵制力就越大,从而内控就越强。这两种假设强调对员工的控制, 均将员工视作低能、懒惰和不负责任的人,管理者的作用就是监督 和控制员工。建立在这两项职能基础上传统会计组织模式所获得的 利益远远低于所花费的费用,而违规的风险依然存在。与以管理职 能为中心的组织结构不同,ERP环境下的会计组织结构围绕着相关

在线考试系统的设计与实现 文献综述

文献综述 题目Web数据库技术及其发展趋势学生姓名 专业班级 学号 院(系) 指导教师(职称) 完成时间2011年6月5日

Web数据库技术及其发展趋势 1Web概述 1.1Web及其工作模式 Web即万维网,就是通过使用通讯设备和线路,将处在不同地理位置、操作上相对独立的多个计算机连接起来,再配置一定的系统软件和应用软件,在这些计算机上实现软硬件的资源共享和信息传递,由此而构成的计算机网络。 互联网是由全球众多的计算机局域网互相连接组成的一个超大规模的网络系统,在这个系统中运行着多种应用系统,如上网使用的网页浏览系统——WWW、上传与下载用的文件传输系统——FTP、收发电子邮件所使用的电子邮件系统——E-Mail等。互联网中运行的每一种应用系统都是由互联网中相应的服务器系统、客户机系统构成,也就是说互联网从物理连接来看是由众多的计算机组成,而从逻辑上看是由多个功能子网组成。 1.2Web中存储信息的方式 传统网站存储信息的方式是采用基于文件的,即每个Web文档存储在一个单独的文件中。 目前流行的Web存储信息的方式则是基于数据库的,即允许Web直接访问数据库,从而管理动态Web内容。 1.3基于HTML文件的Web服务器 在基于HTML文件的Web服务器中文本和其他多媒体信息都是以文件的形式来进行存储和管理,客户端直接下载HTML文件。 1.4基于数据库的Web服务器 在基于数据库的Web服务器文本和其他多媒体信息保存在数据库中,客户

端请求服务器执行一个CGI程序或Script语言码。 2Web数据库概述 2.1Web数据库的概念 数据库是指按照一定的结构和规则组织起来的相关数据的集合,是存放数据的“仓库”,据此将网络数据库定义为以后台数据库为基础的,加上一定的前台程序,通过浏览器完成数据存储、查询等操作的系统。 数据库技术是计算机处理与存储数据的最有效、最成功的技术,而计算机网

计算机操作系统论文分解

操 作 系 统 发 展 过 程 论 文 操作系统的发展 摘要:现在社会,操作系统进入了社会生活的各个方面, 涉及大型计算机、个人计算机、移动便携设备、其他自动化设备等各个层次的应用领域。操作系统(Operating System,简称OS)是计算机系统的重要组成部分,是一个重要的系统软件,它负责管理计算机系统的硬、软件资源和整个计算机的工作流程,协调系统部件之间,系统与用户之间、用户与用户之间的关系。电子计算机诞生以来, 计算机操作系统的研究取得了长足进展。在几十年的发展历程中, 各种操作系统应运而生,面对外国商业软件在中国的事实垄断, 重新审视中国基础软件发展战略、配套政策和实施方法已经到了刻不容缓的地步。

本文主要以计算机操作系统的发展过程为核心地位同时对它的技术变革作出了分析,同时对算机操作系统的功能,发展和分类做了简单的分析和阐述。 关键词:操作系统发展现状问题新技术 引言 操作系统是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。 操作系统是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。操作系统是一管理电脑硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。 目录 (一)、操作系统的简单介绍 (二)、操作系统的发展 (三)、操作系统新技术 (四)、操作系统发展现状 (五)、结语 (一)、操作系统的基本介绍 操作系统的功能:

毕业设计论文文献综述

毕业设计(论文)文献综述 学院:财务与会计学院 年级专业:201*级财务管理 姓名: 学号:132148*** 题目名称:浅谈源星科技有限公司的财务风险文献综述

此处勿忘将题目名称写上。下同。 浅谈源星科技有限公司的财务风险文献综述 浅谈源星科技有限司的财务风险文献综述 【内容摘要】:在市场经济日趋完善的今天, 企业时刻都面临着来自市场的各种风 险。财务系统系统作为企业风险预警器,愈来愈显示出其重要性。企业财务风险管理 的目标在于了解风险的来源和特征,正确预测、衡量财务风险,进行适当的控制和防 范。 【关键词】:财务风险,控制,防范 导言 在商品经济条件下,企业开展竞争,企业管理者面临的决策前景在大多数情况 下是不确定的,这就要求管理者对不确定因素加以分析预测和管理,西方很多学者 把大量的数学方法,统计方法以及敏感性分析方法引入了风险管理决策。企业是国 民经济非常重要的支柱,企业的发展状况时刻决定着国民经济和社会能否稳定发展, 它的生死存亡直接影响国计民生,而企业的命脉是企业财务, 企业的生存和发展被企 业财务状况的好坏直接影响着。借助各文献研究财务风险防范措施并把它应用到厦 门源星科技有限公司的财务实践中,能使厦门源星科技有限公司适时监测其财务风 险,采取有效的措施降低其风险,避免因为财务风险的积聚而转化为财务危机。 一、源星科技有限公司财务风险现状 1.偿债风险 2012年初,源星公司完成了对同行业鸿兴科技公司的并购,而本次出现的偿债 问题主要就是因为这次的并购引起的。鸿兴科技公司是一家规模不大的企业,但是 由于财务处理不当、经营决策失误等各方面原因导致公司很难再正常运营下去。并 购之后,源星公司由于债务负担过重,缺乏必要的现金持有量以及短期融资,导致 支付困难。 2.营运风险 风险的源头还是了在2012年初的并购鸿兴公司上,这次的并购导致本公司必要 的现金持有量不足,但是在并购的同时公司又相应的扩大了销售规模,销售规模的 扩大可能会产生更多的盈利,但是同时又需要不断扩大业务筹集营运资金,出现过 度交易的情形。一部分营运资金被暂时占用。营运资金不足现金循环就无法顺利进 行,将会影响企业的正常生产经营活动。 3.赢利风险

操作系统论文

姓名:慕永利 班级:软件11-2班 学号:23号 日期:2013年11月1日

摘要 在操作系统中引入线程,能够减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性。 线程是进程的一个实体,是独立调度和分配的基本单位。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看作多个独立的应用,来实现进程的调度和管理以及资源分。 总而言之,线程是进程内的一个执行单元,也是进程内的可调度实体。 关键字:OS(操作系统),TCB(线程控制块),进程,线程

目录 1 引言 (4) 1.1 线程问题的引入 (4) 1.2 线程和进程的比较 (4) 2线程理论基础 (5) 2.1线程属性 (5) 2.2线程的状态 (5) 2.3线程的创建和终止 (6) 2.4线程之间的同步和通信 (6) 2.5线程的实现方式 (6) 3线程新技术(超线程技术) (6) 参考文献 (7)

1 引言 1.1线程问题的引入 在早期OS中一直以进程作为能拥有资源和独立运行的基本单位,现在可以有比进程更小的独立运行的基本单位线程。可以用它来提高系统内程序并发执行的程度,从而进一步提高系统的吞吐量。由于近年来多处理及系统得到迅猛发张,线程能比进程更好的提高程序的并发执行程度,充分地发挥多处理机的优越性,所以在多处理机OS中引入线程能够改善OS的性能。 1.2 线程和进程的比较 线程具有许多传统进程所具有的特性,所以又称为轻型进程或进程元,相应的把传统进程称为重型进程,传统进程相当于只有一个线程任务。在引入了线程的OS中通常一个进程都拥有若干个线程,至少也有一个线程。下面我们从调度性、并发性、系统开销和拥有资源等方面对线程和进程进行比较:(1)调度 在传统的操作系统中,作为拥有资源的基本单位和独立调度、分派 的基本单位都是进程。而在引入线程的操作系统中,则把线程作为 调度和分派的基本单位,而进程作为资源拥有的基本单位。把传统 进程的俩个属性分开,使线程基本上不拥有资源,这样线程就能轻 装前行,从而显著的提高系统的并发程度。在同一进程中,线程的 切换不会引起进程的切换,但从一个进程中的线程切换到另一个进 程中的线程时,将会引起进程的切换。 (2)并发性 在引入线程的OS中,不仅进程之间可以并发执行,而且一个进程 的多个线程之间也可以并发执行,使得OS具有更好的并发性,从 而能更加有效的提高系统资源的利用率和系统的吞吐量。 (3)拥有资源 不论是传统的OS,还是引入了线程的OS,进程都可以拥有资源, 是系统中拥有资源的一个基本单位。 (4)系统开销 在创建或撤销进程时,系统都为之创建和回收进程控制块,分配和回收资源,如内存空间和IO设备等,操作系统所付出的开销明显大于 线程创建和撤销时的开销。就切换而言,进程切换的开销高于线程。此 外,由于一个进程中的多个线程具有相同的地址空间,在同步和通信的 实现方面线程比进程容易。在一些OS中,线程的切换、同步、通信都 无需操作系内核的干预。

计算机操作系统概述习题集

计算机操作系统概述习题集 1、学习“计算机操作系统”这门课,至少要记住操作系统的概念哪两大特征? 1、答:计算机操作系统是方便用户、管理和控制计算软硬件资源的系统软件(或程序集合)。操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大功能(作业管理、文件管理、存储管理、设备管理和进程管理)。 2、选择题: (1)操作系统负责管理计算机系统的(3),其中包括处理机、存、外围设备和文件。①、程序;②、文件;③、资源;④、进程 (2)没有下列设备计算机无法工作(3): ①、硬盘;②、软盘;③、存;④、打印机 3、(是非题)(X)操作系统的“配置”或“生成”,是指可以任意按用户要求装配成各种应用核心。 4、述操作系统的五大管理功能。 4、答: 作业管理:包括任务管理、界面管理、人机交互、形界面、语音控制和虚拟现实等。 文件管理:又称为信息管理。 存储管理:实质是对存储“空间”的管理,主要指对存的管理。 设备管理:实质是对硬件设备的管理,其中包括对输入输出设备的分配、启动、完成和回收。 进程管理:又称外理机管理,实质上是对处理机执行“时间”的管理,即如何将 CPU 真正合理地分配给每个任务 5、什么是批处理系统?为什么要引入批处理系统? 5、答:批处理系统指用户的作业成批的处理,作业建立、过渡、完自动由系统成批完成。因为 58~64 年,晶体管时代,计算机速度、容量、外设品种和数量等方面和第一代计算机相比都有了很大发展,计算机速度有几十倍、上百倍的提高,故使手工操作的慢速度和计算机运算的高速度之间形成一对矛盾。只有设法去掉人工干预,实现作业自动过渡,这样就出现了成批处理。 6、什么叫多道程序?试述多道程序涉及技术的基本思想及特征,为什么对作业进行多道批处理可以提高系统效率? 6、答:多道程序设计技术是在计算机存中同时存放几道相互独立的程序,使它们在管理程序控制下,相互穿插还差运行。当某道程序因某种原因不能继续运行下去时候,管理程序就将另一道程序投入运行,这样使几道程序在系统并行工作,可使中央处理机及外设尽量处于忙碌状态,从而大大提高计算机使用效率。在批处理系统中采用多道程序设计技术形成多道批处理系统,多个作业成批送入计算机,由作业调度程序自动选择作业运行,这样提高了系统效率。 7、何为分时系统?简述其特点。 7、答:分时系统采用时间片轮转办法,使一台计算机同时为多个终端服务。特点:多路调制性:多个联机用户可同时使用一台计算机。独占性:用户感觉不到其他人在和他一起共享计算机及资源。交互性:用户可与计算机会话,提出要求,命令。 8、分时系统和实时系统有何不同? 8、答:分时系统控制的主动权在计算机,计算机按一定时间间隔,以固定时间片或不固定时间片去轮流完成多个提交的任务,只是在用户反应相对较慢时,不感到机器“走开”。而实时系统控制的主动权在用户,用户规定什么时间要计算机干什么,计算机不能“走开”。分时系统通用性强,交互性强,及时响应性要求一般(通常数量级为秒);实时系统往往是专用的,系统与应用很难分离,常常紧密结合在一起,实时系统并不强调资源利用率,而更关心及时响应性(通常数量级为毫秒或微秒)、可靠性等。 9、多用户操作系统离开了多终端的硬件支持,能否安装和使用?

相关主题
文本预览
相关文档 最新文档