欢迎来到优发表网,发表咨询:400-888-9411 订阅咨询:400-888-1571股权代码(211862)

购物车(0)

期刊大全 杂志订阅 SCI期刊 期刊投稿 出版社 公文范文 精品范文

操作系统论文(合集7篇)

时间:2022-07-18 17:44:09
操作系统论文

操作系统论文第1篇

下面是由本课程的全部教学内容所提炼并加以有机整合而形成的出的精髓教学框架:

(1)系统发展历史的回顾与当前技术发展潮流追踪许多学校的计算机专业在讲解操作系统课程时,往往局限于介绍具体方法和技术细节,忽略对技术发展历史和当前技术潮流的诠释。既不能开拓学生专业视野,又无法对专业历史有深入的了解。本门课程争取使用3-4学时的时间详细讲解操作系统的发展历史、著名人物、分类体系和技术发展趋势。这样的内容极大的激发了学生的学习兴趣和专业使命感,具有很好的教学效果。

(2)作系统基本设计原理与核心技术方法的分析讲解本门课程注重对基础专业理论的讲解,从五个方面详细剖析操作系统的核心原理。对进程管理、存储管理、文件系统、设备管理、系统接口等基本的设计原理均进行了详细的介绍和分析。操作系统的各种基本设计原理中包含了大量的算法设计与技术实现优化考虑,在教学过程中,要特别注重剖析算法设计思想和优化教学法的差别,强调激发学生的主动思考能力,而不是僵化的向学生灌输思想。

(3)真实操作系统案例的组成结构与实现特色剖析对比。操作系统的设计原理体系严密,各种技术方法错综复杂。要注重选用真实操作系统作为学习的案例。通过对真实案例的剖析以提高学生的感性认识。例如在讲解“进程管理”时,将Linux系统与WindowsXP系统进行对比;讲解“文件系统”时,对Linux、FAT32、NTFS等各类不同的文件系统进行对比;讲解内存管理时,对Minix、Linux、Win-dowsXP系统进行对比。这样的教学内容虽然备课难度大,但是教学效果却非常好。

(4)操作系统原理与计算机原理、编译原理、数据库、计算机网络等课程的关联。《操作系统原理》课程是计算机及相关专业的学生在本科阶段“承上启下”的重要课程,讲授过程中必须注重与其他专业基础课内容和知识的结合。在教学过程中,专门讲解“操作系统硬件基础知识”以融合《计算机原理》课程知识;重点分析“应用程序编译链接过程”以融合《编译原理》课程知识;在“进程同步互斥、I/O设备同步阻塞-异步传输”的内容中有机融合《数据库原理》、《计算机网络》的基本概念。这样的关联式教学方式使得学生能够将多门专业基础课程进行有机的融合贯通,有效的促进了专业理论体系的完善。

基于以上对教学内容的有机的系列化分类,在选用优秀计算机经典教材的基础上,必须强调教学方式的科学与合理,主要采用以下教学方式:

(1)定位于专业基础必修课,帮助学生建立扎实的专业理论基础。计算机领域各相关专业的学生都需要建立扎实完整的软件基础理论体系。《操作系统原理》是讲述计算机硬件资源管理、应用程序运行控制、人机交互接口实现等内容的基础性课程,在专业人才培养方面具有极为重要的作用。应该不断加强对《操作系统原理》课程的教学投入,积极完善师资队伍、改进教学计划、建立完整实践环境、主动追踪技术发展潮流,使得本门课程的教学质量不断提升。

(2)面向应用、软件等各专业学生授课,实现“承上启下”的总体教学目标。《操作系统原理》是计算机科学与技术专业必修基础课,是自动化专业的专业选修课,也是非计算机专业的软件方向主干课。在教学计划中,本门课程最主要的作用就是实现对低年级专业基础知识的综合与提升,帮助学生建立系统、完整的专业基础理论体系,培养学生的研究型思维和动手实践能力,开拓学生的专业学术视野,为后续课程的学习和专业发展奠定重要的基础。

(3)原理、实践、现实应用相结合,为培养高水平专业人才服务。《操作系统原理》是综合了基础理论讲授、动手实践、观察体验、最新技术发展潮流追踪等多项内容的专业基础课程。课程建设存在教学工作量大、上机实践环节重要、学生学习任务重等特点,课程教学过程中,常常存在原理讲授与上机实践脱节、课堂学习与现实应用剥离的情况,导致老师在教学过程中常采用“灌输式”教学法、学生在学习过程中常采用“机械记忆”的学习习惯,教学质量难以提升。为此,在《操作系统原理》课程建设中应该积极进行教学改革和创新,近年来不断引进国内外经典操作系统教材,努力搭建多种操作系统平台的上机实践环境,加强师资队伍建设和教学督导力度,加强对技术发展潮流的追踪。

(4)“启发式、关联式”的课堂讲授与课堂讨论相结合。在对基础性的操作系统原理进行讲解时,要注重讲授与讨论的结合,教案的内容组织并不完全遵循各类教材的内容安排,在讲解顺序、思路整理方面均体现了教师对学习过程的把握和指导。在详细讲解各类原理之前,安排小规模“课堂讨论”分析猜测设计思想,激发学生的好奇心和主动思考能力;在讲解原理的过程中,不断的问“为什么”,提高学生的对比分析能力;在原理讲解完成后,进行系统性的总结和展望,指导学生建立系统性的思维方式。为激发课堂讨论的积极性,对讨论过程中表现优异的学生给予“小额加分”的激励,鼓励学生表达自己观点。

操作系统论文第2篇

就象UNIX,Linux支持的网卡主要是以太网卡。如3COM、ACCTON、AT&T、IBM、CRYSTAL、D-LINK等众多品牌的以太网卡只要安装配置正确,都可以得到你所期望的效果。

一、Linux中网卡的工作原理

为了将这个问题说明的更清楚一些,不妨先简要地剖析一下Linux是如何让网卡工作的。一般来说,Linux核心已经实现了OSI参考模型的网络层及更上层部分。网络层的实现依赖于数据链路层的有效工作。网卡的驱动程序就是数据链路层与物理层的接口。通过调用驱动程序的发送例程向物理端口发送数据,调用驱动程序的接收例程从物理端口接收数据。

1.网卡驱动程序

简单地说,要将你手中的网卡利用起来,你唯一要做的是得到这块网卡的驱动程序。驱动程序提供了面向操作系统核心的接口和面向物理层的接口。

驱动程序的操作系统接口是一些用于发现网卡、检测网卡参数以及发送接收数据的例程。当驱动程序开始运作时,操作系统首先调用检测例程以发现系统中安装的网卡。如果该网卡支持即插即用,那么检测例程应该可以自动发现网卡的各种参数;否则你就要在驱动程序运作前,设置好网卡的参数供驱动程序使用。当核心要发送数据时,它调用驱动程序的发送例程。发送例程将数据写入正确的空间,然后激活物理发送过程。

