首页 > 文章中心 > 操作系统论文

操作系统论文

前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇操作系统论文范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。

操作系统论文

操作系统论文范文第1篇

就象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核心。

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

操作系统论文范文第2篇

论文摘要:实时操作系统(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工具,则需要用硬仿来实现。

操作系统论文范文第3篇

操作系统是对计算机的各类软、硬件资源进行管理以充分利用计算机系统中的各类资源,并向用户提供良好的工作环境和运行界面的系统软件。操作系统论文作为在计算机硬件上铺设的第一层软件,提供了用户使用计算机的接口。因此,操作系统开发人员既具有软件开发方面的知识,也要了解硬件的相关知识。操作系统是一门综合性课程,它由许多概念、设计思想及算法等构成,因此,具有概念抽象、理论性强、知识点多等特点。操作系统是计算机专业一门重要的专业主干课,其教学目标是帮助学生了解计算机硬件和软件的关系、掌握操作系统各种功能的实现算法,注重通过对操作系统抽象的理论知识及系统结构的学习,培养学生开发和设计大型软件的思维和方法,提高学生软件开发能力。因此,操作系统这门课程配有相应的实验课程。 

然而在实际教学中发现,该课程并未能有效的提高学生独立开发软件的能力,仅仅实现了让学生了解操作系统的构成及功能实现这一基本教学目标。这个问题的出现与我们课程特点密不可分。首先,课程设置偏向理论,课程内容偏向软件设计和算法实现,虽配套有实验课程,但比例较低,不利于提高学生的实践能力。其次,操作系统涉及到各类软硬件资源,因此,需要专门的实验平台,否则,直接采用传统的编码和调试方法及有可能导致系统崩溃。最后,对于操作系统这种大型软件的开发,需要学生具有较强的编程开发能力,实际上,很多学生并不能快速有效地将算法转化为可执行程序,少数学生虽能快速实现局部功能但对软件的整体思维和开发能力欠缺,目前大部分的实验工作主要集中与操作系统部分子系统功能的实现。本文对操作系统理论教学及实验教学中学生遇到的各种问题进行归纳总结,进而探讨培养学生的软件整体开发思维和方法,提高学生的独立软件开发能力。 

1 问题归纳 

1.1 局部思维方式 

所谓局部思维方式是指学生在学习操作系统知识时,只关注当前学习或实践的内容与知识点,很少能将当前知识与前面的知识联系起来,这导致学习完一个知识点后,学生很可能不知道该知识点是为了解决什么样的问题。这样的局部思维方式是学生长期的学习过程中养成的不良习惯,不仅在学习操作系统这门课程中出现,在其他课程的学习中也同样存在。 

操作系统是一个整体性软件,各章节的知识都是相互关联的,因此,在这门课程的学习过程中,这种局部思维方式带来的问题就更加明显。下面总结了几种由局部性思维带来的普遍性问题。 

关注知识细节,忽视知识的宏观应用。实际教学中发现,很多学生在学习的过程中常常发生一叶障目的现象,通常的表现是学习了当前的知识点后,不知道学习该内容的目的,或者不知道该知识是用于实现操作系统的哪部分的功能的,因此,常常在学期结束后询问学生什么是操作系统,它有哪些构成和基本功能,很多学生还是一头雾水。这些主要是由于学生缺少以宏观的视角来看待和解决问题的能力,不能正确认识每个细小知识点在整个宏观问题中所处的位置。这就好比学生们仔细认真的观察了一砖一瓦(各个细小知识点)却不知道砖瓦是用来盖房子(开发大型的系统软件操作系统)的,或者即使知道使用砖瓦来盖房子,也不知道在什么地方什么时候使用什么材料来盖房子,概其主要原因就是学生过于关注一砖一瓦的实现细节而忘记关注砖瓦的使用过程,即只关注微观的知识细节,而忘记学习宏观的知识应用方式,这也是现在学生学习中的普遍性问题。

关注知识点个体,忽视整体联系。操作系统课程中,每个章节内容对应部分子功能的实现,每个子功能相互协作才能构成一个完整的操作系统软件。学生在学习过程中较多关注每个子功能的实现,而忽视了它们之间的联系,因此,无法有效的将各个子功能拼接成一个完整的系统软件。例如,学生不清楚I/O系统与用户之间的接口在哪,如何让处理机管理系统、存储管理系统、I/O系统等协同工作,等等。 

1.2 知识储备不足 

实际教学中,除了上述局部性思维方式外,学生知识储备不足也是影响课程学习的另一主要原因。我们知道操作系统是一门综合性课程,想要学好操作系统,既要了解软件开发的相关知识,也要有硬件的基础,因此,知识储备不足会直接影响操作系统的学习。其表现归纳如下。 

⑴ 常见的概念模糊。例如,逻辑地址空间与物理地址空间、程序的链接、数据结构、虚拟化等等常见概念的理解模糊。还有很多同学不了解内存单元的地址,更不知道内存地址的作用是什么,因此,在介绍地址映射、数据装入内存的过程需要花费大量的时间去补充基础知识。 

⑵ 硬件基础薄弱。计算机系统硬件组成知识薄弱,不了解计算机系统的工作流程,不了解计算机常见硬件的基本功能和基本特性。 

⑶ 代码实现能力差。操作系统实验课程的教学中看到学生的编程能力普遍较差,且没有软件开发基础和思维方式,很多学生只注重功能的实现,不关注各个部分的接口,导致各子系统可以正常运行,但是,无法拼接成完整系统。主要表现为编码随意,乱用GOTO语句,数据结构定义不规范,指针使用随意。例如,通过printf(“%d\n”,i),学生编写输入语句scanf(“%d\n”,&i),而实际规范的语句应为scanf("%d",&i)。 

2 操作系统课程教学的几点思考 

基于上述问题,本文针对操作系统教学提出几点改进意见。 

2.1 理论与实践相结合 

注重理论教学的同时,也要加强学生的实际应用能力的提高。现在的学生更加看重知识的实用性,将自己所学知识转化为实际应用和实践是学生自主学习的主要内在推动力。单纯的进行理论教学,会让学生感觉操作系统是一门生涩枯燥毫无用处的一门课程。 

在教学中,我们将理论和实践相互结合,详细阐述理论知识,让学生充分理解相关工作原理及实现算法,再通过配套实验课程指导学生将理论知识转化为实际应用,通过这一转化过程,提高学生对操作系统实用性的认识,激发学生自我学习的内在动力。理论转化为实践的过程中,学生会逐渐发现只有扎实的理论基础积累才能快速的转化成实践,提高了学生对理论知识学习的重视程度,从而形成理论指导实践,再由实践去反思理论的良性循环。 

在理论转化成实践的过程中,学生能够将空泛的概念落到具体实处加深印象和理解,例如,内存的物理地址空间,可以通过编码的调试过程查看每个内存单元的存储内容,充分理解内存的数据存储及变化。除此之外,通过理论转化代码实现的过程能够快速有效的提高学生的编程能力,发现自己在编码方面的不足和问题,以及提高自身的软件设计能力。 

2.2 整体与局部相结合 

建立学生对于操作系统的整体概念,关于处理机管理、存储器管理、I/O设备管理、文件管理及用户接口等模块都是操作系统的子系统,这些子系统相互关联、相互协作才能实现操作系统对各种软硬件资源进行管理并为用户提供良好工作环境的功能。 

教学中充分强调操作系统的整体结构和设计方法,在对整体结构和功能充分了解以后,再介绍操作系统的模块划分。透彻讲解每模块的设计思想和功能实现,让学生在潜移默化中学习软件开发的思维方式和解决方案,逐渐提高学生运用已学的设计思想解决问题的能力。只有对每个子模块具体功能原理和实现方法充分掌握后才能快捷迅速的将它们从理论知识转化成代码,也只有在每个子功能的代码都能充分实现的情况下,才有可能将它们连接成一个完整的大型的操作系统软件。 

整体是由局部组成,只有每一子模块都实现了才有可能连接成整体,而整体不是对每个子模块的简单拼凑,各个模块之间如何相互协调共同完成用户任务是需要在一开始的软件整体设计中考虑的问题,此外,软件设计之初我们还需考虑各子模块之间的接口。因此,在整个教学过程中,我们遵循“整体-局部-整体”的一个教学过程。通过这个过程,让学生充分了解整体与部分之间的相互关系,加深理解。 

2.3 层次式教学 

操作系统课程是按年级统一开课的,但是同一个年级,不同学生的差别也很大,比如,他们各自的知识储备、自身的理解力和领悟力、兴趣爱好,比如有的善于思考而有的喜欢动手编程等等。因此,对不同学生采用统一标准显然是不合适的,对于能力强、精力充沛的学生,这个统一的标准不能激发他们的潜能,而对于知识储备相对较弱、能力稍差的学生,这样的统一标准又会打击自信心。因此,对于操作系统无论是理论教学还是实验教学,都建议采用层次式教学,对于不同水平的学生提出不同要求。 

在理论教学中,我们将掌握操作系统的基本概念、设计思想和算法作为基本教学目标,对于能力较强的学生在教学中提示一些课本中没有的知识点去拓展知识空间和思维方法,比如:在学习了用户空间和内核空间的基本概念后,让有能力的学生了解用户空间的数据如何与内核空间的数据进行交互,实现两者之间数据交互的方法有哪些。而对于那些动手能力较强的学生可以引导他们用1~2种方式去实现将用户空间的数据传递到内核空间内。 

在实验教学中,基本的教学目标是独立实现操作系统中的基本算法,如进程同步、进程调度算法、银行家算法及内存的分配回收算法等等。对于能力较强的学生可以引导他们去读一些开源linux操作系统的源代码,有选择的对部分功能模块进行优化改进,然后再编译链接,最终将该改进植入操作系统中,以此激发学生的学习兴趣。 

3 结束语 

操作系统课程的教学不仅需要教师不断更新教学内容和教学工具,还要求教师能够根据学生的特点因材施教。本文总结了归纳操作系统在理论教学和实验教学中出现的一些常见问题,如局部思维方式问题和知识储备不足代码实现能力差的问题,并针对这些问题提出三点改进建议:强调整体与局部之间的相互关系,形成整体-局部-整体的教学模式;要求理论联系实际,将理论知识应用到具体实践中去,从理论到代码实践,再通过代码实践过程反思理论方法的有效的教学方法;针对不同学生采用层次式教学手段,设定基本教学目标,对于完成基本教学目标的同学引导其完成更高层教学目标,提高学生学习兴趣和能力。 

参考文献(References): 

操作系统论文范文第4篇

[关键词]企业设备管理 信息化 重要性

[中图分类号]C29 [文献标识码]A [文章编号]1672-5158(2013)06-0161-01

企业的设备管理是指企业根据经营方针和目标,从设备的调查研究人手,对有关设备的规划、设计、制造、选购、安装、调试、使用、维护、大修改造、直至报废的全过程,相应地进行一系列技术、经济组织管理活动的总称。由此可知,企业的设备管理是一门综合性技术学科,其内容涉及到多个方面。其基础理论涉及到系统论、控制论、信息论、管理经济学,组织行为学等许多领域。企业的任何一项活动基本上都是依靠设备的力量进行操作和完成的,如果没有一个良好运作的设备系统就很难保证企业工作的顺利开展。可以说,设备的管理是企业正常运转的基础,其企业经营的前提,能够降低生产成本,也是保证企业安全卫生和环境优美的重要条件和促进企业技术进步的关键因素。

一、实现企业设备管理信息化的意义

1 实现企业设备信息化管理,能够保证企业的资产管理更加有效和形成完整的体系

企业的生产经营已经离不开科技力量的支撑,在整体运作过程中应当充分利用科技的力量对企业的设备管理实现信息化。通过对传统的管理模式的转变,提高生产率,降低风险,优化资源配置。能够保证工作人员及时、清楚的了解设备的运作情况,并在出现问题时做出正确的抉择,排除风险。

2 信息化的设备管理,对检修费用的控制更加规范

在整个企业范围内实现以项目管理为主的检修维护运营体系(如使用ERP或EAM等方式),以先进的管理手段、规范的管理方式和先进的管理思想,实现对检维修项目的费用、备品配件、进度的跟踪和控制,做到全过程管理,优化企业资产管理、通过先进的信息技术手段,全面提升设备管理工作的质量和水平。

3 信息化的设备管理,能够支持设备管理的持续改进与持续发展

企业设备信息化管理,能够保证各项工作的开展都能顺利和有序,提供企业效益。同时,能够为企业的各种设备的管理提供有利的借鉴,促进企业管理的改进保证企业的设备管理工作随着企业管理的发展而同步发展。另一方面,能够实现设备的良好运行和规范化操作,对设备运行情况进行及时、准确的记录和分析,保证各种考核指标的及时、准确和有效性。

4 实现企业设备管理的信息化,能够从多个方面提高工作人员的员工素质为了让工作人员掌握信息化下的设备管理技术,需要对其进行培训,转变传统的管理思想,为在企业中实现大范围的信息化建设,做好充分的准备。

二、我国企业设备管理信息化的现状

实现企业设备管理的信息化具有重要的意义,我国企业也在致力于这方面的发展和推行,但是应当看到,当前,我国企业设备管理在实现信息化的过程中还存在着问题。

1 企业设备管理信息化起步晚

相比于西方发达国家,我国企业设备管理信息化的发展比较晚,而且存在着发展水平不一,而且,企业对于设备管理的认识不足,相关的信息化问题不甚了解。

2 在现行的企业设备管理体系中没有先进的管理模式和方式

由于我国企业设备管理信息化起步较晚,没有形成有效的管理模式,在企业管理运行中水平有限,而缺乏对企业设备管理特点与要求的了解与研究,难以真正提升企业设备管理的水平。

3 我国企业设备管理信息化的系统过于落后

当前,我国企业在信息化管理上所使用的系统没有形成一个完整、有效运作的整体,在每一项工作中基本上都是独自运行,难以彼此协调,这就一定程度上阻碍了其功能的发挥,同时,由于各管理系统缺少统一的设备编码体系、规范的数据结构,不同在多个系统之间实现数据共享。

三、构建和完善企业设备管理信息化的建议

企业设备管理信息化的意义,在上面的内容中已经进行过充分的论述,设备管理的信息化能够保证工作人员在企业设备运作过程中对设备的基本情况及时的了解,并防止出现设备运转失灵,出现危险的情况,同时也可以针对已经发生的问题及时采取有效的措施进行改进。设备管理信息化使设备管理工作从静态走向动态,并向多功能方向发展同其他信息化工作一样,设备管理信息化建设也是一项较复杂的系统工程,应制定较详细的实施措施以保证其顺利建成。

1 改进企业管理的理念,重视企业设备管理的信息化构建

在构建企业设备管理信息化的过程中首先要做的就是对管理理念进行改进,要充分认识信息化管理是时展的要求,也是实现企业利益最大化的根本途径。然后从思想的认识转变到行动上的改进,切实加强设备管理的信息化建设,总之,要从思想上、组织上、力量上、措施上给予充分重视,将其作为企业发展的重大战略来实施。

2 在构建设备管理信息化的过程中注重建设必须同与管理创新和机制转变的相结合

设备管理信息化过程中所使用的操作系统,不是将过去由人所完成的工作交给系统完成,也不是通过计算机工作替代过去的人工作业,而是,在企业设备管理中实现一种理念与科技信,息化的有机结合,只有这样才能真正实现提升设备管理质量的目的,这种理念就是实现管理创新和机制的转变。

3 整合各企业的设备管理软件,统一业内的各类编码标准

目前我国的各使用的设备管理软件和标准大都独立运行,不够统一。对此,可在企业设备信息化建设过程中有必要在本行业内统一各类编码标准,如组织机构编码、设备编码、资产编码、物资编码等。

参考文献

[1]彭虎、孟凡建:《基于Intranet设备管理信息系统得开发和研究》,载《设备管理与维修》,2002年第10期

[2]瞿向东、刘勇:《对计算机辅助设备管理系统设计中几个问题的探讨》,载《计算机应用》,2010年第5期

操作系统论文范文第5篇

一、运用微格教学理论,准确有效地反馈教学信息

微格教学是在控制论、信息论和系统论原理的指导下,通过设定教学行为目标,传递教学信息,反馈调整,使教学活动达到最优化的动态平衡系统。几年来,我们化学组在培养青年教师的教学能力和提高化学教师的教学水平上运用了微格教学理论,收到了事半功倍的教学效果。在课前,我们对重点章节进行集体备课,将复杂的课堂教学活动分解,划分为导入、提问、讲解等分项教学技能,然后将分解的内容分配给各位老师,由他们提出每一部分如何讲解,这样对青年教师来讲,如何上好这节课就做到心中有数。

在备课活动中,我们还通过观看一些化学教师的教学录像,特别对一些获奖的优秀课片,我们经常搬入微格教学的角色录像中,进行分析评价,这样教学信息能够及时准确地反馈,特别有利于教师教学技能的提高。例如,我们将一个获奖的优秀课片搬入微格教学的角色录像中,微格课型为提问类型,内容为高二化学“乙酸的化学性质”一节的总结归纳部分。他首先让学生复述乙酸的酸性和酯化反应的概念及酯化反应的过程,最后得出乙酸具有的化学性质。在6min的微格录像中,提问的语言、问题的明确性,新旧知识的连贯性,语速、启发与暗示等提问的基本技能掌握很好。

在课后,我们立即对照目标要求进行反馈评价,经过重放录像观察、发现有待于改进。提问设计的层次不到位,不利发展学生的思维。那么如何设计出更高层次的提问呢?在部分讨论后,建议教师可设计:“乙酸为什么能与碳酸钠溶液反应?”,“在乙酸与乙醇的酯化反应中为什么乙醇中使用氧-18,它的作用是什么?”,“酯化反应中的酸是指什么酸?”等,这样会更有利于发展学生的思维能力。

二、贯彻微格教学理论,有利于更新教学思想

微格教学从整体上看,符合人类认识的规律,符合教育学的观点,符合控制论、心理学原理,它对提倡教师改进教法,更新教学观念具有很大的促进作用。在我校电化教学设备许可的条件下,我们利用微格教学中的模式行为规范,重点讲述和训练下面的语言表达、板书、导入、提问、讲解、演示、变化、强化、课堂组织、结束等十种教学技能。

现以一实例说明通过微格教学对改进教法的作用:有两位高中化学教师毕业年限与任职资格相同,分别用甲、乙代表,微格教学的实践录像,都以“元素性质跟原子结构的关系”一节作为讲解课型的内容。

甲老师:语言生动、教态自然、板书规范,他用流利的语言和规范的实验操作,进行比较归纳,引导学生根据反应现象,得出同一周期、同主族元素性质的递变规律。

乙老师:语言和教态略显紧张,他选在实验室上,他首先让学生根据预习的实验去做,学生通过观察现象后,很容易得出结论。

根据微格教学具有模式规范的目标要求,运用教学评价量表,很容易得出,乙在某些方面虽不如甲,但在“启发教学应用”、“知识输入的方式”上高于甲,可见,微格教学表面上看只是一种教学行为的模仿与纠正,但实质上却隐含着深刻的教学思想,对于改变传统的“注入式教学”极为有效。

三、运用微格教学理论,科学地评价教学行为

在传统的化学教学中,评价授课老师的课堂教学整体与分项的优劣上,以前没有精确的限定规则,在评价上过于笼统空泛,利用微格教学理论就能比较科学地、真实地评价教学中的每一环节。

在教学评价中,我们采用微格教学中设定的教学行为评价系统,以一定的数量参与者作为评价员,对授课教师进行评价打分。几年来,我们采用蒙城师范学校杨景宇老师编写的《微格教学之路》中的微格教学技能评价指标体系,评价量表和评价单的规定,对授课者的教学技能进行科学的、真实的评价,取得了丰硕的成果。有5人次获市级优质教学课,有7人次获县级优质教学课,发表和获奖的论文在10篇以上。实践证明,利用微格教学的评价系统,有利于教师教学技能的提高和教学方法的改进。

友情链接