前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇操作系統(tǒng)論文范文,相信會為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。
就象UNIX,Linux支持的網(wǎng)卡主要是以太網(wǎng)卡。如3COM、ACCTON、AT&T、IBM、CRYSTAL、D-LINK等眾多品牌的以太網(wǎng)卡只要安裝配置正確,都可以得到你所期望的效果。
一、Linux中網(wǎng)卡的工作原理
為了將這個(gè)問題說明的更清楚一些,不妨先簡要地剖析一下Linux是如何讓網(wǎng)卡工作的。一般來說,Linux核心已經(jīng)實(shí)現(xiàn)了OSI參考模型的網(wǎng)絡(luò)層及更上層部分。網(wǎng)絡(luò)層的實(shí)現(xiàn)依賴于數(shù)據(jù)鏈路層的有效工作。網(wǎng)卡的驅(qū)動程序就是數(shù)據(jù)鏈路層與物理層的接口。通過調(diào)用驅(qū)動程序的發(fā)送例程向物理端口發(fā)送數(shù)據(jù),調(diào)用驅(qū)動程序的接收例程從物理端口接收數(shù)據(jù)。
1.網(wǎng)卡驅(qū)動程序
簡單地說,要將你手中的網(wǎng)卡利用起來,你唯一要做的是得到這塊網(wǎng)卡的驅(qū)動程序。驅(qū)動程序提供了面向操作系統(tǒng)核心的接口和面向物理層的接口。
驅(qū)動程序的操作系統(tǒng)接口是一些用于發(fā)現(xiàn)網(wǎng)卡、檢測網(wǎng)卡參數(shù)以及發(fā)送接收數(shù)據(jù)的例程。當(dāng)驅(qū)動程序開始運(yùn)作時(shí),操作系統(tǒng)首先調(diào)用檢測例程以發(fā)現(xiàn)系統(tǒng)中安裝的網(wǎng)卡。如果該網(wǎng)卡支持即插即用,那么檢測例程應(yīng)該可以自動發(fā)現(xiàn)網(wǎng)卡的各種參數(shù);否則你就要在驅(qū)動程序運(yùn)作前,設(shè)置好網(wǎng)卡的參數(shù)供驅(qū)動程序使用。當(dāng)核心要發(fā)送數(shù)據(jù)時(shí),它調(diào)用驅(qū)動程序的發(fā)送例程。發(fā)送例程將數(shù)據(jù)寫入正確的空間,然后激活物理發(fā)送過程。
驅(qū)動程序面向物理層的接口是中斷處理例程。當(dāng)網(wǎng)卡接收到數(shù)據(jù)、發(fā)送過程結(jié)束,或者發(fā)現(xiàn)錯(cuò)誤時(shí),網(wǎng)卡產(chǎn)生一個(gè)中斷,然后核心調(diào)用該中斷的處理例程。中斷處理例程判斷中斷發(fā)生的原因,并進(jìn)行響應(yīng)的處理。比如當(dāng)網(wǎng)卡接收到數(shù)據(jù)而發(fā)生中斷時(shí),中斷處理例程調(diào)用接收例程進(jìn)行接收。
2.驅(qū)動程序工作參數(shù)
驅(qū)動程序的工作參數(shù)因網(wǎng)卡性質(zhì)的不同而不同,大致包括I/O端口號、中斷號、DMA通道、共享存儲區(qū)等。輸入輸出端口號又被稱為輸入輸出基地址,當(dāng)網(wǎng)卡工作于端口輸入輸出模式時(shí)被使用。端口輸入輸出模式需要CPU的全程干預(yù),但所需硬件及存儲空間要求較低。CPU通過端口號指定的空間與網(wǎng)卡交換數(shù)據(jù)。中斷號是網(wǎng)卡的中斷序號,只要不與其它設(shè)備沖突即可。當(dāng)網(wǎng)卡使用DMA方式時(shí),它要使用DMA通道批量傳輸數(shù)據(jù)而不需要CPU的干預(yù)。
對于一塊具體的網(wǎng)卡,如果網(wǎng)卡支持完全自動檢測,那么一個(gè)參數(shù)也不用指定,驅(qū)動程序的檢測例程會自動設(shè)定所需參數(shù)。一般情況,你需要人工設(shè)定這些參數(shù)的一部分。如果你的網(wǎng)卡使用端口輸入輸出模式,你要設(shè)定端口號和中斷號。如果你的網(wǎng)卡使用DMA模式,你要設(shè)定DMA通道和中斷號。如果你的網(wǎng)卡使用共享存儲區(qū)的模式,那你就得設(shè)定共享存儲區(qū)的地址范圍。
3.驅(qū)動程序的使用方式
有了網(wǎng)卡的驅(qū)動程序后,你可以選擇是把驅(qū)動程序加入到Linux核心之中還是把驅(qū)動程序加工成獨(dú)立模塊。Linux系統(tǒng)一個(gè)引人入勝的長處就是可以定制系統(tǒng)的核心。把需要頻繁調(diào)用的功能加入系統(tǒng)核心,可以大大提高系統(tǒng)的效率。在這種情況下系統(tǒng)啟動時(shí),系統(tǒng)核心自動加載網(wǎng)卡的驅(qū)動程序。驅(qū)動程序的參數(shù)可以通過LILO命令參數(shù)加以指
定。系統(tǒng)啟動后驅(qū)動程序永久駐留核心,不能用常規(guī)的方法將其卸載。至于定制的系統(tǒng)核心,是通過重新編譯得到的;如何編譯核心將在后文敘及。
如果把驅(qū)動程序編譯成可裝載模塊,就可以用系統(tǒng)提供的命令在系統(tǒng)啟動后隨時(shí)加載。隨時(shí)加載的好處是減少內(nèi)存開銷,易于管理,但同時(shí)也犧牲了一點(diǎn)網(wǎng)絡(luò)傳輸?shù)男省r?qū)動程序的參數(shù)是在命令行中直接輸入或通過配置文件指定。二、網(wǎng)卡安裝前的準(zhǔn)備在安裝網(wǎng)卡前,務(wù)必檢查是否具備下列條件:
1.硬件方面
以太網(wǎng)卡
網(wǎng)絡(luò)連接線及連接頭,如10base-T一般為8芯雙絞線配RJ-45接口
2.軟件方面
Linux操作系統(tǒng)
網(wǎng)卡驅(qū)動程序(目標(biāo)碼或源代碼)
*網(wǎng)卡配置程序
*軟件開發(fā)工具,如GNU工具包(包括編譯器gcc、make等)
3.系統(tǒng)配置信息
可用的端口地址
可用的中斷號
以上不帶星號標(biāo)記的是必要條件,帶星號的是視情況不同而要求的條件。具體情況在下面進(jìn)一步說明。
三、網(wǎng)卡的安裝及配置
第一步:配置以太網(wǎng)卡的工作參數(shù)
配置網(wǎng)卡就是配置網(wǎng)卡的工作參數(shù),如端口地址、中斷號等。網(wǎng)卡的缺省參數(shù)一般存儲于網(wǎng)卡內(nèi)部的EEPROM,這是網(wǎng)卡出廠前設(shè)置好的。缺省參數(shù)在大多數(shù)情況下是可行的,但如果這些參數(shù)與你的系統(tǒng)有沖突并且網(wǎng)卡又不支持軟件動態(tài)設(shè)置,那么你就要使用網(wǎng)卡的設(shè)置程序。并不是所有的網(wǎng)卡都要經(jīng)過這一步,因?yàn)橛行┚W(wǎng)卡支持通過驅(qū)動軟件及其輸入?yún)?shù)來確定網(wǎng)卡的工作參數(shù)。可以通過查閱網(wǎng)卡使用說明書來確定這一點(diǎn)。
網(wǎng)卡的設(shè)置程序與驅(qū)動程序不同,設(shè)置程序僅僅用來對網(wǎng)卡EEPROM中的設(shè)置進(jìn)行修改。網(wǎng)卡程序本身可能運(yùn)行在其它操作系統(tǒng)下,如WINDOWS95/98、OS/2、DOS等。如果是非Linux平臺,那你就先在適合設(shè)置程序運(yùn)行的系統(tǒng)中安裝網(wǎng)卡,按設(shè)置程序說明設(shè)置網(wǎng)卡參數(shù)。然后再在Linux系統(tǒng)下安裝該網(wǎng)卡。
第二步:安裝Linux系統(tǒng)
假如你將要安裝以太網(wǎng)卡的Linux系統(tǒng)本身還未安裝,那么可以先試著在安裝Linux的同時(shí)安裝網(wǎng)卡。這一步成功的前提是你的Linux發(fā)行版本包含將要安裝的網(wǎng)卡的驅(qū)動程序。
運(yùn)行Linux的安裝程序,按提示進(jìn)行操作,別忘了安裝核心的網(wǎng)絡(luò)部分。當(dāng)進(jìn)行到LAN配置時(shí),安裝程序會列出它支持的所有網(wǎng)卡的類型。看看你的網(wǎng)卡是否榜上有名。隨著Linux發(fā)行版本的不斷升級,目前RedHat6.0已經(jīng)覆蓋了常用的網(wǎng)卡類型。如果很幸運(yùn)地你的網(wǎng)卡恰好在其中,那么下文討論的很多步驟都可以不必考慮了,安裝程序會自動完成網(wǎng)卡的安裝與驅(qū)動。但如果沒找到適用于你的網(wǎng)卡類型,也不必?fù)?dān)心,繼續(xù)下一步。
第三步:手工安裝網(wǎng)卡
安裝網(wǎng)卡也就是安裝網(wǎng)卡的驅(qū)動程序。網(wǎng)卡要工作必須要有驅(qū)動程序,并且驅(qū)動程序越成熟越好。驅(qū)動程序一般由網(wǎng)卡的生產(chǎn)或供應(yīng)商提供。由于Linux是一個(gè)起步不久的新興操作系統(tǒng),網(wǎng)卡的生產(chǎn)商并不一定提供Linux環(huán)境下的驅(qū)動程序。這時(shí)候你就得從其它途徑想辦法了,比如到INTERNET上專門提供硬件驅(qū)動程序的網(wǎng)站查找一下,也可以在新聞組上貼個(gè)求助信息。總之,只有得到網(wǎng)卡的驅(qū)動程序后,方可進(jìn)行下一步。
網(wǎng)卡的驅(qū)動程序有兩種類型。一是可直接使用的二進(jìn)制代碼;另一種是驅(qū)動程序的源代碼。二進(jìn)制代碼一般是預(yù)先編譯好的可裝載模塊。源代碼可以編譯成可裝載模塊,也可以編譯成系統(tǒng)核心的一部分。如何把源代碼編譯成可裝載模塊不在本文討論之列,具體可以查閱驅(qū)動程序的說明書。
1.可裝載模塊的使用
系統(tǒng)提供了一組命令用于將驅(qū)動程序模塊載入內(nèi)存執(zhí)行。這些命令包括modprobe、insmod、Ismod、rmmod。modprobe與insmod命令功能相似,但是方式各異。
modprobe命令使用配置文
件/erc/config.modules來加載可執(zhí)行模塊。要用modprobe命令加載以太網(wǎng)卡的驅(qū)動程序,可以在config.modules文件中加入:
aliaseth0drivermodule(drivermodule是驅(qū)動程序模塊的名稱)
這行配置信息把以太網(wǎng)卡的設(shè)備名與驅(qū)動程序模塊聯(lián)系起來。modprobe命令依據(jù)這條信息,自動加載存放于/lib/library/xxxx/net目錄下名為drivermodule.o的模塊。因此要使modprobe命令找到驅(qū)動程序模塊,必須將該模塊放在/lib/library/xxxx/net目錄下。
那么驅(qū)動程序的參數(shù)如何指定呢?還是使用conf.modules文件。方法是在接著上述配置信息的后面加入下行信息:
optionsdrivermoduleparml=valuel,parm2=value2,……
這里parm1是驅(qū)動程序可以接受的參數(shù)名,valuel是該參數(shù)值;依次類推。
比如optionscs89x0io=0x200irq=0xAmedia=aui
insmod命令直接通過命令行參數(shù)將驅(qū)動程序模塊載入內(nèi)存,并可以在命令中指定驅(qū)動程序參數(shù)。例如:
insmoddrivermodule.oparml=valuel,parm2=value2,……
以上兩個(gè)命令中可以使用驅(qū)動程序參數(shù)要依據(jù)具體的網(wǎng)卡及其驅(qū)動程序而定,要仔細(xì)閱讀網(wǎng)卡及驅(qū)動程序的說明書。有的網(wǎng)卡驅(qū)動程序可以用這些參數(shù)覆蓋網(wǎng)卡本身EEPROM中存儲的參數(shù)。有的則必須使用EEPROM中的參數(shù)。有的因?yàn)轵?qū)動程序不自動檢測網(wǎng)卡使用的參數(shù),所以還得把網(wǎng)卡使用的EEPROM中的參數(shù)傳給驅(qū)動程序。
卸載驅(qū)動程序模塊使用rmmod命令:
rmmoddrivermodule.o
2.把驅(qū)動程序編譯入系統(tǒng)核心
除了以可裝載模塊的形式使用驅(qū)動程序,還可以把驅(qū)動程序編譯進(jìn)Linux核心,以獲取更高的效率。這種方式需要驅(qū)動程序的源代碼、Linux核心源代碼及其編譯工具。Linux核心的編譯過程包括配置核心、重建依賴關(guān)系、生成核心代碼等步驟。配置核心的過程是用系統(tǒng)提供的配置工具(makeconfig或makemenuconfig)重新生成用來編譯核心的眾多make文件的過程。為了讓核心的配置工具了解你的網(wǎng)卡驅(qū)動程序,你需要修改一些核心的配置文件。
(1)修改配置文件:主要修改核心源代碼目錄下的四個(gè)文件,即drivers/net/CONFIG文件、drivers/net/Config.in文件、drivers/net/Makefile文件和drivers/net/Space.c文件。CONFIG和Config.in文件用于控制核心配置工具(makeconfig或makemenuconfig)的運(yùn)行,主要是加入關(guān)于是否包括該網(wǎng)卡的支持提示。Makefile和Space.c文件用于編譯核心代碼并說明面向核心的接口。詳細(xì)語句參見下面例子。
(2)運(yùn)行核心配置工具:在核心源代碼目錄下執(zhí)行makeconfig或makemenuconfig命令。makeconfig是面向命令行的,通過逐句回答提問來配置核心。由于其在配置過程中不可改變或撤消以前的回答,故多有不便。makemenuconfig則是通過窗口菜單方式,使用起來很方便。就本文而言,你只要在上一步中正確修改了配置文件,那么在config中會出現(xiàn)是否需要該網(wǎng)卡支持的提問,你選擇‘y’。或者在menuconfig中的network菜單中出現(xiàn)表示該網(wǎng)卡的菜單項(xiàng),把它選上即可。
(3)重建依賴關(guān)系:很簡單,執(zhí)行makedep和makeclean命令。
(4)生成核心代碼:執(zhí)行makezImage命令。這個(gè)命令開始真正編譯核心代碼,并把核心代碼存放為arch/i386/boot目錄下的zImage。
(5)為了使用新的核心代碼,你需要用新的核心代碼替換原有的。原有的核心代碼一般存放在/boot目錄下,文件名稱類似于vmlinuz-v.s.r-m(v.s.r-m)表示核心的版本號)。如vmlinuz-2.0.34-1。執(zhí)行下列命令:
cparch/i386/boot/zImage/boot/vmlinuz-v.s.r-m
為了安全起見,可以先把原有的核心代碼做個(gè)備份,以便發(fā)生錯(cuò)
誤時(shí)恢復(fù)。
至此,你可以重新引導(dǎo)系統(tǒng)以使用新的帶有正確網(wǎng)卡驅(qū)動支持的Linux核心。唯一剩下未解決的是驅(qū)動程序的參數(shù)問題。有些網(wǎng)卡驅(qū)動程序如果不輸入?yún)?shù),那它工作就會不正常,甚至根本不工作。由于現(xiàn)在網(wǎng)卡的驅(qū)動程序是系統(tǒng)啟動時(shí)由核心載入運(yùn)行的,系統(tǒng)啟動之后用戶就很難改變這些參數(shù)了,所以你必須在系統(tǒng)啟動時(shí)告訴Linux核心網(wǎng)卡驅(qū)動程序使用的參數(shù)。具體方法有兩種:
(1)在系統(tǒng)引導(dǎo)程序LILO中輸入。
在LILO開始引導(dǎo)系統(tǒng)時(shí),用ether子命令設(shè)定以太網(wǎng)卡驅(qū)動程序的參數(shù)。ether命令的使用方式為:
LILO:linuxether=IRO.BASE_ADDR,NAME
這里帶下劃線的是要輸入的部分,IRQ表示中斷號,BASE_ADDR表示端口號,NAME表示網(wǎng)卡的設(shè)備名。例如:linuxether=15,0x320,eth0
(2)在LILO配置文件中設(shè)定。
每次在系統(tǒng)啟動時(shí)再輸入驅(qū)動程序參數(shù)似乎有點(diǎn)過于麻煩。幸好系統(tǒng)提供了LILO的配置文件可以用來永久性的設(shè)置Linux系統(tǒng)啟動時(shí)的子命令。方法是在/etc/lilo.conf文件中的適當(dāng)位置加入以下一行:
append=“ether=IRQ,BASE_ADDR,NAME”
這里帶下劃線部分的意義同上。加入這一行后,還需要用/sbin/lilo命令把這個(gè)配置寫入引導(dǎo)程序。
第四步:網(wǎng)絡(luò)配置及測試
安裝完網(wǎng)卡就可以配置網(wǎng)絡(luò)通信了。配置網(wǎng)絡(luò)簡單地就是使用ifconfig命令,
例如:
ifconfigeth01.2.3.4netmask255.0.0.0up
最后ping一下網(wǎng)上其它機(jī)器的ip地址,檢查網(wǎng)絡(luò)是否連通。
五、一個(gè)以太網(wǎng)卡安裝實(shí)例
下面以Cirrus公司生產(chǎn)的CrystalCS8920以太網(wǎng)卡為例,詳細(xì)說明上述安裝配置過程。本例中,有些命令參數(shù),如核心源代碼目錄等,是以我使用的系統(tǒng)環(huán)境為出發(fā)點(diǎn)。具體應(yīng)用中還要加以本地化。為了更接近實(shí)際,例子中也包括了對安裝中碰到的問題的描述。
1.此網(wǎng)卡是IBMPC機(jī)的內(nèi)置式網(wǎng)卡,機(jī)器只提供了Windows95/98環(huán)境下的驅(qū)動程序。由于RedHat5.0發(fā)行版本尚未提供對此網(wǎng)卡的直接支持,所以從Cirrus的站點(diǎn)上找到并下載了該網(wǎng)卡驅(qū)動程序的Linux版本,是一個(gè)名為Linux102_tar.gz的壓縮文件。
2.文件Linux102_tar.gz解壓后包括五個(gè)文件。包括源代碼,僅適用于Linux2.0版本的目標(biāo)模塊以及readme文件。
3.查閱readme文件后,了解到這個(gè)驅(qū)動程序只能使用網(wǎng)卡EEPROM中設(shè)定的端口號(I/O基地址)、中斷號。為了知道網(wǎng)卡EEPROM的設(shè)置,又從Cirrus站點(diǎn)下載了該網(wǎng)卡DOS版本的設(shè)置程序setup.exe
4.在DOS中運(yùn)行setup.exe,發(fā)現(xiàn)網(wǎng)卡的起始端口號為0x360,中斷號為10,與別的設(shè)備有沖突。選擇setup.exe程序的相應(yīng)菜單,把中斷號改成5。另外,此驅(qū)動程序不支持plugandPlay,故也在setup.exe中將網(wǎng)卡的PnP功能屏蔽掉。
5.我所使用的RedHat5.0的Linux核心版本為2.0.34,所以不能用現(xiàn)成的驅(qū)動程序目標(biāo)模塊,需要自己動手編譯。如上文所述,有兩種方式使用此驅(qū)動程序。
6.如果要編譯成獨(dú)立模塊,執(zhí)行下列命令:
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
編譯結(jié)果是名為cs89x0.o的驅(qū)動程序目標(biāo)模塊。要裝載此驅(qū)動程序,輸入下列命令:insmodcs89x0.oio=0x360irq=10
要卸載此驅(qū)動程序,用rmmod命令:
rmmodcs89x0.o
7.如果要將驅(qū)動程序編進(jìn)系統(tǒng)核心,
修改/usr/src/linux/drivers/net/CONFIG,加入:
CS89x0_OPTS=
修改/usr/src/linux/drivers/net/Config.in,加入:
tristate‘CS8920Support’CONFIG_CS8920
以上兩行是為了讓makeconfig在配置過程中詢問是否增加CS8920網(wǎng)卡的支持。修改/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
以上兩段是為了編譯并輸出網(wǎng)卡驅(qū)動程序及其例程。
把驅(qū)動程序源代碼拷到/usr/src/linux/drivers/net目錄下。
在/usr/src/linux目錄下執(zhí)行makeconfig或makemenuconfig,選擇核心CS8920網(wǎng)卡支持。
執(zhí)行makedep、makeclean命令。最后用makezImage編譯Linux核心。
如何設(shè)置核心驅(qū)動程序參數(shù),上節(jié)已有說明,不再贅述。
論文摘要:實(shí)時(shí)操作系統(tǒng)(RTOS)是復(fù)雜控制系統(tǒng)中必不可少的一部分,它能按照任務(wù)的優(yōu)先級實(shí)現(xiàn)多任務(wù)調(diào)度,通過信號量、事件標(biāo)志來實(shí)現(xiàn)任務(wù)的同步,消息隊(duì)列和郵箱機(jī)制來實(shí)現(xiàn)任務(wù)之間的通訊,中斷機(jī)制來實(shí)現(xiàn)突發(fā)事件的管理。較傳統(tǒng)的前后臺系統(tǒng),它具有更高的實(shí)時(shí)性、穩(wěn)定性。介紹了當(dāng)前在國際汽車工業(yè)界日益占據(jù)主導(dǎo)地位的汽車電子開放式平臺系統(tǒng)(OSEK/VDX)規(guī)范。介紹了NEC汽車電子專用實(shí)時(shí)操作系統(tǒng)RX850,列舉了其他RTOS并分析了其優(yōu)缺點(diǎn),建立了基于RX850的RTOS軟件開發(fā)平臺,實(shí)現(xiàn)了汽車發(fā)動機(jī)控制模塊任務(wù)的調(diào)度,并對RTOS的多任務(wù)進(jìn)行了軟仿,這對于復(fù)雜軟件系統(tǒng)開發(fā)是非常有實(shí)際意義的。
引言
隨著國內(nèi)汽車電子產(chǎn)業(yè)的不斷升級和研發(fā)投入不斷加大,國內(nèi)生產(chǎn)的汽車電子簡單的ECU已經(jīng)越來越普及,例如車載音響,儀表,車身控制BCM,動力轉(zhuǎn)向EPS等等。越來越多的企業(yè)將精力投入到比較復(fù)雜的控制領(lǐng)域,比如發(fā)動機(jī)控制,防抱死系統(tǒng)(ABS)等,對于這些邏輯復(fù)雜、實(shí)時(shí)性和安全性高的控制任務(wù),傳統(tǒng)的前后臺系統(tǒng)模式非實(shí)時(shí)處理的弊端越來越呈現(xiàn),這就勢必需要用到實(shí)時(shí)操作系統(tǒng)來管理這些任務(wù)。
OSEK標(biāo)準(zhǔn)是1993年德國汽車工業(yè)界聯(lián)合推出了“汽車電子的開放式系統(tǒng)及接口軟件規(guī)范”,即OSEK(opensystemandthecorrespondinginterfacesforautomotiveelectronics)。1994年法國汽車工業(yè)界的相似規(guī)范VDX(vehicledistributedexecutive)和OSEK規(guī)范合并,從而形成OSEK/VDX規(guī)范體系。當(dāng)前OSEK標(biāo)準(zhǔn)已經(jīng)成為汽車電子軟件開發(fā)領(lǐng)域中的通用標(biāo)準(zhǔn),旨在增強(qiáng)軟件代碼安全性、移植性,減少軟件開發(fā)周期。
目前,市場上通用的開源RTOS有很多,比如μC/OS-Ⅱ,F(xiàn)reeRTOS,Linux-2.6等,但是這些核多半是用于通用領(lǐng)域或者安全性要求不太高的領(lǐng)域,如果將這些移植到汽車電子動力安全控制領(lǐng)域,是不太合時(shí)宜的;而且,這些核本身不是基于OSEK標(biāo)準(zhǔn),如果引入OSEK標(biāo)準(zhǔn),無疑加大了內(nèi)核移植的難度。NEC電子的實(shí)時(shí)操作系統(tǒng)RX850是一款基于OSEK標(biāo)準(zhǔn)的汽車級專用RTOS,其內(nèi)核的實(shí)時(shí)性已經(jīng)得到第三方的專業(yè)測試。它已經(jīng)被移植到了NEC芯片的集成開發(fā)環(huán)境PMPlus和GreenHills,客戶只需要在IDE(IntegratedDevelopEnvironment)中編寫腳本文件來配置RTOS即可通過編譯,使得客戶從底層驅(qū)動編寫到RTOS任務(wù)調(diào)度輕松實(shí)現(xiàn)“無縫結(jié)合”,大大縮短了RTOS移植的開發(fā)周期。本文建立了基于NEC電子32位車身專用芯片V850/Fx3的軟件平臺,并介紹了如何實(shí)現(xiàn)RX850操作系統(tǒng)的配置,以發(fā)動機(jī)控制模塊為控制模型來實(shí)現(xiàn)多任務(wù)的實(shí)時(shí)調(diào)度,最后通過軟仿工具來分析該內(nèi)核的效率和任務(wù)調(diào)度的實(shí)時(shí)性。
一、系統(tǒng)平臺介紹
本系統(tǒng)采用NEC電子的32位車身專用芯片V850/Fx3系列,V850是NEC電子的32位微處理器核,5級流水線控制,內(nèi)部32個(gè)32位寄存器,乘法/除法指令,數(shù)據(jù)空間支持最大4GB線性尋址能力,代碼空間支持64M線性尋址能力,內(nèi)部1MB的codeflash,60KB的RAM空間,32KB的dataflash用作EEPROM模擬。
基于OSEK標(biāo)準(zhǔn)的RX850實(shí)時(shí)操作系統(tǒng)符合以下標(biāo)準(zhǔn):操作系統(tǒng)規(guī)范(OSEKOS)、通信規(guī)范(OSEKCOM)、網(wǎng)絡(luò)管理規(guī)范(OSEKNM)和OSEK實(shí)現(xiàn)語言(OSEKOIL)。其中OSEKOS是針對汽車應(yīng)用特點(diǎn)而專門制定的一個(gè)小型RTOS規(guī)范,著重以下幾個(gè)方面:(1)可移植性,所有API都是標(biāo)準(zhǔn)化的并且在功能上都有明確的定義;(2)可擴(kuò)展性,OSEKOS旨在通用于任何類型的ECU,因此一方面系統(tǒng)要高度的模塊化,另一方面又要能進(jìn)行靈活的配置;(3)汽車應(yīng)用的特定需求,諸如可靠性、實(shí)用性和代價(jià)敏感性等。相應(yīng)的,OSEKOS靜態(tài)配置可以通過OS2EKOIL語言實(shí)現(xiàn),用戶在系統(tǒng)生成時(shí)靜態(tài)制定任務(wù)的個(gè)數(shù)、需要的資源和系統(tǒng)服務(wù)。OSEKCOM為通信網(wǎng)絡(luò)中的數(shù)據(jù)交換提供了標(biāo)準(zhǔn)的接口和協(xié)議。OSEKNM為監(jiān)視網(wǎng)絡(luò)的流量提供了一組標(biāo)準(zhǔn)的功能函數(shù),以保證網(wǎng)絡(luò)的安全性和可靠性。
二、RX850內(nèi)核配置
由于RX850已經(jīng)被嵌入到IDE,因此用戶直接編寫內(nèi)核腳本文件即可,下面介紹如何來配置內(nèi)核。
1.系統(tǒng)時(shí)鐘設(shè)置
clkhdrINTTM0EQ0//選定TimerM為時(shí)間片中斷源
2.堆棧設(shè)置
RX850的堆棧分為系統(tǒng)堆棧和任務(wù)堆棧,
POOL0功能:系統(tǒng)基本表信息、準(zhǔn)備隊(duì)列、每個(gè)管理塊、任務(wù)堆棧、中斷句柄堆棧(系統(tǒng)堆棧)、可變長度內(nèi)存、不變長度內(nèi)存。
POOL1功能:任務(wù)堆棧、中斷句柄堆棧(系統(tǒng)堆棧)、可變長度內(nèi)存、不變長度內(nèi)存。
POOL0和POOL1都可以作為任務(wù)堆棧,即使沒有POOL1也可以。配置如下:
intstk0x400:pool0//系統(tǒng)堆棧大小為0x400
tskTSK1_TSK10x050:pool10x06TTS_DMT0x00ei//TSK_ID_1ms任務(wù)堆棧大小0x50
3.允許最大優(yōu)先級任務(wù)數(shù)
maxpri0x1f//允許最大優(yōu)先級任務(wù)數(shù)為0x1f
4.信號量設(shè)置
semSem_Task10x00//設(shè)置了信號量Sem_Task1為0
semSem_Task20x00//設(shè)置了信號量Sem_Task2為0
5.事件標(biāo)志設(shè)置
flgflg_Task1//設(shè)置了事件標(biāo)志flg_Task1
flgflg_Task2//設(shè)置了事件標(biāo)志flg_Task2
5.郵箱設(shè)置
mbxID_Task1TA_MPRI//設(shè)置Task1的郵箱
mbxID_Task2TA_MPRI//設(shè)置Task2的郵箱
6.中斷設(shè)置
RX850的中斷分為直接中斷和間接中斷兩種,直接中斷不受RX850制約的中斷句柄,理論上接近硬件中斷的速度,其缺點(diǎn)是需要用戶自己寫中斷處理句柄,包括:(1).寄存器壓棧;(2).換向,跳轉(zhuǎn)到中斷句柄的開始;(3).調(diào)用系統(tǒng)命令;(4).返回到調(diào)度;間接中斷的中斷句柄在RX850的中斷預(yù)處理后才被啟動,優(yōu)點(diǎn)是簡化了句柄處理過程,缺點(diǎn)是由于RX850的預(yù)處理降低了速度,其處理過程如下:
間接中斷配置如下:
inthdrINTAD_AD_Interrupt//AD間接中斷句柄配置
inthdrINTC1REC_CAN_Ch1RxInt//CAN間接中斷句柄配置
7.固定/可變內(nèi)存池設(shè)置
當(dāng)系統(tǒng)需要交換較大的數(shù)據(jù)時(shí),此時(shí)任務(wù)堆棧是不夠用的,需要開辟一段內(nèi)存來使用。RX850支持兩種方式的內(nèi)存配置,固定內(nèi)存池和可變內(nèi)存池。固定內(nèi)存池由用戶自定義內(nèi)存池的大小,可變內(nèi)存池根據(jù)實(shí)際應(yīng)用系統(tǒng)動態(tài)的定義所需內(nèi)存大小,配置如下:
mpfMPF_ID_MBX0x08:pool150
//固定內(nèi)存以0x08字節(jié)為單位排列,大小為50*0x08;
mplMPL_ID_Task10x08:pool1
//可變內(nèi)存0x08字節(jié)為單位排列
8.系統(tǒng)周期循環(huán)中斷設(shè)置
cycCYC_INT_TIMER_CYC_IntTimerTCY_OFF10
//系統(tǒng)周期循環(huán)中斷時(shí)間為10個(gè)時(shí)間片
以上完成了操作系統(tǒng)的配置,然后通過NEC的IDE即可生成操作系統(tǒng)的.s和.h文件,將此兩個(gè)文件包含在工程文件中即可。超級秘書網(wǎng)
三、RX850軟仿及結(jié)論
通過以上配置,選擇發(fā)動機(jī)控制模塊為對象,下面對RX850進(jìn)行軟仿。NEC電子提供專門的軟仿工具AZ,在IDE中打開AZ。
通過上圖可以很方便的看到每個(gè)任務(wù)的實(shí)時(shí)調(diào)度情況和CPU內(nèi)核的使用效率。目前CPU的空閑率為94%,很多任務(wù)實(shí)際上沒有被調(diào)用,用戶可以根據(jù)實(shí)際情況將更多的功能模塊放在API任務(wù)中來運(yùn)行。軟仿只能提供模擬的仿真,如果用戶需要更精確的trace工具,則需要用硬仿來實(shí)現(xiàn)。
操作系統(tǒng)是對計(jì)算機(jī)的各類軟、硬件資源進(jìn)行管理以充分利用計(jì)算機(jī)系統(tǒng)中的各類資源,并向用戶提供良好的工作環(huán)境和運(yùn)行界面的系統(tǒng)軟件。操作系統(tǒng)論文作為在計(jì)算機(jī)硬件上鋪設(shè)的第一層軟件,提供了用戶使用計(jì)算機(jī)的接口。因此,操作系統(tǒng)開發(fā)人員既具有軟件開發(fā)方面的知識,也要了解硬件的相關(guān)知識。操作系統(tǒng)是一門綜合性課程,它由許多概念、設(shè)計(jì)思想及算法等構(gòu)成,因此,具有概念抽象、理論性強(qiáng)、知識點(diǎn)多等特點(diǎn)。操作系統(tǒng)是計(jì)算機(jī)專業(yè)一門重要的專業(yè)主干課,其教學(xué)目標(biāo)是幫助學(xué)生了解計(jì)算機(jī)硬件和軟件的關(guān)系、掌握操作系統(tǒng)各種功能的實(shí)現(xiàn)算法,注重通過對操作系統(tǒng)抽象的理論知識及系統(tǒng)結(jié)構(gòu)的學(xué)習(xí),培養(yǎng)學(xué)生開發(fā)和設(shè)計(jì)大型軟件的思維和方法,提高學(xué)生軟件開發(fā)能力。因此,操作系統(tǒng)這門課程配有相應(yīng)的實(shí)驗(yàn)課程。
然而在實(shí)際教學(xué)中發(fā)現(xiàn),該課程并未能有效的提高學(xué)生獨(dú)立開發(fā)軟件的能力,僅僅實(shí)現(xiàn)了讓學(xué)生了解操作系統(tǒng)的構(gòu)成及功能實(shí)現(xiàn)這一基本教學(xué)目標(biāo)。這個(gè)問題的出現(xiàn)與我們課程特點(diǎn)密不可分。首先,課程設(shè)置偏向理論,課程內(nèi)容偏向軟件設(shè)計(jì)和算法實(shí)現(xiàn),雖配套有實(shí)驗(yàn)課程,但比例較低,不利于提高學(xué)生的實(shí)踐能力。其次,操作系統(tǒng)涉及到各類軟硬件資源,因此,需要專門的實(shí)驗(yàn)平臺,否則,直接采用傳統(tǒng)的編碼和調(diào)試方法及有可能導(dǎo)致系統(tǒng)崩潰。最后,對于操作系統(tǒng)這種大型軟件的開發(fā),需要學(xué)生具有較強(qiáng)的編程開發(fā)能力,實(shí)際上,很多學(xué)生并不能快速有效地將算法轉(zhuǎn)化為可執(zhí)行程序,少數(shù)學(xué)生雖能快速實(shí)現(xiàn)局部功能但對軟件的整體思維和開發(fā)能力欠缺,目前大部分的實(shí)驗(yàn)工作主要集中與操作系統(tǒng)部分子系統(tǒng)功能的實(shí)現(xiàn)。本文對操作系統(tǒng)理論教學(xué)及實(shí)驗(yàn)教學(xué)中學(xué)生遇到的各種問題進(jìn)行歸納總結(jié),進(jìn)而探討培養(yǎng)學(xué)生的軟件整體開發(fā)思維和方法,提高學(xué)生的獨(dú)立軟件開發(fā)能力。
1 問題歸納
1.1 局部思維方式
所謂局部思維方式是指學(xué)生在學(xué)習(xí)操作系統(tǒng)知識時(shí),只關(guān)注當(dāng)前學(xué)習(xí)或?qū)嵺`的內(nèi)容與知識點(diǎn),很少能將當(dāng)前知識與前面的知識聯(lián)系起來,這導(dǎo)致學(xué)習(xí)完一個(gè)知識點(diǎn)后,學(xué)生很可能不知道該知識點(diǎn)是為了解決什么樣的問題。這樣的局部思維方式是學(xué)生長期的學(xué)習(xí)過程中養(yǎng)成的不良習(xí)慣,不僅在學(xué)習(xí)操作系統(tǒng)這門課程中出現(xiàn),在其他課程的學(xué)習(xí)中也同樣存在。
操作系統(tǒng)是一個(gè)整體性軟件,各章節(jié)的知識都是相互關(guān)聯(lián)的,因此,在這門課程的學(xué)習(xí)過程中,這種局部思維方式帶來的問題就更加明顯。下面總結(jié)了幾種由局部性思維帶來的普遍性問題。
關(guān)注知識細(xì)節(jié),忽視知識的宏觀應(yīng)用。實(shí)際教學(xué)中發(fā)現(xiàn),很多學(xué)生在學(xué)習(xí)的過程中常常發(fā)生一葉障目的現(xiàn)象,通常的表現(xiàn)是學(xué)習(xí)了當(dāng)前的知識點(diǎn)后,不知道學(xué)習(xí)該內(nèi)容的目的,或者不知道該知識是用于實(shí)現(xiàn)操作系統(tǒng)的哪部分的功能的,因此,常常在學(xué)期結(jié)束后詢問學(xué)生什么是操作系統(tǒng),它有哪些構(gòu)成和基本功能,很多學(xué)生還是一頭霧水。這些主要是由于學(xué)生缺少以宏觀的視角來看待和解決問題的能力,不能正確認(rèn)識每個(gè)細(xì)小知識點(diǎn)在整個(gè)宏觀問題中所處的位置。這就好比學(xué)生們仔細(xì)認(rèn)真的觀察了一磚一瓦(各個(gè)細(xì)小知識點(diǎn))卻不知道磚瓦是用來蓋房子(開發(fā)大型的系統(tǒng)軟件操作系統(tǒng))的,或者即使知道使用磚瓦來蓋房子,也不知道在什么地方什么時(shí)候使用什么材料來蓋房子,概其主要原因就是學(xué)生過于關(guān)注一磚一瓦的實(shí)現(xiàn)細(xì)節(jié)而忘記關(guān)注磚瓦的使用過程,即只關(guān)注微觀的知識細(xì)節(jié),而忘記學(xué)習(xí)宏觀的知識應(yīng)用方式,這也是現(xiàn)在學(xué)生學(xué)習(xí)中的普遍性問題。
關(guān)注知識點(diǎn)個(gè)體,忽視整體聯(lián)系。操作系統(tǒng)課程中,每個(gè)章節(jié)內(nèi)容對應(yīng)部分子功能的實(shí)現(xiàn),每個(gè)子功能相互協(xié)作才能構(gòu)成一個(gè)完整的操作系統(tǒng)軟件。學(xué)生在學(xué)習(xí)過程中較多關(guān)注每個(gè)子功能的實(shí)現(xiàn),而忽視了它們之間的聯(lián)系,因此,無法有效的將各個(gè)子功能拼接成一個(gè)完整的系統(tǒng)軟件。例如,學(xué)生不清楚I/O系統(tǒng)與用戶之間的接口在哪,如何讓處理機(jī)管理系統(tǒng)、存儲管理系統(tǒng)、I/O系統(tǒng)等協(xié)同工作,等等。
1.2 知識儲備不足
實(shí)際教學(xué)中,除了上述局部性思維方式外,學(xué)生知識儲備不足也是影響課程學(xué)習(xí)的另一主要原因。我們知道操作系統(tǒng)是一門綜合性課程,想要學(xué)好操作系統(tǒng),既要了解軟件開發(fā)的相關(guān)知識,也要有硬件的基礎(chǔ),因此,知識儲備不足會直接影響操作系統(tǒng)的學(xué)習(xí)。其表現(xiàn)歸納如下。
⑴ 常見的概念模糊。例如,邏輯地址空間與物理地址空間、程序的鏈接、數(shù)據(jù)結(jié)構(gòu)、虛擬化等等常見概念的理解模糊。還有很多同學(xué)不了解內(nèi)存單元的地址,更不知道內(nèi)存地址的作用是什么,因此,在介紹地址映射、數(shù)據(jù)裝入內(nèi)存的過程需要花費(fèi)大量的時(shí)間去補(bǔ)充基礎(chǔ)知識。
⑵ 硬件基礎(chǔ)薄弱。計(jì)算機(jī)系統(tǒng)硬件組成知識薄弱,不了解計(jì)算機(jī)系統(tǒng)的工作流程,不了解計(jì)算機(jī)常見硬件的基本功能和基本特性。
⑶ 代碼實(shí)現(xiàn)能力差。操作系統(tǒng)實(shí)驗(yàn)課程的教學(xué)中看到學(xué)生的編程能力普遍較差,且沒有軟件開發(fā)基礎(chǔ)和思維方式,很多學(xué)生只注重功能的實(shí)現(xiàn),不關(guān)注各個(gè)部分的接口,導(dǎo)致各子系統(tǒng)可以正常運(yùn)行,但是,無法拼接成完整系統(tǒng)。主要表現(xiàn)為編碼隨意,亂用GOTO語句,數(shù)據(jù)結(jié)構(gòu)定義不規(guī)范,指針使用隨意。例如,通過printf(“%d\n”,i),學(xué)生編寫輸入語句scanf(“%d\n”,&i),而實(shí)際規(guī)范的語句應(yīng)為scanf("%d",&i)。
2 操作系統(tǒng)課程教學(xué)的幾點(diǎn)思考
基于上述問題,本文針對操作系統(tǒng)教學(xué)提出幾點(diǎn)改進(jìn)意見。
2.1 理論與實(shí)踐相結(jié)合
注重理論教學(xué)的同時(shí),也要加強(qiáng)學(xué)生的實(shí)際應(yīng)用能力的提高。現(xiàn)在的學(xué)生更加看重知識的實(shí)用性,將自己所學(xué)知識轉(zhuǎn)化為實(shí)際應(yīng)用和實(shí)踐是學(xué)生自主學(xué)習(xí)的主要內(nèi)在推動力。單純的進(jìn)行理論教學(xué),會讓學(xué)生感覺操作系統(tǒng)是一門生澀枯燥毫無用處的一門課程。
在教學(xué)中,我們將理論和實(shí)踐相互結(jié)合,詳細(xì)闡述理論知識,讓學(xué)生充分理解相關(guān)工作原理及實(shí)現(xiàn)算法,再通過配套實(shí)驗(yàn)課程指導(dǎo)學(xué)生將理論知識轉(zhuǎn)化為實(shí)際應(yīng)用,通過這一轉(zhuǎn)化過程,提高學(xué)生對操作系統(tǒng)實(shí)用性的認(rèn)識,激發(fā)學(xué)生自我學(xué)習(xí)的內(nèi)在動力。理論轉(zhuǎn)化為實(shí)踐的過程中,學(xué)生會逐漸發(fā)現(xiàn)只有扎實(shí)的理論基礎(chǔ)積累才能快速的轉(zhuǎn)化成實(shí)踐,提高了學(xué)生對理論知識學(xué)習(xí)的重視程度,從而形成理論指導(dǎo)實(shí)踐,再由實(shí)踐去反思理論的良性循環(huán)。
在理論轉(zhuǎn)化成實(shí)踐的過程中,學(xué)生能夠?qū)⒖辗旱母拍盥涞骄唧w實(shí)處加深印象和理解,例如,內(nèi)存的物理地址空間,可以通過編碼的調(diào)試過程查看每個(gè)內(nèi)存單元的存儲內(nèi)容,充分理解內(nèi)存的數(shù)據(jù)存儲及變化。除此之外,通過理論轉(zhuǎn)化代碼實(shí)現(xiàn)的過程能夠快速有效的提高學(xué)生的編程能力,發(fā)現(xiàn)自己在編碼方面的不足和問題,以及提高自身的軟件設(shè)計(jì)能力。
2.2 整體與局部相結(jié)合
建立學(xué)生對于操作系統(tǒng)的整體概念,關(guān)于處理機(jī)管理、存儲器管理、I/O設(shè)備管理、文件管理及用戶接口等模塊都是操作系統(tǒng)的子系統(tǒng),這些子系統(tǒng)相互關(guān)聯(lián)、相互協(xié)作才能實(shí)現(xiàn)操作系統(tǒng)對各種軟硬件資源進(jìn)行管理并為用戶提供良好工作環(huán)境的功能。
教學(xué)中充分強(qiáng)調(diào)操作系統(tǒng)的整體結(jié)構(gòu)和設(shè)計(jì)方法,在對整體結(jié)構(gòu)和功能充分了解以后,再介紹操作系統(tǒng)的模塊劃分。透徹講解每模塊的設(shè)計(jì)思想和功能實(shí)現(xiàn),讓學(xué)生在潛移默化中學(xué)習(xí)軟件開發(fā)的思維方式和解決方案,逐漸提高學(xué)生運(yùn)用已學(xué)的設(shè)計(jì)思想解決問題的能力。只有對每個(gè)子模塊具體功能原理和實(shí)現(xiàn)方法充分掌握后才能快捷迅速的將它們從理論知識轉(zhuǎn)化成代碼,也只有在每個(gè)子功能的代碼都能充分實(shí)現(xiàn)的情況下,才有可能將它們連接成一個(gè)完整的大型的操作系統(tǒng)軟件。
整體是由局部組成,只有每一子模塊都實(shí)現(xiàn)了才有可能連接成整體,而整體不是對每個(gè)子模塊的簡單拼湊,各個(gè)模塊之間如何相互協(xié)調(diào)共同完成用戶任務(wù)是需要在一開始的軟件整體設(shè)計(jì)中考慮的問題,此外,軟件設(shè)計(jì)之初我們還需考慮各子模塊之間的接口。因此,在整個(gè)教學(xué)過程中,我們遵循“整體-局部-整體”的一個(gè)教學(xué)過程。通過這個(gè)過程,讓學(xué)生充分了解整體與部分之間的相互關(guān)系,加深理解。
2.3 層次式教學(xué)
操作系統(tǒng)課程是按年級統(tǒng)一開課的,但是同一個(gè)年級,不同學(xué)生的差別也很大,比如,他們各自的知識儲備、自身的理解力和領(lǐng)悟力、興趣愛好,比如有的善于思考而有的喜歡動手編程等等。因此,對不同學(xué)生采用統(tǒng)一標(biāo)準(zhǔn)顯然是不合適的,對于能力強(qiáng)、精力充沛的學(xué)生,這個(gè)統(tǒng)一的標(biāo)準(zhǔn)不能激發(fā)他們的潛能,而對于知識儲備相對較弱、能力稍差的學(xué)生,這樣的統(tǒng)一標(biāo)準(zhǔn)又會打擊自信心。因此,對于操作系統(tǒng)無論是理論教學(xué)還是實(shí)驗(yàn)教學(xué),都建議采用層次式教學(xué),對于不同水平的學(xué)生提出不同要求。
在理論教學(xué)中,我們將掌握操作系統(tǒng)的基本概念、設(shè)計(jì)思想和算法作為基本教學(xué)目標(biāo),對于能力較強(qiáng)的學(xué)生在教學(xué)中提示一些課本中沒有的知識點(diǎn)去拓展知識空間和思維方法,比如:在學(xué)習(xí)了用戶空間和內(nèi)核空間的基本概念后,讓有能力的學(xué)生了解用戶空間的數(shù)據(jù)如何與內(nèi)核空間的數(shù)據(jù)進(jìn)行交互,實(shí)現(xiàn)兩者之間數(shù)據(jù)交互的方法有哪些。而對于那些動手能力較強(qiáng)的學(xué)生可以引導(dǎo)他們用1~2種方式去實(shí)現(xiàn)將用戶空間的數(shù)據(jù)傳遞到內(nèi)核空間內(nèi)。
在實(shí)驗(yàn)教學(xué)中,基本的教學(xué)目標(biāo)是獨(dú)立實(shí)現(xiàn)操作系統(tǒng)中的基本算法,如進(jìn)程同步、進(jìn)程調(diào)度算法、銀行家算法及內(nèi)存的分配回收算法等等。對于能力較強(qiáng)的學(xué)生可以引導(dǎo)他們?nèi)プx一些開源linux操作系統(tǒng)的源代碼,有選擇的對部分功能模塊進(jìn)行優(yōu)化改進(jìn),然后再編譯鏈接,最終將該改進(jìn)植入操作系統(tǒng)中,以此激發(fā)學(xué)生的學(xué)習(xí)興趣。
3 結(jié)束語
操作系統(tǒng)課程的教學(xué)不僅需要教師不斷更新教學(xué)內(nèi)容和教學(xué)工具,還要求教師能夠根據(jù)學(xué)生的特點(diǎn)因材施教。本文總結(jié)了歸納操作系統(tǒng)在理論教學(xué)和實(shí)驗(yàn)教學(xué)中出現(xiàn)的一些常見問題,如局部思維方式問題和知識儲備不足代碼實(shí)現(xiàn)能力差的問題,并針對這些問題提出三點(diǎn)改進(jìn)建議:強(qiáng)調(diào)整體與局部之間的相互關(guān)系,形成整體-局部-整體的教學(xué)模式;要求理論聯(lián)系實(shí)際,將理論知識應(yīng)用到具體實(shí)踐中去,從理論到代碼實(shí)踐,再通過代碼實(shí)踐過程反思理論方法的有效的教學(xué)方法;針對不同學(xué)生采用層次式教學(xué)手段,設(shè)定基本教學(xué)目標(biāo),對于完成基本教學(xué)目標(biāo)的同學(xué)引導(dǎo)其完成更高層教學(xué)目標(biāo),提高學(xué)生學(xué)習(xí)興趣和能力。
參考文獻(xiàn)(References):
[關(guān)鍵詞]企業(yè)設(shè)備管理 信息化 重要性
[中圖分類號]C29 [文獻(xiàn)標(biāo)識碼]A [文章編號]1672-5158(2013)06-0161-01
企業(yè)的設(shè)備管理是指企業(yè)根據(jù)經(jīng)營方針和目標(biāo),從設(shè)備的調(diào)查研究人手,對有關(guān)設(shè)備的規(guī)劃、設(shè)計(jì)、制造、選購、安裝、調(diào)試、使用、維護(hù)、大修改造、直至報(bào)廢的全過程,相應(yīng)地進(jìn)行一系列技術(shù)、經(jīng)濟(jì)組織管理活動的總稱。由此可知,企業(yè)的設(shè)備管理是一門綜合性技術(shù)學(xué)科,其內(nèi)容涉及到多個(gè)方面。其基礎(chǔ)理論涉及到系統(tǒng)論、控制論、信息論、管理經(jīng)濟(jì)學(xué),組織行為學(xué)等許多領(lǐng)域。企業(yè)的任何一項(xiàng)活動基本上都是依靠設(shè)備的力量進(jìn)行操作和完成的,如果沒有一個(gè)良好運(yùn)作的設(shè)備系統(tǒng)就很難保證企業(yè)工作的順利開展。可以說,設(shè)備的管理是企業(yè)正常運(yùn)轉(zhuǎn)的基礎(chǔ),其企業(yè)經(jīng)營的前提,能夠降低生產(chǎn)成本,也是保證企業(yè)安全衛(wèi)生和環(huán)境優(yōu)美的重要條件和促進(jìn)企業(yè)技術(shù)進(jìn)步的關(guān)鍵因素。
一、實(shí)現(xiàn)企業(yè)設(shè)備管理信息化的意義
1 實(shí)現(xiàn)企業(yè)設(shè)備信息化管理,能夠保證企業(yè)的資產(chǎn)管理更加有效和形成完整的體系
企業(yè)的生產(chǎn)經(jīng)營已經(jīng)離不開科技力量的支撐,在整體運(yùn)作過程中應(yīng)當(dāng)充分利用科技的力量對企業(yè)的設(shè)備管理實(shí)現(xiàn)信息化。通過對傳統(tǒng)的管理模式的轉(zhuǎn)變,提高生產(chǎn)率,降低風(fēng)險(xiǎn),優(yōu)化資源配置。能夠保證工作人員及時(shí)、清楚的了解設(shè)備的運(yùn)作情況,并在出現(xiàn)問題時(shí)做出正確的抉擇,排除風(fēng)險(xiǎn)。
2 信息化的設(shè)備管理,對檢修費(fèi)用的控制更加規(guī)范
在整個(gè)企業(yè)范圍內(nèi)實(shí)現(xiàn)以項(xiàng)目管理為主的檢修維護(hù)運(yùn)營體系(如使用ERP或EAM等方式),以先進(jìn)的管理手段、規(guī)范的管理方式和先進(jìn)的管理思想,實(shí)現(xiàn)對檢維修項(xiàng)目的費(fèi)用、備品配件、進(jìn)度的跟蹤和控制,做到全過程管理,優(yōu)化企業(yè)資產(chǎn)管理、通過先進(jìn)的信息技術(shù)手段,全面提升設(shè)備管理工作的質(zhì)量和水平。
3 信息化的設(shè)備管理,能夠支持設(shè)備管理的持續(xù)改進(jìn)與持續(xù)發(fā)展
企業(yè)設(shè)備信息化管理,能夠保證各項(xiàng)工作的開展都能順利和有序,提供企業(yè)效益。同時(shí),能夠?yàn)槠髽I(yè)的各種設(shè)備的管理提供有利的借鑒,促進(jìn)企業(yè)管理的改進(jìn)保證企業(yè)的設(shè)備管理工作隨著企業(yè)管理的發(fā)展而同步發(fā)展。另一方面,能夠?qū)崿F(xiàn)設(shè)備的良好運(yùn)行和規(guī)范化操作,對設(shè)備運(yùn)行情況進(jìn)行及時(shí)、準(zhǔn)確的記錄和分析,保證各種考核指標(biāo)的及時(shí)、準(zhǔn)確和有效性。
4 實(shí)現(xiàn)企業(yè)設(shè)備管理的信息化,能夠從多個(gè)方面提高工作人員的員工素質(zhì)為了讓工作人員掌握信息化下的設(shè)備管理技術(shù),需要對其進(jìn)行培訓(xùn),轉(zhuǎn)變傳統(tǒng)的管理思想,為在企業(yè)中實(shí)現(xiàn)大范圍的信息化建設(shè),做好充分的準(zhǔn)備。
二、我國企業(yè)設(shè)備管理信息化的現(xiàn)狀
實(shí)現(xiàn)企業(yè)設(shè)備管理的信息化具有重要的意義,我國企業(yè)也在致力于這方面的發(fā)展和推行,但是應(yīng)當(dāng)看到,當(dāng)前,我國企業(yè)設(shè)備管理在實(shí)現(xiàn)信息化的過程中還存在著問題。
1 企業(yè)設(shè)備管理信息化起步晚
相比于西方發(fā)達(dá)國家,我國企業(yè)設(shè)備管理信息化的發(fā)展比較晚,而且存在著發(fā)展水平不一,而且,企業(yè)對于設(shè)備管理的認(rèn)識不足,相關(guān)的信息化問題不甚了解。
2 在現(xiàn)行的企業(yè)設(shè)備管理體系中沒有先進(jìn)的管理模式和方式
由于我國企業(yè)設(shè)備管理信息化起步較晚,沒有形成有效的管理模式,在企業(yè)管理運(yùn)行中水平有限,而缺乏對企業(yè)設(shè)備管理特點(diǎn)與要求的了解與研究,難以真正提升企業(yè)設(shè)備管理的水平。
3 我國企業(yè)設(shè)備管理信息化的系統(tǒng)過于落后
當(dāng)前,我國企業(yè)在信息化管理上所使用的系統(tǒng)沒有形成一個(gè)完整、有效運(yùn)作的整體,在每一項(xiàng)工作中基本上都是獨(dú)自運(yùn)行,難以彼此協(xié)調(diào),這就一定程度上阻礙了其功能的發(fā)揮,同時(shí),由于各管理系統(tǒng)缺少統(tǒng)一的設(shè)備編碼體系、規(guī)范的數(shù)據(jù)結(jié)構(gòu),不同在多個(gè)系統(tǒng)之間實(shí)現(xiàn)數(shù)據(jù)共享。
三、構(gòu)建和完善企業(yè)設(shè)備管理信息化的建議
企業(yè)設(shè)備管理信息化的意義,在上面的內(nèi)容中已經(jīng)進(jìn)行過充分的論述,設(shè)備管理的信息化能夠保證工作人員在企業(yè)設(shè)備運(yùn)作過程中對設(shè)備的基本情況及時(shí)的了解,并防止出現(xiàn)設(shè)備運(yùn)轉(zhuǎn)失靈,出現(xiàn)危險(xiǎn)的情況,同時(shí)也可以針對已經(jīng)發(fā)生的問題及時(shí)采取有效的措施進(jìn)行改進(jìn)。設(shè)備管理信息化使設(shè)備管理工作從靜態(tài)走向動態(tài),并向多功能方向發(fā)展同其他信息化工作一樣,設(shè)備管理信息化建設(shè)也是一項(xiàng)較復(fù)雜的系統(tǒng)工程,應(yīng)制定較詳細(xì)的實(shí)施措施以保證其順利建成。
1 改進(jìn)企業(yè)管理的理念,重視企業(yè)設(shè)備管理的信息化構(gòu)建
在構(gòu)建企業(yè)設(shè)備管理信息化的過程中首先要做的就是對管理理念進(jìn)行改進(jìn),要充分認(rèn)識信息化管理是時(shí)展的要求,也是實(shí)現(xiàn)企業(yè)利益最大化的根本途徑。然后從思想的認(rèn)識轉(zhuǎn)變到行動上的改進(jìn),切實(shí)加強(qiáng)設(shè)備管理的信息化建設(shè),總之,要從思想上、組織上、力量上、措施上給予充分重視,將其作為企業(yè)發(fā)展的重大戰(zhàn)略來實(shí)施。
2 在構(gòu)建設(shè)備管理信息化的過程中注重建設(shè)必須同與管理創(chuàng)新和機(jī)制轉(zhuǎn)變的相結(jié)合
設(shè)備管理信息化過程中所使用的操作系統(tǒng),不是將過去由人所完成的工作交給系統(tǒng)完成,也不是通過計(jì)算機(jī)工作替代過去的人工作業(yè),而是,在企業(yè)設(shè)備管理中實(shí)現(xiàn)一種理念與科技信,息化的有機(jī)結(jié)合,只有這樣才能真正實(shí)現(xiàn)提升設(shè)備管理質(zhì)量的目的,這種理念就是實(shí)現(xiàn)管理創(chuàng)新和機(jī)制的轉(zhuǎn)變。
3 整合各企業(yè)的設(shè)備管理軟件,統(tǒng)一業(yè)內(nèi)的各類編碼標(biāo)準(zhǔn)
目前我國的各使用的設(shè)備管理軟件和標(biāo)準(zhǔn)大都獨(dú)立運(yùn)行,不夠統(tǒng)一。對此,可在企業(yè)設(shè)備信息化建設(shè)過程中有必要在本行業(yè)內(nèi)統(tǒng)一各類編碼標(biāo)準(zhǔn),如組織機(jī)構(gòu)編碼、設(shè)備編碼、資產(chǎn)編碼、物資編碼等。
參考文獻(xiàn)
[1]彭虎、孟凡建:《基于Intranet設(shè)備管理信息系統(tǒng)得開發(fā)和研究》,載《設(shè)備管理與維修》,2002年第10期
[2]瞿向東、劉勇:《對計(jì)算機(jī)輔助設(shè)備管理系統(tǒng)設(shè)計(jì)中幾個(gè)問題的探討》,載《計(jì)算機(jī)應(yīng)用》,2010年第5期
一、運(yùn)用微格教學(xué)理論,準(zhǔn)確有效地反饋教學(xué)信息
微格教學(xué)是在控制論、信息論和系統(tǒng)論原理的指導(dǎo)下,通過設(shè)定教學(xué)行為目標(biāo),傳遞教學(xué)信息,反饋調(diào)整,使教學(xué)活動達(dá)到最優(yōu)化的動態(tài)平衡系統(tǒng)。幾年來,我們化學(xué)組在培養(yǎng)青年教師的教學(xué)能力和提高化學(xué)教師的教學(xué)水平上運(yùn)用了微格教學(xué)理論,收到了事半功倍的教學(xué)效果。在課前,我們對重點(diǎn)章節(jié)進(jìn)行集體備課,將復(fù)雜的課堂教學(xué)活動分解,劃分為導(dǎo)入、提問、講解等分項(xiàng)教學(xué)技能,然后將分解的內(nèi)容分配給各位老師,由他們提出每一部分如何講解,這樣對青年教師來講,如何上好這節(jié)課就做到心中有數(shù)。
在備課活動中,我們還通過觀看一些化學(xué)教師的教學(xué)錄像,特別對一些獲獎的優(yōu)秀課片,我們經(jīng)常搬入微格教學(xué)的角色錄像中,進(jìn)行分析評價(jià),這樣教學(xué)信息能夠及時(shí)準(zhǔn)確地反饋,特別有利于教師教學(xué)技能的提高。例如,我們將一個(gè)獲獎的優(yōu)秀課片搬入微格教學(xué)的角色錄像中,微格課型為提問類型,內(nèi)容為高二化學(xué)“乙酸的化學(xué)性質(zhì)”一節(jié)的總結(jié)歸納部分。他首先讓學(xué)生復(fù)述乙酸的酸性和酯化反應(yīng)的概念及酯化反應(yīng)的過程,最后得出乙酸具有的化學(xué)性質(zhì)。在6min的微格錄像中,提問的語言、問題的明確性,新舊知識的連貫性,語速、啟發(fā)與暗示等提問的基本技能掌握很好。
在課后,我們立即對照目標(biāo)要求進(jìn)行反饋評價(jià),經(jīng)過重放錄像觀察、發(fā)現(xiàn)有待于改進(jìn)。提問設(shè)計(jì)的層次不到位,不利發(fā)展學(xué)生的思維。那么如何設(shè)計(jì)出更高層次的提問呢?在部分討論后,建議教師可設(shè)計(jì):“乙酸為什么能與碳酸鈉溶液反應(yīng)?”,“在乙酸與乙醇的酯化反應(yīng)中為什么乙醇中使用氧-18,它的作用是什么?”,“酯化反應(yīng)中的酸是指什么酸?”等,這樣會更有利于發(fā)展學(xué)生的思維能力。
二、貫徹微格教學(xué)理論,有利于更新教學(xué)思想
微格教學(xué)從整體上看,符合人類認(rèn)識的規(guī)律,符合教育學(xué)的觀點(diǎn),符合控制論、心理學(xué)原理,它對提倡教師改進(jìn)教法,更新教學(xué)觀念具有很大的促進(jìn)作用。在我校電化教學(xué)設(shè)備許可的條件下,我們利用微格教學(xué)中的模式行為規(guī)范,重點(diǎn)講述和訓(xùn)練下面的語言表達(dá)、板書、導(dǎo)入、提問、講解、演示、變化、強(qiáng)化、課堂組織、結(jié)束等十種教學(xué)技能。
現(xiàn)以一實(shí)例說明通過微格教學(xué)對改進(jìn)教法的作用:有兩位高中化學(xué)教師畢業(yè)年限與任職資格相同,分別用甲、乙代表,微格教學(xué)的實(shí)踐錄像,都以“元素性質(zhì)跟原子結(jié)構(gòu)的關(guān)系”一節(jié)作為講解課型的內(nèi)容。
甲老師:語言生動、教態(tài)自然、板書規(guī)范,他用流利的語言和規(guī)范的實(shí)驗(yàn)操作,進(jìn)行比較歸納,引導(dǎo)學(xué)生根據(jù)反應(yīng)現(xiàn)象,得出同一周期、同主族元素性質(zhì)的遞變規(guī)律。
乙老師:語言和教態(tài)略顯緊張,他選在實(shí)驗(yàn)室上,他首先讓學(xué)生根據(jù)預(yù)習(xí)的實(shí)驗(yàn)去做,學(xué)生通過觀察現(xiàn)象后,很容易得出結(jié)論。
根據(jù)微格教學(xué)具有模式規(guī)范的目標(biāo)要求,運(yùn)用教學(xué)評價(jià)量表,很容易得出,乙在某些方面雖不如甲,但在“啟發(fā)教學(xué)應(yīng)用”、“知識輸入的方式”上高于甲,可見,微格教學(xué)表面上看只是一種教學(xué)行為的模仿與糾正,但實(shí)質(zhì)上卻隱含著深刻的教學(xué)思想,對于改變傳統(tǒng)的“注入式教學(xué)”極為有效。
三、運(yùn)用微格教學(xué)理論,科學(xué)地評價(jià)教學(xué)行為
在傳統(tǒng)的化學(xué)教學(xué)中,評價(jià)授課老師的課堂教學(xué)整體與分項(xiàng)的優(yōu)劣上,以前沒有精確的限定規(guī)則,在評價(jià)上過于籠統(tǒng)空泛,利用微格教學(xué)理論就能比較科學(xué)地、真實(shí)地評價(jià)教學(xué)中的每一環(huán)節(jié)。
在教學(xué)評價(jià)中,我們采用微格教學(xué)中設(shè)定的教學(xué)行為評價(jià)系統(tǒng),以一定的數(shù)量參與者作為評價(jià)員,對授課教師進(jìn)行評價(jià)打分。幾年來,我們采用蒙城師范學(xué)校楊景宇老師編寫的《微格教學(xué)之路》中的微格教學(xué)技能評價(jià)指標(biāo)體系,評價(jià)量表和評價(jià)單的規(guī)定,對授課者的教學(xué)技能進(jìn)行科學(xué)的、真實(shí)的評價(jià),取得了豐碩的成果。有5人次獲市級優(yōu)質(zhì)教學(xué)課,有7人次獲縣級優(yōu)質(zhì)教學(xué)課,發(fā)表和獲獎的論文在10篇以上。實(shí)踐證明,利用微格教學(xué)的評價(jià)系統(tǒng),有利于教師教學(xué)技能的提高和教學(xué)方法的改進(jìn)。