驱动程序面向物理层的接口是中断处理例程。当网卡接收到数据、发送过程结束,或者发现错误时,网卡产生一个中断,然后核心调用该中断的处理例程。中断处理例程判断中断发生的原因,并进行响应的处理。比如当网卡接收到数据而发生中断时,中断处理例程调用接收例程进行接收。

2.驱动程序工作参数

驱动程序的工作参数因网卡性质的不同而不同,大致包括I/O端口号、中断号、DMA通道、共享存储区等。输入输出端口号又被称为输入输出基地址,当网卡工作于端口输入输出模式时被使用。端口输入输出模式需要CPU的全程干预,但所需硬件及存储空间要求较低。CPU通过端口号指定的空间与网卡交换数据。中断号是网卡的中断序号,只要不与其它设备冲突即可。当网卡使用DMA方式时,它要使用DMA通道批量传输数据而不需要CPU的干预。

对于一块具体的网卡,如果网卡支持完全自动检测,那么一个参数也不用指定,驱动程序的检测例程会自动设定所需参数。一般情况,你需要人工设定这些参数的一部分。如果你的网卡使用端口输入输出模式,你要设定端口号和中断号。如果你的网卡使用DMA模式,你要设定DMA通道和中断号。如果你的网卡使用共享存储区的模式,那你就得设定共享存储区的地址范围。

3.驱动程序的使用方式

有了网卡的驱动程序后,你可以选择是把驱动程序加入到Linux核心之中还是把驱动程序加工成独立模块。Linux系统一个引人入胜的长处就是可以定制系统的核心。把需要频繁调用的功能加入系统核心,可以大大提高系统的效率。在这种情况下系统启动时,系统核心自动加载网卡的驱动程序。驱动程序的参数可以通过LILO命令参数加以指

定。系统启动后驱动程序永久驻留核心,不能用常规的方法将其卸载。至于定制的系统核心,是通过重新编译得到的;如何编译核心将在后文叙及。

如果把驱动程序编译成可装载模块,就可以用系统提供的命令在系统启动后随时加载。随时加载的好处是减少内存开销,易于管理,但同时也牺牲了一点网络传输的效率。驱动程序的参数是在命令行中直接输入或通过配置文件指定。二、网卡安装前的准备在安装网卡前,务必检查是否具备下列条件:

1.硬件方面

以太网卡

网络连接线及连接头,如10base-T一般为8芯双绞线配RJ-45接口

2.软件方面

Linux操作系统

网卡驱动程序(目标码或源代码)

*网卡配置程序

*软件开发工具,如GNU工具包(包括编译器gcc、make等)

3.系统配置信息

可用的端口地址

可用的中断号

以上不带星号标记的是必要条件,带星号的是视情况不同而要求的条件。具体情况在下面进一步说明。

三、网卡的安装及配置

第一步:配置以太网卡的工作参数

配置网卡就是配置网卡的工作参数,如端口地址、中断号等。网卡的缺省参数一般存储于网卡内部的EEPROM,这是网卡出厂前设置好的。缺省参数在大多数情况下是可行的,但如果这些参数与你的系统有冲突并且网卡又不支持软件动态设置,那么你就要使用网卡的设置程序。并不是所有的网卡都要经过这一步,因为有些网卡支持通过驱动软件及其输入参数来确定网卡的工作参数。可以通过查阅网卡使用说明书来确定这一点。

网卡的设置程序与驱动程序不同,设置程序仅仅用来对网卡EEPROM中的设置进行修改。网卡程序本身可能运行在其它操作系统下,如WINDOWS95/98、OS/2、DOS等。如果是非Linux平台,那你就先在适合设置程序运行的系统中安装网卡,按设置程序说明设置网卡参数。然后再在Linux系统下安装该网卡。

第二步:安装Linux系统

假如你将要安装以太网卡的Linux系统本身还未安装,那么可以先试着在安装Linux的同时安装网卡。这一步成功的前提是你的Linux发行版本包含将要安装的网卡的驱动程序。

运行Linux的安装程序,按提示进行操作,别忘了安装核心的网络部分。当进行到LAN配置时,安装程序会列出它支持的所有网卡的类型。看看你的网卡是否榜上有名。随着Linux发行版本的不断升级,目前RedHat6.0已经覆盖了常用的网卡类型。如果很幸运地你的网卡恰好在其中,那么下文讨论的很多步骤都可以不必考虑了,安装程序会自动完成网卡的安装与驱动。但如果没找到适用于你的网卡类型,也不必担心,继续下一步。

第三步:手工安装网卡

安装网卡也就是安装网卡的驱动程序。网卡要工作必须要有驱动程序,并且驱动程序越成熟越好。驱动程序一般由网卡的生产或供应商提供。由于Linux是一个起步不久的新兴操作系统,网卡的生产商并不一定提供Linux环境下的驱动程序。这时候你就得从其它途径想办法了,比如到INTERNET上专门提供硬件驱动程序的网站查找一下,也可以在新闻组上贴个求助信息。总之,只有得到网卡的驱动程序后,方可进行下一步。

网卡的驱动程序有两种类型。一是可直接使用的二进制代码;另一种是驱动程序的源代码。二进制代码一般是预先编译好的可装载模块。源代码可以编译成可装载模块,也可以编译成系统核心的一部分。如何把源代码编译成可装载模块不在本文讨论之列,具体可以查阅驱动程序的说明书。

1.可装载模块的使用

系统提供了一组命令用于将驱动程序模块载入内存执行。这些命令包括modprobe、insmod、Ismod、rmmod。modprobe与insmod命令功能相似,但是方式各异。

modprobe命令使用配置文

件/erc/config.modules来加载可执行模块。要用modprobe命令加载以太网卡的驱动程序,可以在config.modules文件中加入:

aliaseth0drivermodule(drivermodule是驱动程序模块的名称)

这行配置信息把以太网卡的设备名与驱动程序模块联系起来。modprobe命令依据这条信息,自动加载存放于/lib/library/xxxx/net目录下名为drivermodule.o的模块。因此要使modprobe命令找到驱动程序模块,必须将该模块放在/lib/library/xxxx/net目录下。

那么驱动程序的参数如何指定呢?还是使用conf.modules文件。方法是在接着上述配置信息的后面加入下行信息:

optionsdrivermoduleparml=valuel,parm2=value2,……

这里parm1是驱动程序可以接受的参数名,valuel是该参数值;依次类推。

比如optionscs89x0io=0x200irq=0xAmedia=aui

insmod命令直接通过命令行参数将驱动程序模块载入内存,并可以在命令中指定驱动程序参数。例如:

insmoddrivermodule.oparml=valuel,parm2=value2,……

以上两个命令中可以使用驱动程序参数要依据具体的网卡及其驱动程序而定,要仔细阅读网卡及驱动程序的说明书。有的网卡驱动程序可以用这些参数覆盖网卡本身EEPROM中存储的参数。有的则必须使用EEPROM中的参数。有的因为驱动程序不自动检测网卡使用的参数,所以还得把网卡使用的EEPROM中的参数传给驱动程序。

卸载驱动程序模块使用rmmod命令:

rmmoddrivermodule.o

2.把驱动程序编译入系统核心

除了以可装载模块的形式使用驱动程序,还可以把驱动程序编译进Linux核心,以获取更高的效率。这种方式需要驱动程序的源代码、Linux核心源代码及其编译工具。Linux核心的编译过程包括配置核心、重建依赖关系、生成核心代码等步骤。配置核心的过程是用系统提供的配置工具(makeconfig或makemenuconfig)重新生成用来编译核心的众多make文件的过程。为了让核心的配置工具了解你的网卡驱动程序,你需要修改一些核心的配置文件。

(1)修改配置文件:主要修改核心源代码目录下的四个文件,即drivers/net/CONFIG文件、drivers/net/Config.in文件、drivers/net/Makefile文件和drivers/net/Space.c文件。CONFIG和Config.in文件用于控制核心配置工具(makeconfig或makemenuconfig)的运行,主要是加入关于是否包括该网卡的支持提示。Makefile和Space.c文件用于编译核心代码并说明面向核心的接口。详细语句参见下面例子。

(2)运行核心配置工具:在核心源代码目录下执行makeconfig或makemenuconfig命令。makeconfig是面向命令行的,通过逐句回答提问来配置核心。由于其在配置过程中不可改变或撤消以前的回答,故多有不便。makemenuconfig则是通过窗口菜单方式,使用起来很方便。就本文而言,你只要在上一步中正确修改了配置文件,那么在config中会出现是否需要该网卡支持的提问,你选择‘y’。或者在menuconfig中的network菜单中出现表示该网卡的菜单项,把它选上即可。

(3)重建依赖关系:很简单,执行makedep和makeclean命令。

(4)生成核心代码:执行makezImage命令。这个命令开始真正编译核心代码,并把核心代码存放为arch/i386/boot目录下的zImage。

(5)为了使用新的核心代码,你需要用新的核心代码替换原有的。原有的核心代码一般存放在/boot目录下,文件名称类似于vmlinuz-v.s.r-m(v.s.r-m)表示核心的版本号)。如vmlinuz-2.0.34-1。执行下列命令:

cparch/i386/boot/zImage/boot/vmlinuz-v.s.r-m

为了安全起见,可以先把原有的核心代码做个备份,以便发生错

误时恢复。

至此,你可以重新引导系统以使用新的带有正确网卡驱动支持的Linux核心。唯一剩下未解决的是驱动程序的参数问题。有些网卡驱动程序如果不输入参数,那它工作就会不正常,甚至根本不工作。由于现在网卡的驱动程序是系统启动时由核心载入运行的,系统启动之后用户就很难改变这些参数了,所以你必须在系统启动时告诉Linux核心网卡驱动程序使用的参数。具体方法有两种:

(1)在系统引导程序LILO中输入。

在LILO开始引导系统时,用ether子命令设定以太网卡驱动程序的参数。ether命令的使用方式为:

LILO:linuxether=IRO.BASE_ADDR,NAME

这里带下划线的是要输入的部分,IRQ表示中断号,BASE_ADDR表示端口号,NAME表示网卡的设备名。例如:linuxether=15,0x320,eth0

(2)在LILO配置文件中设定。

每次在系统启动时再输入驱动程序参数似乎有点过于麻烦。幸好系统提供了LILO的配置文件可以用来永久性的设置Linux系统启动时的子命令。方法是在/etc/lilo.conf文件中的适当位置加入以下一行:

append=“ether=IRQ,BASE_ADDR,NAME”

这里带下划线部分的意义同上。加入这一行后,还需要用/sbin/lilo命令把这个配置写入引导程序。

第四步:网络配置及测试

安装完网卡就可以配置网络通信了。配置网络简单地就是使用ifconfig命令,

例如:

ifconfigeth01.2.3.4netmask255.0.0.0up

最后ping一下网上其它机器的ip地址,检查网络是否连通。

五、一个以太网卡安装实例

下面以Cirrus公司生产的CrystalCS8920以太网卡为例,详细说明上述安装配置过程。本例中,有些命令参数,如核心源代码目录等,是以我使用的系统环境为出发点。具体应用中还要加以本地化。为了更接近实际,例子中也包括了对安装中碰到的问题的描述。

1.此网卡是IBMPC机的内置式网卡,机器只提供了Windows95/98环境下的驱动程序。由于RedHat5.0发行版本尚未提供对此网卡的直接支持,所以从Cirrus的站点上找到并下载了该网卡驱动程序的Linux版本,是一个名为Linux102_tar.gz的压缩文件。

2.文件Linux102_tar.gz解压后包括五个文件。包括源代码,仅适用于Linux2.0版本的目标模块以及readme文件。

3.查阅readme文件后,了解到这个驱动程序只能使用网卡EEPROM中设定的端口号(I/O基地址)、中断号。为了知道网卡EEPROM的设置,又从Cirrus站点下载了该网卡DOS版本的设置程序setup.exe

4.在DOS中运行setup.exe,发现网卡的起始端口号为0x360,中断号为10,与别的设备有冲突。选择setup.exe程序的相应菜单,把中断号改成5。另外,此驱动程序不支持plugandPlay,故也在setup.exe中将网卡的PnP功能屏蔽掉。

5.我所使用的RedHat5.0的Linux核心版本为2.0.34,所以不能用现成的驱动程序目标模块,需要自己动手编译。如上文所述,有两种方式使用此驱动程序。

6.如果要编译成独立模块,执行下列命令:

gcc-D_KERNEL_-I/usr/src/linux/include-I/usr/src/linux/net/inet-Wall-Wstrictprototypes-02-fomit-frame-pointer-DMODULE-DCONFIG_MODVERSIONS-ccs89x0.c

编译结果是名为cs89x0.o的驱动程序目标模块。要装载此驱动程序,输入下列命令:insmodcs89x0.oio=0x360irq=10

要卸载此驱动程序,用rmmod命令:

rmmodcs89x0.o

7.如果要将驱动程序编进系统核心,

修改/usr/src/linux/drivers/net/CONFIG,加入:

CS89x0_OPTS=

修改/usr/src/linux/drivers/net/Config.in,加入:

tristate‘CS8920Support’CONFIG_CS8920

以上两行是为了让makeconfig在配置过程中询问是否增加CS8920网卡的支持。修改/usr/src/linux/drivers/net/Makefile加入:

ifeq((CONFIG_CS8920),y)

L_OBJS+=cs89x0.o

endif

修改/usr/src/linux/drivers/net/Space.c,加入:

externintcs89x0_probe(structdevice*dev);

……

#ifdefCONFIG_CS8920

&&cs89x0_probe(dev);

#endif

以上两段是为了编译并输出网卡驱动程序及其例程。

把驱动程序源代码拷到/usr/src/linux/drivers/net目录下。

在/usr/src/linux目录下执行makeconfig或makemenuconfig,选择核心CS8920网卡支持。

执行makedep、makeclean命令。最后用makezImage编译Linux核心。

如何设置核心驱动程序参数,上节已有说明,不再赘述。

操作系统论文第3篇

一、课程教学难点

1.理论性强

该课程教学内容理论性强、概念抽象、涉及知识面广,学生时其整体实现思想和技术往往难以理解,学习时有较大难度,大部分学生有一种畏难情绪。因此学生很容易陷入疲于记忆的状态,忽略了对课程各部分间关系和课程教学目标的把握。因而该课程是计算机专业中教师“最难教”,学生“最难学”的课程之一。

2.学习效果见效不快

很多学生对学后有立竿见影效果的课程兴趣较大,如程序设计语言,学生学会了便很快可以就某个问题编写程序上机运行,颇有成就感;而对诸如操作系统这样原理性强,实验要求高,设计一个操作系统又不现实的课程,一些学生因感觉学习后效应不会立即显现而对课程重视度较低。

二、教学目标

操作系统是目前最复杂、技术含量最高的软件,在计算机专业软、硬件课程的设置上起着承上启下的作用,其中的许多设计思想、技术和算法都可以推广和应用到大型的、复杂的系统设计,以及其他领域。因此,其教学目标应重在培养学生理解和掌握计算机操作系统的基本工作原理、设计技术及设计方法,培养学生开发系统软件和大型应用软件的意识和能力,同时还要让学生了解现代操作系统的新思想、新技术和发展研究动向。

三、课程知识体系设计

鉴于以上课程教学难点,教师若能从繁杂抽象的理论中理出一个脉络清晰的课程知识体系呈现给学生,将为有效达到教学目标要求起到事半功倍的作用。该课程教学内容有纵、横两条主线,纵线主要指操作系统各功能的设计思想、处理机制,横线主要指功能实现的具体技术方法、不同环境下的实现差异。因此,整个课程知识体系可按纵、横两条线展开,遵循知识、能力、素质协调发展的原则,从知识模块、知识单元和知识点3个层次来设计。其中知识模块代表特定学科子领域,可包括若干知识单元;知识单元代表知识模块中的不同方向,可包括若干知识点;知识点代表知识模块中单独的主题,是教学活动中传递教学信息的基本单元。

1.纵向功能线

本文的纵向功能线是从资源管理功能出发来设计,通过基于操作资源管理功能的知识建构,学生能明确所学内容在知识体系中的层次、位置、关系。此处为使结构更清晰,按操作系统资源管理功能出发的纵向功能线细化为进程管理、处理机管理、存储器管理、设备管理、文件管理和用户接口六个知识模块,由此设计的纵向功能线知识结构如下:

(1)进程管理知识模块包括进程概念、进程调度、进程互斥、进程同步、进程通信、进程死锁各知识单元。进程概念包含进程特征、进程状态与转换、进程控制各知识点;进程调度包含调度时机、调度算法、调度过程各知识点;进程互斥包含与时间有关的错误、临界资源与临界区、临界区使用原则、临界区互斥访问的解决途径、临界区互斥访问的解决途径各知识点;进程同步包含信号量同步机制、生产者与消费者问题、读者与写者问题、哲学家进餐问题各知识点;进程通信包含忙等待策略、睡眠和唤醒策略、消息传递策略各知识点;进程死锁包含产生原因、必要条件、解决途径各知识点。

(2)处理机管理知识模块包括分级调度、调度算法、算法评价各知识单元。分级调度包含作业调度、交换调度、进程调度各知识点;调度算法包含作业调度算法、进程调度算法各知识点;算法评价包含作业调度算法评价、进程调度算法评价各知识点。

(3)存储器管理知识模块包括存储管理功能、存储管理方案各知识单元。存储管理功能包含内存分配与回收、地址映射、内存共享、内存保护、内存扩充各知识点;存储管理方案包含分区存储管理、页式存储管理、段式存储管理、段页式存储管理各知识点。

(4)设备管理知识模块包括数据传送控制方式、并行技术各知识单元。数据传送控制方式包含程序直接控制方式、中断方式、DMA方式、通道控制方式各知识点;并行技术包含通道技术、中断技术、缓冲技术、分配技术、虚拟技术各知识点。

(5)文件管理知识模块包括文件结构、文件存储空间管理、文件目录管理、文件存取控制各知识单元。文件结构包含文件逻辑结构与文件存取、文件物理结构与存储设备各知识点;文件存储空间管理包含空闲文件目录、空闲块链、位示图各知识点;文件目录管理包含文件目录形式、文件共享与保护、目录检索各知识点;文件存取控制包含文件存取控制方法。

(6)用户管理知识模块包括命令接口和系统调用知识单元。命令接口包含脱机控制命令、联机控制命令知识点;系统调用包含设备管理类命令、文件管理类命令、进程管理类命令、存储管理类命令、线程管理类命令各知识点。

2.横向技术线

操作系统知识点看似繁杂,但究其原理,在对不同系统资源功能进行管理时,所采取的策略和方法有很多是相同的。因此通过对重要方法和机制进行贯穿式的横向技术线,可使被条块分割的教学内容有效关联起来;通过横纵交错的连接,可使看似离散的知识有稳固而紧密衔接的结构。从操作系统四种重要实现技术出发的横向技术线包括中断技术、共享技术、虚拟技术和缓冲技术。当然,有些技术在其它相关课程中已有介绍,也可看出其在整个计算机系统中的重要程度,由此设计横向技术线知识结构如下:

(1)中断技术知识模块是实现程序并发执行与设备并行操作的基础,它包括中断类型、中断优先级、中断事件各知识单元。中断类型知识单元包括外中断、内中断知识点;中断优先级知识点在不同的系统中有不同的规定;中断事件知识单元包括进程创建与撤消、进程阻塞与唤醒、分时时间片、缺页中断与缺段中断、I/O操作、文件操作各知识点。

(2)共享技术知识模块是提高资源利用率的必然途径,它包括处理机共享、存储共享、设备共享、文件共享各知识单元。处理机共享包含进程的并发执行;存储共享包含外存储器共享、内存储器共享知识点;设备共享包含SPOOLing系统;文件共享包含便于共享的文件目录。:

(3)虚拟技术知识模块是把一个物理实体变为若干面向用户的逻辑单元,使资源的用户使用与系统管理相分离,从而提高资源利用率和安全性方,它包括虚拟处理机、虚拟存储器、虚拟存储器方法、虚拟设备、虚拟文件各知识单元。虚拟处理机包含多进程管理;虚拟存储器包含地址转换、中断处理过程、置换知识点;虚拟存储器方法包含页式管理、段式管理、段页式管理各知识点;虚拟设备包含设备共享;虚拟文件包含文件共享。

(4)缓冲技术知识模块是异步技术的实现前提,可大大提高相关资源的并行操作程度,它包括存储管理缓冲技术、设备管理缓冲技术、文件管理缓冲技术各知识单元。存储管理缓冲技术包含快表;设备管理缓冲技术包含硬缓冲、软缓冲、SPOOLing系统中的输入/输出井知识点;文件管理缓冲技术包含记录成组技术、文件表的打开。

四、课程知识体系操作

知识体系的设计显然要有必要的操作作为支持才能使其与学习者间进行互动,形成交流并达到知识的内化。依据上述的知识体系设计,该课程教学可采用以下两个步骤进行操作,一是以“核心拓展”的方式进行纵向功能学习,二是以“小组学习和共同学习相结合”方式进行横向技术综合学习。

“核心拓展”方式中核心指六大知识模块,它们也是该课程的核心内容,教师应结合具体系统的具体实例以讲授方式进行,讲授过程中对于一些关键算法一定要以具体实例加以讲解,不能照本宣科。“小组学习和共同学习相结合”方式可采用将多次出现的具体技术单独提出来,讨论哪些功能应用了该技术。分小组,一个小组负责总结一项技术,然后以小组宣讲共同讨论的方式来加深技术对功能的应用。

通过这两个步骤的操作,整个课程的知识体系便可以横、纵两条线的形式清晰地呈现在学生面前,为培养学生从离散到系统性的学习和思维习惯创造条件。

参考文献:

操作系统论文第4篇

总体设计

仿真系统在指挥控制系统设计全过程的作用,如图所示:从上图可见,仿真系统在反坦克导弹连指挥控制系统的设计过程中有着重要的顶层分析、辅助设计、论证优化作用。仿真系统的定制开发的基本流程是:

1)从作战使用层面,需要详细分析反坦克导弹体系的协同和信息交互及导弹连战斗关系系统的使用环境、作战原则、系统配置、攻击对象特性和不同作战过程、不同使用模式下的系统响应、状态转换关系,形成系统的工作流程。

2)从信息交互层面,需要详细分析导弹连战斗管理系统所需信息,研究信息交互的内容、对象、交互类型和方式、交互频度和实时性要求等,明晰系统对信息融合、传输、处理和信息共享、分发及协同的需求。

3)根据需求,建立仿真所需的硬件平台,并组成相应的通信网络。

4)分析设计仿真对象,形成对象配置文件。

5)编辑系统结构、业务流程、程序接口,形成仿真规划配置文件。

6)利用可视化开发工具,编辑二维、三维可视化设计,生成可视化规划配置文件。

硬件系统设计

反坦克导弹指挥控制仿真系统通过构成无线、有线、有无线混合组网等通信方式,采用标准通信格式,模拟反坦克导弹连与上级、友邻、协同部队、保障分队通信的互联网,以及模拟反坦克导弹连内部指挥控制专用网络,实现硬件节点间的互联互通。

反坦克导弹指挥控制仿真系统包含下列硬件节点:

1)服务器:用于外部数据处理及数据传输。

2)任务规划席:用于用户对仿真任务的配置及过程控制。功能包括:开始、结束仿真;新建或选择仿真任务;配置仿真对象属性;仿真速度倍率控制。

3)车辆模拟席:用于仿真车辆的实际运行状态,包括:仿真发射车运动状态及位置数据,仿真车辆通信、侦察、指挥、射击、装填等业务能力、作业过程及作业结果。

4)车辆指控席:用于仿真车辆的指挥终端所执行的功能,当验证在研指挥控制系统时,可更换为实装设备,直接进行半实物仿真测试。

5)敌军模拟席:用于显示敌军单位信息,包括:仿真敌军位置数据及车辆的运动状态,仿真已毁和剩余敌军目标信息。硬件结构部署图如下:

软件系统设计

1软件体系结构概述

反坦克导弹指挥控制仿真系统包括业务逻辑设计和可视化界面开发两个基本层面。

1.1仿真对象模型

仿真对象的模型设计是干预、表现和分析仿真过程的实体要素,是决定仿真系统严密性、鲁棒性、可控性的关键环节。仿真对象模型设计的关键是对各作战单元的状态分工的充分考虑,仿真对象的特性和状态通过属性变量来表述控制,仿真对象的全部状态属性,构成了虚拟作战环境的总体状态空间,各仿真对象属性相互依存影响,对仿真对象属性的更改程度直接决定了仿真过程的复杂程度。

1.2仿真算法库

反坦克导弹连指挥控制系统的仿真算法库的建立是指设计整理出指挥控制系统中的基础的、典型的算法模型,定义相关数字接口,形成算法构件,实现系统的模块化、体系化功能,这对于仿真系统的有效性、通用性有着至关重要的意义,涉及仿真系统物理结构、工况及状态迁移、信息交互、信息融合等技术,主要包括:

1)基本数学库;

2)数据类型转换库;

3)时间运算库;

4)车体运动模型;

5)导弹运动模型库;

6)弹药信息组装及解析库;

7)扩展数学库;

8)坐标系转换库;

9)休眠模块。同时,仿真系统的通用软件接口,可接入典型的反坦克导弹连指挥控制模型。

1.3事件响应关系

从仿真的角度来说,模型的执行序列是由作战模拟系统的事件调度机制决定的,即使每个仿真对象都设计得完备有效,而模型间的事件调度机制不充分严密,可能无法实现想定的作战意图,甚至得到扭曲的仿真结果。事件响应关系就是进一步明确指挥控制系统中各单位分工、作战使用需求和工作流程,建立起仿真对象的调用顺序、调用条件和调用结果的规则库,来体现模型运行的约束性。

2可视化界面开发

反坦克导弹连指挥控制仿真系统的可视化平台建立了一个可视化仿真框架,包括分布式仿真系统配置模型和运行机制的可视化,以及配套的管理及开发工具,实现了仿真任务的可视化定制。同时,建立了一个具有多种指挥、显示功能的综合指挥显示系统平台,实现了整体作战态势及武器系统、车辆、设备的状态和迁移过程的二维、三维可视化集中显示和集成控制。以下为部分典型操作的可视化开发界面:

操作系统论文第5篇

信息是社会发展的重要战略资源。随着信息技术的发展,国际上围绕信息获取、使用和控制的争斗愈演愈烈,信息安全已成为维护国家安全和社会稳定的重要因素之一,并且国内外都给予了极大的关注和投入。因此,如何加强信息安全学科建设,促进信息安全专业课程改革,为国家和社会培养出符合社会需要的复合型、应用型信息安全专业人才是当务之急。操作系统课程是计算机科学与技术、信息与通信工程的核心课程之一,信息安全专业设置后,操作系统课程也是信息安全专业的核心主干课程之一,其重要性是毋庸置疑的。为了适应信息安全专业的需要,高校应对操作系统课程进行改革,结合信息安全专业的培养目标,将信息安全专业知识渗透到操作系统的教学内容中,做到课程间的有机结合,使学生能够将信息安全理论融入到操作系统设计中,为后续的课程打好专业基础。本文将从理论教学和实践教学两个方面,讨论信息安全专业操作系统课程的教学改革。

二、理论教学改革

操作系统是计算机中最重要的软件,它能够对计算机的硬件和软件进行有效的统一管理,便于用户使用计算机。操作系统课程是计算机类专业一门重要的基础课程,其教学内容主要包括进程管理、处理机调度与死锁、存储器管理、设备管理和文件系统五大部分。系统安全问题是信息安全的一个重要研究方向,但是在传统的操作系统课程中并没有涉及到信息安全的相关知识,信息安全专业学生在学习完操作系统课程后,无法将其所学的知识与现有的系统安全问题相结合。因此,针对信息安全专业的特点,理论教学改革应先从教学内容入手,将信息安全中的系统安全技术与操作系统课程的现有内容整合,通过讲授操作系统各个部分的实现原理,让学生深入了解对应系统安全产生的原因和解决方法。如在讲授内存管理时,传统操作系统课程的教学内容需要学生掌握操作系统是如何对内存进行分配、回收和调度。在信息安全专业的操作系统课程中,可以将缓冲区溢出的原理加入其中,使学生真正了解缓冲区溢出攻击的实现方法和预防手段。通过上述将操作系统教学内容和信息安全知识有机的结合起来、相互渗透,学生对操作系统原理和系统安全知识的理解会更加透彻,同时为后续的计算机病毒与原理、网络攻击与防御、逆向工程等信息安全专业课程打下了坚实的基础。

三、实践教学改革

实践教学内容是信息安全专业课程的一个重要环节。为了培养符合社会需求的工程性应用人才,在信息安全专业课程的教学过程中,强调理论和实际相结合的教学方法,在保障理论教学的基础上,强调实践教学,提高学生的工程实践能力。本节将从实验教学、课程设计和实践活动三个方面来讨论如何对操作系统课程的实践教学内容进行改革。

1.实验教学。

为操作系统课程开设合适的实验项目是非常困难的,主要问题在于很难找到合适的实验环境,大多数的操作系统相对于学生来说,太大、太复杂,学生很难在短时间内将操作系统的设计结构和实现代码弄清楚。尽管可以让学生分块的实现操作系统的各个功能,如CPU调度、内存管理等,但是在复杂操作系统中,改变其中的一个功能模块,其工作量也是非常巨大的。因此,在选择操作系统作为课程环境时,需要考虑以下问题:(1)所选操作系统的体系结构和实现方法要尽量简单,便于学生快速掌握系统的实现框架,理解各部分的实现思路和方法。(2)所选的操作系统源代码完整且完全公开。学生可以通过在学习现有操作系统源码的基础上,深入理解操作系统的设计原理。(3)所选操作系统有相应的说明文档,便于学生学习,培养学生的程序设计思维。(4)所选操作系统允许程序员修改,可以重新编译、运行。允许学生对操作系统代码进行修改,是对学生实践能力培养的重要手段。学生根据课上所学的理论知识,可以自行修改操作系统功能,并且便于教师添加信息安全的相关实验。根据以上几点,Minix系统是较适合作为操作系统课程实验环境的系统,而且Minix系统中已经包含了一些安全机制,如特权管理和访问控制。在操作系统课程的实验教学环节中,首先要求学生根据所学理论知识读懂对应的Minix系统源代码,然后要求学生分模块的实现对应功能。操作系统原理课程与教学内容同步的实验学时为20学时,除了传统操作系统实验内容:进程管理(4学时)、进程通信(2学时)、内存管理(4学时)、文件系统(2学时)之外,实验内容中还添加了信息安全相关实验缓冲区溢出(2学时)、访问控制(2学时)、加密文件系统(2学时)、资源竞争(2学时)。实验内容包括验证性和设计型两类实验,培养了学生的实际动手能力。

2.课程设计。

除了与操作系统课程同步的实验教学之外,还可以开设课程设计,让学生能够利用所学操作系统知识,开发、实现相关工具,培养学生的综合设计、开发能力。操作系统课程的实验教学内容是让学生分模块的设计、实现操作系统功能,此类实验对学生理解操作系统的整体架构和工作原理帮助不大,学生无法将各个小的功能模块联系成为一个完整的管理软件,即操作系统。而课程设计的目的是将操作系统课程和其他信息安全相关课程的教学内容相整合,最终实现能够满足实际需求的工程项目。课程设计相对实验教学来说内容较丰富,需要学生组队、合作完成对应的课程设计项目。针对信息安全专业的特点,可以考虑添加与信息安全相关的实验项目,如PE(PortableExecutable)文件分析、Windows病毒开发、系统安全工具开发等。通过上述实验项目,让学生在了解操作系统原理的基础上,开发实用的信息安全软件和工具。通过开设课程设计,既能锻炼学生的实际动手能力,又能培养学生的团队协作能力。

3.实践活动。

除了课堂教学之外,鼓励学生参加各项实践活动也是非常有必要的。组织学生成立大学生创新团队,指导学生申报大学生创新性实验项目,参加校内外举办的信息安全竞赛都是提高学生实践能力的途径。本校每年都组织本专业内、校内、省内及全国信息安全竞赛,同时积极鼓励学生参加校外信息安全竞赛。在此类竞赛中一个重要的考核部分是关于系统安全,即对操作系统漏洞地挖掘和利用,通过以学科竞赛为平台,将操作系统教学引向纵深方向,实现了理论与实践的有机结合,优化了学生的知识结构,促进了学生与其他高校学生和教师的交流,以比赛来使学生得到进步。此外,学院还邀请其他高校、公司有经验的教师、优秀的校友和技术人员来校讲座,增加学生对外沟通和交流的机会,让学生能够接触到新的、实用的业界动态,为今后工作做准备。从实践活动效果来看,学生的实际开发能力提升很快,能够将理论知识更好地融合到实际开发中。此外,实践活动还可以促进学生创新团队建设,通过高年级带动低年级学生,使新生能更早、更快地融入到专业学习中。本校通过几年的尝试,取得了初步成绩,学生在各项信息安全赛事中取得了优异的成绩,培养出来的学生也受到了用人单位的认可。

四、结论

操作系统论文第6篇

计算机操作系统是计算机硬件和各软件间的接口,为计算机硬件的细节进行屏蔽,为各种应用软件提供接口和服务。该课程的教学目的是为让学生熟悉计算机操作系统的基本知识和方法,为将来走向相关岗位服务。该学科是具有较高工程性的计算机专业基础课程《,计算机操作系统》教学任务既要加强学生的计算机操作系统理论高度,同时要重视实践操作。在实践课程中,学生不断探索和提高,培养学生对计算机操作系统的热情和好奇,帮助学生独立学习和思考,鼓励学生合作探究和质疑,在实践过程中增强对知识的体验和追寻正确解决问题的方法《。计算机操作系统》实践教学质量的高低,会影响将来学生在工作岗位中的综合素质与工程实践能力。

2《计算机操作系统》实践教学改革措施

2.1化难为易,从主观和客观两方面改进

2.1.1增强学生的主动性

首先,注重学科总动员。在实践课刚开始时,教师要通过实例为学生讲解计算机操作系统实践学习的重要性,让学生明确实践教学对本课程的理论学习和将来就业后的实际应用,都产生重大的影响作用。学生从新课伊始,就树立了正确的目标和学习的方向,有利于将来学习中有针对性的加强编程和动手能力。其次,教师要结合自身经验,列举以前学生的学习案例,将操作系统实践学习的特点以及重难点告诉学生,同时要进行学习方法的传授,让学生能根据自己的学习基础和能力,有计划的进行课前预习和资料的准备,为将来课堂效果的提升奠定良好基础。再次,在实践课堂上,教师要避免反复强调教学内容的重要,应该在安排作业的时候,有目的的对学生进行启发式教学,例如从应用或工程实践的角度,运用案例的形式对课堂所讲的实践教学内容进行多层次、全方位描述,挑战学生的思维,增加竞争意识和学习主动性。

2.1.2在客观上,化难为易

教师在实践教学中,要充分发挥主导者和点拨者的重要作用,能针对学生的学习难点和典型问题进行讲解,在合理设问和启发中,调动学生的学习自觉性,开发学生的思维能力。首先,分层次设计实验把学习者划分为:终端用户、程序员和系统设计者。五类实验:基础性实验、应用性实验、综合性实验、设计性实验和创新性实验。基础性实验是最简单的实验,目的是使学生熟悉某种操作系统的使用与配置。允许学生选择自已感兴趣的操作系统,为便于后续实验的开展建议选择Linux操作系统;应用性实验的难度略高于基础型实验,要求学生模拟实现一些经典的操作系统算法;便于学生理解操作系统原理和经典算法;综合性实验要求学生研究学习现代主流操作系统。其次,帮助学生快速入门以实验“模拟设计页面调度”为例:模拟设计页面调度实验目的,加深对虚拟存储管理算法的理解。实验内容:(a)模拟页式虚拟存储管理中的硬件地址转换和缺页中断;(b)用C语言设计一个算法,模拟页面调度,采用FIFO算法实现缺页中断;(c)程序应能显示或打印物理地址及是否缺页,并计算出缺页中断率,分别采用FIFO算法和LRU算法进行比较,观察并分析结果。再次,保护学生学习热情教师要保护学生的学习积极性,学生遇到疑难问题或者不能独立解决的疑惑,教师应对给予知识上的补充和学法上的指点。教师可以鼓励学生科学运用网络资源,自行到网络上进行知识更新和充实,搜索知识、观点、技术等,参加网上论坛或者班级学习群讨论留言。

2.2由浅入深,多角度多层次学习掌握Linux系统

教学时可以选择Linux作为实验操作系统,因为许多学生对它都很陌生,做实验时必须遵循认知规律,要由浅入深、循序渐进的操作。首先,了解Linux系统的基本操作流程,对操作员接口和程序员接口有所掌握。学生在这一环节中,可以比照早已熟练的Windows操作系统的一系列功能,自行领悟Linux操作系统。其次,了解操作系统的基本步骤和条件后,步入应用性实验环节,进行编程模拟,学会操作系统的部分功能。当学生学习兴趣提高,有了一定基础后,可以逐渐增加实验内容的难度,让学生实现操作系统功能的阶梯式进步,最后达到熟练掌握和应用,体验获得知识和能力的成就感。学生在这个过程中,增强了团队精神,锻炼了领导力和服从力,为将来走向工作岗位提升了综合素质。

2.3优化考核方式,加强实践教学质量的监控

要提高《计算机操作系统》实践教学效果,必须避免传统只重视书面成绩的考核方式弊端,应该增强对实践教学质量的全面监控,提高操作系统课程的实效性。具体说来,可以从两方面进行改进:首先,加大实验成绩的比重《。计算机操作系统》要看综合分数,提高实验成绩的分数能引起学生对实验教学的直接重视。其中基础性和应用性的实验,学生必须撰写实验包括,写出算法和数据结构;对综合性、设计性、创新性的实验,学生应该用论文的形式上交。这样的考察方式可以让学生将理论和实践更好的结合,同时根据上交作业层次给予不同的权值,能增强学生的团队协作能力,增强学生在实验中的体验,提升理论素养和高度。其次,加大开放性评定的比重。对设计性和创新性实验进行考核时,要在对报告进行考核的基础上,综合各种形式进行合理量化。团队形式的实验,要求各小组组长提交任务分配和执行情况分析报告,将每个人的合作能力、资料搜集与分析能力的等列入评定体系。

操作系统论文第7篇

论文摘要:实时操作系统(RTOS)是复杂控制系统中必不可少的一部分,它能按照任务的优先级实现多任务调度,通过信号量、事件标志来实现任务的同步,消息队列和邮箱机制来实现任务之间的通讯,中断机制来实现突发事件的管理。较传统的前后台系统,它具有更高的实时性、稳定性。介绍了当前在国际汽车工业界日益占据主导地位的汽车电子开放式平台系统(OSEK/VDX)规范。介绍了NEC汽车电子专用实时操作系统RX850,列举了其他RTOS并分析了其优缺点,建立了基于RX850的RTOS软件开发平台,实现了汽车发动机控制模块任务的调度,并对RTOS的多任务进行了软仿,这对于复杂软件系统开发是非常有实际意义的。

引言

随着国内汽车电子产业的不断升级和研发投入不断加大,国内生产的汽车电子简单的ECU已经越来越普及,例如车载音响,仪表,车身控制BCM,动力转向EPS等等。越来越多的企业将精力投入到比较复杂的控制领域,比如发动机控制,防抱死系统(ABS)等,对于这些逻辑复杂、实时性和安全性高的控制任务,传统的前后台系统模式非实时处理的弊端越来越呈现,这就势必需要用到实时操作系统来管理这些任务。

OSEK标准是1993年德国汽车工业界联合推出了“汽车电子的开放式系统及接口软件规范”,即OSEK(opensystemandthecorrespondinginterfacesforautomotiveelectronics)。1994年法国汽车工业界的相似规范VDX(vehicledistributedexecutive)和OSEK规范合并,从而形成OSEK/VDX规范体系。当前OSEK标准已经成为汽车电子软件开发领域中的通用标准,旨在增强软件代码安全性、移植性,减少软件开发周期。

目前,市场上通用的开源RTOS有很多,比如μC/OS-Ⅱ,FreeRTOS,Linux-2.6等,但是这些核多半是用于通用领域或者安全性要求不太高的领域,如果将这些移植到汽车电子动力安全控制领域,是不太合时宜的;而且,这些核本身不是基于OSEK标准,如果引入OSEK标准,无疑加大了内核移植的难度。NEC电子的实时操作系统RX850是一款基于OSEK标准的汽车级专用RTOS,其内核的实时性已经得到第三方的专业测试。它已经被移植到了NEC芯片的集成开发环境PMPlus和GreenHills,客户只需要在IDE(IntegratedDevelopEnvironment)中编写脚本文件来配置RTOS即可通过编译,使得客户从底层驱动编写到RTOS任务调度轻松实现“无缝结合”,大大缩短了RTOS移植的开发周期。本文建立了基于NEC电子32位车身专用芯片V850/Fx3的软件平台,并介绍了如何实现RX850操作系统的配置,以发动机控制模块为控制模型来实现多任务的实时调度,最后通过软仿工具来分析该内核的效率和任务调度的实时性。

一、系统平台介绍

本系统采用NEC电子的32位车身专用芯片V850/Fx3系列,V850是NEC电子的32位微处理器核,5级流水线控制,内部32个32位寄存器,乘法/除法指令,数据空间支持最大4GB线性寻址能力,代码空间支持64M线性寻址能力,内部1MB的codeflash,60KB的RAM空间,32KB的dataflash用作EEPROM模拟。

基于OSEK标准的RX850实时操作系统符合以下标准:操作系统规范(OSEKOS)、通信规范(OSEKCOM)、网络管理规范(OSEKNM)和OSEK实现语言(OSEKOIL)。其中OSEKOS是针对汽车应用特点而专门制定的一个小型RTOS规范,着重以下几个方面:(1)可移植性,所有API都是标准化的并且在功能上都有明确的定义;(2)可扩展性,OSEKOS旨在通用于任何类型的ECU,因此一方面系统要高度的模块化,另一方面又要能进行灵活的配置;(3)汽车应用的特定需求,诸如可靠性、实用性和代价敏感性等。相应的,OSEKOS静态配置可以通过OS2EKOIL语言实现,用户在系统生成时静态制定任务的个数、需要的资源和系统服务。OSEKCOM为通信网络中的数据交换提供了标准的接口和协议。OSEKNM为监视网络的流量提供了一组标准的功能函数,以保证网络的安全性和可靠性。

二、RX850内核配置

由于RX850已经被嵌入到IDE,因此用户直接编写内核脚本文件即可,下面介绍如何来配置内核。

1.系统时钟设置

clkhdrINTTM0EQ0//选定TimerM为时间片中断源

2.堆栈设置

RX850的堆栈分为系统堆栈和任务堆栈,

POOL0功能:系统基本表信息、准备队列、每个管理块、任务堆栈、中断句柄堆栈(系统堆栈)、可变长度内存、不变长度内存。

POOL1功能:任务堆栈、中断句柄堆栈(系统堆栈)、可变长度内存、不变长度内存。

POOL0和POOL1都可以作为任务堆栈,即使没有POOL1也可以。配置如下:

intstk0x400:pool0//系统堆栈大小为0x400

tskTSK1_TSK10x050:pool10x06TTS_DMT0x00ei//TSK_ID_1ms任务堆栈大小0x50

3.允许最大优先级任务数

maxpri0x1f//允许最大优先级任务数为0x1f

4.信号量设置

semSem_Task10x00//设置了信号量Sem_Task1为0

semSem_Task20x00//设置了信号量Sem_Task2为0

5.事件标志设置

flgflg_Task1//设置了事件标志flg_Task1

flgflg_Task2//设置了事件标志flg_Task2

5.邮箱设置

mbxID_Task1TA_MPRI//设置Task1的邮箱

mbxID_Task2TA_MPRI//设置Task2的邮箱

6.中断设置

RX850的中断分为直接中断和间接中断两种,直接中断不受RX850制约的中断句柄,理论上接近硬件中断的速度,其缺点是需要用户自己写中断处理句柄,包括:(1).寄存器压栈;(2).换向,跳转到中断句柄的开始;(3).调用系统命令;(4).返回到调度;间接中断的中断句柄在RX850的中断预处理后才被启动,优点是简化了句柄处理过程,缺点是由于RX850的预处理降低了速度,其处理过程如下:

间接中断配置如下:

inthdrINTAD_AD_Interrupt//AD间接中断句柄配置

inthdrINTC1REC_CAN_Ch1RxInt//CAN间接中断句柄配置

7.固定/可变内存池设置

当系统需要交换较大的数据时,此时任务堆栈是不够用的,需要开辟一段内存来使用。RX850支持两种方式的内存配置,固定内存池和可变内存池。固定内存池由用户自定义内存池的大小,可变内存池根据实际应用系统动态的定义所需内存大小,配置如下:

mpfMPF_ID_MBX0x08:pool150

//固定内存以0x08字节为单位排列,大小为50*0x08;

mplMPL_ID_Task10x08:pool1

//可变内存0x08字节为单位排列

8.系统周期循环中断设置

cycCYC_INT_TIMER_CYC_IntTimerTCY_OFF10

//系统周期循环中断时间为10个时间片

以上完成了操作系统的配置,然后通过NEC的IDE即可生成操作系统的.s和.h文件,将此两个文件包含在工程文件中即可。超级秘书网

三、RX850软仿及结论

通过以上配置,选择发动机控制模块为对象,下面对RX850进行软仿。NEC电子提供专门的软仿工具AZ,在IDE中打开AZ。

通过上图可以很方便的看到每个任务的实时调度情况和CPU内核的使用效率。目前CPU的空闲率为94%,很多任务实际上没有被调用,用户可以根据实际情况将更多的功能模块放在API任务中来运行。软仿只能提供模拟的仿真,如果用户需要更精确的trace工具,则需要用硬仿来实现。