時間:2023-03-20 16:22:34
序論:速發表網結合其深厚的文秘經驗,特別為您篩選了11篇操作系統論文范文。如果您需要更多原創資料,歡迎隨時與我們的客服老師聯系,希望您能從中汲取靈感和知識!
一、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配置時,安裝程序會列出它支持的所有網卡的類型??纯茨愕木W卡是否榜上有名。隨著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核心。
(1)系統發展歷史的回顧與當前技術發展潮流追蹤許多學校的計算機專業在講解操作系統課程時,往往局限于介紹具體方法和技術細節,忽略對技術發展歷史和當前技術潮流的詮釋。既不能開拓學生專業視野,又無法對專業歷史有深入的了解。本門課程爭取使用3-4學時的時間詳細講解操作系統的發展歷史、著名人物、分類體系和技術發展趨勢。這樣的內容極大的激發了學生的學習興趣和專業使命感,具有很好的教學效果。
(2)作系統基本設計原理與核心技術方法的分析講解本門課程注重對基礎專業理論的講解,從五個方面詳細剖析操作系統的核心原理。對進程管理、存儲管理、文件系統、設備管理、系統接口等基本的設計原理均進行了詳細的介紹和分析。操作系統的各種基本設計原理中包含了大量的算法設計與技術實現優化考慮,在教學過程中,要特別注重剖析算法設計思想和優化教學法的差別,強調激發學生的主動思考能力,而不是僵化的向學生灌輸思想。
(3)真實操作系統案例的組成結構與實現特色剖析對比。操作系統的設計原理體系嚴密,各種技術方法錯綜復雜。要注重選用真實操作系統作為學習的案例。通過對真實案例的剖析以提高學生的感性認識。例如在講解“進程管理”時,將Linux系統與WindowsXP系統進行對比;講解“文件系統”時,對Linux、FAT32、NTFS等各類不同的文件系統進行對比;講解內存管理時,對Minix、Linux、Win-dowsXP系統進行對比。這樣的教學內容雖然備課難度大,但是教學效果卻非常好。
(4)操作系統原理與計算機原理、編譯原理、數據庫、計算機網絡等課程的關聯。《操作系統原理》課程是計算機及相關專業的學生在本科階段“承上啟下”的重要課程,講授過程中必須注重與其他專業基礎課內容和知識的結合。在教學過程中,專門講解“操作系統硬件基礎知識”以融合《計算機原理》課程知識;重點分析“應用程序編譯鏈接過程”以融合《編譯原理》課程知識;在“進程同步互斥、I/O設備同步阻塞-異步傳輸”的內容中有機融合《數據庫原理》、《計算機網絡》的基本概念。這樣的關聯式教學方式使得學生能夠將多門專業基礎課程進行有機的融合貫通,有效的促進了專業理論體系的完善。
基于以上對教學內容的有機的系列化分類,在選用優秀計算機經典教材的基礎上,必須強調教學方式的科學與合理,主要采用以下教學方式:
(1)定位于專業基礎必修課,幫助學生建立扎實的專業理論基礎。計算機領域各相關專業的學生都需要建立扎實完整的軟件基礎理論體系?!恫僮飨到y原理》是講述計算機硬件資源管理、應用程序運行控制、人機交互接口實現等內容的基礎性課程,在專業人才培養方面具有極為重要的作用。應該不斷加強對《操作系統原理》課程的教學投入,積極完善師資隊伍、改進教學計劃、建立完整實踐環境、主動追蹤技術發展潮流,使得本門課程的教學質量不斷提升。
(2)面向應用、軟件等各專業學生授課,實現“承上啟下”的總體教學目標?!恫僮飨到y原理》是計算機科學與技術專業必修基礎課,是自動化專業的專業選修課,也是非計算機專業的軟件方向主干課。在教學計劃中,本門課程最主要的作用就是實現對低年級專業基礎知識的綜合與提升,幫助學生建立系統、完整的專業基礎理論體系,培養學生的研究型思維和動手實踐能力,開拓學生的專業學術視野,為后續課程的學習和專業發展奠定重要的基礎。
(3)原理、實踐、現實應用相結合,為培養高水平專業人才服務?!恫僮飨到y原理》是綜合了基礎理論講授、動手實踐、觀察體驗、最新技術發展潮流追蹤等多項內容的專業基礎課程。課程建設存在教學工作量大、上機實踐環節重要、學生學習任務重等特點,課程教學過程中,常常存在原理講授與上機實踐脫節、課堂學習與現實應用剝離的情況,導致老師在教學過程中常采用“灌輸式”教學法、學生在學習過程中常采用“機械記憶”的學習習慣,教學質量難以提升。為此,在《操作系統原理》課程建設中應該積極進行教學改革和創新,近年來不斷引進國內外經典操作系統教材,努力搭建多種操作系統平臺的上機實踐環境,加強師資隊伍建設和教學督導力度,加強對技術發展潮流的追蹤。
二、理論教學改革
操作系統是計算機中最重要的軟件,它能夠對計算機的硬件和軟件進行有效的統一管理,便于用戶使用計算機。操作系統課程是計算機類專業一門重要的基礎課程,其教學內容主要包括進程管理、處理機調度與死鎖、存儲器管理、設備管理和文件系統五大部分。系統安全問題是信息安全的一個重要研究方向,但是在傳統的操作系統課程中并沒有涉及到信息安全的相關知識,信息安全專業學生在學習完操作系統課程后,無法將其所學的知識與現有的系統安全問題相結合。因此,針對信息安全專業的特點,理論教學改革應先從教學內容入手,將信息安全中的系統安全技術與操作系統課程的現有內容整合,通過講授操作系統各個部分的實現原理,讓學生深入了解對應系統安全產生的原因和解決方法。如在講授內存管理時,傳統操作系統課程的教學內容需要學生掌握操作系統是如何對內存進行分配、回收和調度。在信息安全專業的操作系統課程中,可以將緩沖區溢出的原理加入其中,使學生真正了解緩沖區溢出攻擊的實現方法和預防手段。通過上述將操作系統教學內容和信息安全知識有機的結合起來、相互滲透,學生對操作系統原理和系統安全知識的理解會更加透徹,同時為后續的計算機病毒與原理、網絡攻擊與防御、逆向工程等信息安全專業課程打下了堅實的基礎。
三、實踐教學改革
實踐教學內容是信息安全專業課程的一個重要環節。為了培養符合社會需求的工程性應用人才,在信息安全專業課程的教學過程中,強調理論和實際相結合的教學方法,在保障理論教學的基礎上,強調實踐教學,提高學生的工程實踐能力。本節將從實驗教學、課程設計和實踐活動三個方面來討論如何對操作系統課程的實踐教學內容進行改革。
1.實驗教學。
為操作系統課程開設合適的實驗項目是非常困難的,主要問題在于很難找到合適的實驗環境,大多數的操作系統相對于學生來說,太大、太復雜,學生很難在短時間內將操作系統的設計結構和實現代碼弄清楚。盡管可以讓學生分塊的實現操作系統的各個功能,如CPU調度、內存管理等,但是在復雜操作系統中,改變其中的一個功能模塊,其工作量也是非常巨大的。因此,在選擇操作系統作為課程環境時,需要考慮以下問題:(1)所選操作系統的體系結構和實現方法要盡量簡單,便于學生快速掌握系統的實現框架,理解各部分的實現思路和方法。(2)所選的操作系統源代碼完整且完全公開。學生可以通過在學習現有操作系統源碼的基礎上,深入理解操作系統的設計原理。(3)所選操作系統有相應的說明文檔,便于學生學習,培養學生的程序設計思維。(4)所選操作系統允許程序員修改,可以重新編譯、運行。允許學生對操作系統代碼進行修改,是對學生實踐能力培養的重要手段。學生根據課上所學的理論知識,可以自行修改操作系統功能,并且便于教師添加信息安全的相關實驗。根據以上幾點,Minix系統是較適合作為操作系統課程實驗環境的系統,而且Minix系統中已經包含了一些安全機制,如特權管理和訪問控制。在操作系統課程的實驗教學環節中,首先要求學生根據所學理論知識讀懂對應的Minix系統源代碼,然后要求學生分模塊的實現對應功能。操作系統原理課程與教學內容同步的實驗學時為20學時,除了傳統操作系統實驗內容:進程管理(4學時)、進程通信(2學時)、內存管理(4學時)、文件系統(2學時)之外,實驗內容中還添加了信息安全相關實驗緩沖區溢出(2學時)、訪問控制(2學時)、加密文件系統(2學時)、資源競爭(2學時)。實驗內容包括驗證性和設計型兩類實驗,培養了學生的實際動手能力。
2.課程設計。
除了與操作系統課程同步的實驗教學之外,還可以開設課程設計,讓學生能夠利用所學操作系統知識,開發、實現相關工具,培養學生的綜合設計、開發能力。操作系統課程的實驗教學內容是讓學生分模塊的設計、實現操作系統功能,此類實驗對學生理解操作系統的整體架構和工作原理幫助不大,學生無法將各個小的功能模塊聯系成為一個完整的管理軟件,即操作系統。而課程設計的目的是將操作系統課程和其他信息安全相關課程的教學內容相整合,最終實現能夠滿足實際需求的工程項目。課程設計相對實驗教學來說內容較豐富,需要學生組隊、合作完成對應的課程設計項目。針對信息安全專業的特點,可以考慮添加與信息安全相關的實驗項目,如PE(PortableExecutable)文件分析、Windows病毒開發、系統安全工具開發等。通過上述實驗項目,讓學生在了解操作系統原理的基礎上,開發實用的信息安全軟件和工具。通過開設課程設計,既能鍛煉學生的實際動手能力,又能培養學生的團隊協作能力。
3.實踐活動。
除了課堂教學之外,鼓勵學生參加各項實踐活動也是非常有必要的。組織學生成立大學生創新團隊,指導學生申報大學生創新性實驗項目,參加校內外舉辦的信息安全競賽都是提高學生實踐能力的途徑。本校每年都組織本專業內、校內、省內及全國信息安全競賽,同時積極鼓勵學生參加校外信息安全競賽。在此類競賽中一個重要的考核部分是關于系統安全,即對操作系統漏洞地挖掘和利用,通過以學科競賽為平臺,將操作系統教學引向縱深方向,實現了理論與實踐的有機結合,優化了學生的知識結構,促進了學生與其他高校學生和教師的交流,以比賽來使學生得到進步。此外,學院還邀請其他高校、公司有經驗的教師、優秀的校友和技術人員來校講座,增加學生對外溝通和交流的機會,讓學生能夠接觸到新的、實用的業界動態,為今后工作做準備。從實踐活動效果來看,學生的實際開發能力提升很快,能夠將理論知識更好地融合到實際開發中。此外,實踐活動還可以促進學生創新團隊建設,通過高年級帶動低年級學生,使新生能更早、更快地融入到專業學習中。本校通過幾年的嘗試,取得了初步成績,學生在各項信息安全賽事中取得了優異的成績,培養出來的學生也受到了用人單位的認可。
1.1CDIO環節之設計——設計教學方案這一環節要求提高學生的感性認識,為學生主動建構打下基礎。教師可按照從感性到理性的原則安排課程教學,結合實際案例組織教學,提高學生學習興趣,幫助學生實現主動建構;利用多媒體教學手段和多種形式的教學資源,在各個教學環節中保護學生的積極性;創造交互式的學習環境,使學生的主動建構得以保障;開發網絡化教學平臺,為學生創造一個交互式的學習環境,能滿足個性化學習的要求;注重能力培養,使學生的主動建構得以發展。教師在授課過程中應該合理組織教學流程,精心策劃教學方案,可以“內容復習—新課引入—主題教學—總結回顧—課堂練習”作為主線開展教學。在每一章中引入該章內容導讀,概述該章主要內容及教學要求,讓學生先從整體上了解該章的知識框架,清楚地認識到該章的重、難點所在。在某一具體章節的教學中,教師可將微格教學思想及微格教學5個環節(導入、板書、提問、講解、課結)很好地融入該門課程。教師需要構建和諧的課堂教學氛圍,將教學過程視為是教師有目的、有計劃引導學生在掌握系統的科學文化基礎知識和形成基本技能的基礎上,促進學生身心全面發展的過程。教學過程是學生在教師指導下的一種積極主動認知過程,是師生的雙向交流與合作過程。教師應重視課堂提問,以操作系統中的一些基礎理論或簡單應用為提問內容,可以請學生參與回答,也可以自問自答,這樣既能幫助鞏固知識,又能活躍課堂氣氛并將學生的學習成效及時反饋給任課教師。
1.2CDIO環節之實現
1)課堂表達??紤]到成教生的自身特點,教師在該門課程教學中應盡量做到用語通俗易懂,將一些操作系統中本身較為抽象的術語及定義轉變為更為形象化及生活化的語言。對于某些基本概念,教材的定義都非常嚴謹而規范,但是教師可以通過自己的理解將其簡化,不要求學生死記硬背,而是知其意,概其義,如講到進程與程序之間的關系時,教師可以這樣描述:程序好比一份菜譜,是靜態的,而進程就像一位廚師按照菜譜炒菜的過程,是運行的、動態的,二者相輔相成,進程存在的目的就是為了執行程序,而程序又是以進程的形式存在以接受操作系統的調度。再以存儲管理為例,學生通常不容易建立起存儲管理的過程思維圖,教師可將其與生活中的實際結合起來進行闡述。操作系統的存儲管理如同一個大農場主管理著一個大莊園,當有農戶需要租用田地時,農場主就分配一塊地給他種(用戶區分配),等到地里長出了果實(結果出來后),農場主還得收回這塊地(存儲空間回收)。為了管好這片田地,農場主還要管好莊園的門,凡是要進去種地的,都得由他根據申請人的需要讓其到位置確定的實際田地干活(把邏輯地址轉換成物理地址)。莊園里還有一些大家可以共同使用的地方,如農場主的花園、工具房等,大家可以進去,也可以使用,但是不許改變任何現有的東西,還有每個農戶只能在自己的地里耕種,如果有人越權侵犯別人的領土就要受到懲罰享和保護)。當然,再大的地也不夠多,農場主為了多賺些錢,當把所有的地都租出去的時候,他會想辦法把有些種田人暫時不種的那塊地里的東西連地皮一起挖出來,放到倉庫里堆著,然后把地騰出來租給別人種(這就是“虛擬存儲”)。通過這樣一個生活中的實例,教師可以更加形象、直觀地讓學生理解存儲管理的過程及相關定義,再以此為基礎分析其工作原理,讓學生由感性認識上升為理性認識,這也是一個知識逐步升華的過程。
2)算法演示。操作系統課程中有一些重要的算法,教材中一般會給出相關算法的思想及應用舉例,那么如何能更生動地分析算法的執行過程呢?筆者認為可以設計基于Flash的算法演示動畫,如進程狀態變遷圖、銀行家算法、進程死鎖、地址轉換、頁面調度等一系列算法均可以由教師設計成Flas,通過其動態演示效果分析算法的思想及執行過程,幫助學生更好地理解算法原理,進而達到算法應用的目的。教師在算法演示中應遵循循序漸進的原則,首先介紹算法思想,然后由此推導出算法模型及相關公式,再過渡到分步驟的動態演示,期間應設置暫停按鈕,允許以交互式的方式控制算法的執行。
1.3CDIO環節之運作
1)搭建實驗教學平臺。對于某些基礎性的重要算法,還可結合算法思想編程實現并在虛擬機環境下安裝相應版本的操作系統加以運行,如并發過程中的進程創建、進程通信,文件管理中虛擬文件系統的創建,設備管理中驅動程序的工作過程等。學習操作系統課程的目的是為了理解操作系統的基本原理,進而過渡到使用、維護并具備一定的開發能力,因此實踐環節尤為重要,教師可結合CDIO理念中提出的“做中學”及“基于項目教學”思想,按照CDIO大綱要求,努力培養學生團隊合作和人際溝通的能力。教師可以設置若干個綜合性實驗,讓學生以小組合作的形式完成實驗項目,將任務劃分為方案設計、代碼調試、報告填寫,小組內的成員可以自行決定其扮演的角色。每個小組根據事先計劃完成實驗項目的開發,最終形成一份項目總結報告并制作PPT文稿,分組進行演示答辯。這樣既能夠讓學生根據自己的特長參與到項目實訓中,又增強了他們的團隊協作能力,同時鑒于成教生的編程功底較弱,因此整個實驗教學平臺的側重點在于程序的運行調試上,教師在項目執行的中期可以針對較復雜的實驗項目給出一部分實驗源代碼,各小組只需將空缺代碼補齊即可運行,讓學生著重體會程序的運行效果并由此聯系自己在使用操作系統過程中對諸如此類功能的設置等。這樣將書中原理過渡到實際應用,才能讓學生真正理解操作系統的5大功能如何發揮作用。
2)構建輔助學習平臺。教師可利用開發設計的輔助學習平臺為學生提供交流學習的空間。結合操作系統課程特點開發相應的網絡學習平臺是新形勢下課程發展的必然趨勢。成教生基于自身特點,可能由于工作原因不能兼顧每一次的課堂教學,如果缺席了相關內容的課堂教學又沒有及時補救,那么就會造成知識脫節,因此利用網絡教學平臺將使學生的學習不再僅局限于課堂內,學習過程不再受時間、空間的限制,也為學生的自主學習創造了條件,充分體現CDIO的“做中學”。為典型的輔助學習平臺架構。觀察該圖的各個模塊可以發現,通過網絡答疑能及時解決學生提出的問題,也能增強師生間的交流與互動。在“問題討論”區中,學習者之間也可以互動合作,分享學習過程中的經驗體會,推薦優秀的學習資源,這種方式能將大家凝聚為一個團隊,相互推動,相互進步。在“課程學習”模塊中,學生可以自主選擇“在線練習”或“在線測試”對所學知識進行自我檢測,以此發現自己學習中的不足并實時補救。
2效果評價
在面向成人教育的操作系統課程教學中,將CDIO教學理念引入其中,充分考慮學生的主動性及能動性,令學生的自主學習能力、團隊協作能力及綜合運用知識能力得到鍛煉與提升,學習效果良好,自考合格率有較大提高,學生對課程的教學評定為優秀。我們對近3年來學習該門課程學生的情況進行對比,通過匯總學生學習情況數據,發現基于CDIO模式的課程教學效果理想,學生掌握了更多的理論知識,提升了實踐能力,提高了自我認可度和對授課教師的認可度。操作系統課程教學情況匯
引言
隨著國內汽車電子產業的不斷升級和研發投入不斷加大,國內生產的汽車電子簡單的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。
1 引言
作為一種廣泛應用的軟件系統,嵌入式操作系統較之傳統的操作系統內核是比較小的,在嵌入式系統選型方面需要考慮到市場進入時間、可移植性、可利用資源等,在設計的時候需要考慮到任務調度和任務管理等方面的問題。
2 嵌入式操作系統概述
1)概念
嵌入式操作系統簡稱EOS,是一種廣泛應用的軟件系統,一般包括和軟件相關的標準瀏覽器、圖形界面、通信協議、設備驅動接口、系統內核、底層驅動軟件等。嵌入式系統的所有軟硬件資源由嵌入式操作系統負責任務調度、分配以及協調控制并發活動。
2)特點
a、系統內核小:在小型電子裝置中常用到嵌入式系統,相對有限的系統資源,較之傳統的操作系統內核是比較小的。
b、專用性強:具有很強的個性化,結合非常緊密的軟硬件系統,一般在進行系統移植硬件時,要根據系統硬件的增減和變化不斷進行修改。系統往往需要較大的更改在同時針對不同的任務的時候。
c、系統精簡:應用軟件和系統軟件在嵌入式系統中一般沒有明顯的區分。對功能的實現及設計不需要太復雜。這樣有利于實現系統安全和控制系統成本。
d、嵌入式軟件的基本要求是高實時性。為了提高速度,軟件要求固態存儲;高可靠性和高質量是軟件代碼的要求。
e、只有使用多任務的操作系統,開發嵌入式軟件才能走向標準化。沒有操作系統應用程序在芯片上直接運行。為了合理的利用專家函數庫接口、系統函數、系統資源以及調度任務,對開發平臺用戶必須自行選配,這樣程序執行的可靠性、實時性才能得到保證,而且開發時間會減少,軟件質量得到保障。
f、開發環境和工具:自舉開發能力在嵌入式系統中是不具備的,完成設計以后對其中的程序用戶也不能進行修改,如果要進行開發必須有一套開發環境和工具,這些環境和工具基于各種混合信號示波器、邏輯分析儀等,目標機和主機的概念往往蘊含在開發中,最后的執行機采用目標機,程序的開發采用主機,需要在開放式交替結合進行。
3 嵌入式操作系統的選型
當在進行嵌入式產品數字醫療設備、信息電器等設計的時候,至關重要的是嵌入式操作系統。那么以下是嵌入式操作系統在選擇時所遵循的一些原則。
1)系統定制能力。用戶需求的千差萬別、各異的硬件平臺,所以與傳統的Wintel結構相比信息產品不具有單純性,要分析產品是否需要改進系統底層,并且提出了針對于系統定制能力的要求。Linux是開放的源代碼,其優勢在于定制能力方面。隨著在嵌入式領域微軟加強力度和WinCE3.0源碼的開放,提升了其定制能力。
2)市場進入時間。一般演示和實際產品是不同的,與操作系統的選擇有關系的是產品時間表的制定。當前最非豐富的人力資源的是Windows程序員,而且WinCE也可能是現成資源最多的。要想很快進入市場可以使用WinCE。WinCE+X86做產品不要的功能被被去掉,這樣產品會很快出現,但是會出現核心競爭力差、成本高。由于沒有足夠的技術積累或編程人員缺乏等問題會影響開發某些高效操作系統的進度。
3)可利用資源。與學術課題研究不同,產品的開發為了滿足用戶的需求而以高質量、低成本、快速為目標。對產品的特色進行集中精力的研發,采用第三方產品或由操作系統附加來實現其他功能,對于選型而言操作系統的可利用資源是一個重要參考條件。大家看好WinCE和Linux是因為可以利用其中的大量資源。由于比較封閉,在開發其他實時操作系統時,可利用資源比較少,所以需要自己對多數功能進行獨立開發。由近幾年市場需求可知,Web瀏覽器的全功能均需由嵌入式系統提供,這需要一個GUI來支持并且要具有高可靠性和高性能。
4)可移植性。良好的軟件移植性無關于操作系統,可以在不同系統、不同平臺上運行,所以可移植性是進行嵌入式軟件開發要重點考慮的問題。一般情況下軟件的性能和通用性是矛盾的。優化性在某些特定的情況下受到損失是通用要付出的代價。當操作系統和平臺與產品緊密結合的時候,蘊含在其中的是產品特色。
5)成本。在所有產品中都需要考慮的是成本問題,商業系統WinCE等在許可證使用費用方面需要支付,而Linux是免費的,而問題不僅僅是這些。需要綜合權衡后再對成本進行考慮,其他因素可能因為選擇了某一系統而受到影響,如公司管理、人員投入、硬件設備選型等方面。
6)中文內核支持。西文方式是操作系統經常采用的方式,中文內核支持只是針對國內的產品。所以,必須要考慮的因素有中文處理與輸入是否被支持,各種國際標準如GB18030、GBK是否被支持,雙字節編碼方式是否被支持等。
在上述中減法是用WinCE+x86出產品,也就是PC家電化;而在加法中,在改進的適合應用家電行業的硬件解決方案,而且增加應用軟件和嵌入式操作系統。上述是家電PC的方式, 特色突出、成本低是其優勢,其缺點是難度大、周期長的產品研發。作為一個好的選擇Linx能夠讓你深入都系統底層。
4 嵌入式系統設計中應考慮的一些問題
嵌入式系統確切的說是一種概念,即可以是硬件嵌入也可以是軟件嵌入,在各種應用系統中嵌入計算機相關技術,設計一個好的嵌入式在這種概念下需要滿足的要求有:
A、與嵌入系統能夠很好的相匹配;
b、在嵌入系統中應用相關計算機技術能夠獲得很好的性能價格比;
c、在滿足嵌入系統功能的情況下,要盡可能簡單,這樣可以避免系統開銷較大。
計算機的很多功能都是由操作系統來賦予的,它可以說是計算機的一個擴展;另一方面,操作系統也是作為資源管理者存在于計算機系統中。內核的最小結構在嵌入操作系統中包含的部分有:
1)任務調度。在一個復雜的嵌入式應用中至關重要的是任務調度策略的優劣,不可能用單任務來實現,只能采用多任務來實現。對眾多的任務調度方法進行分類可以得出時間片調度、輪轉調度、優先級調度三種方法。不管是在嵌入式操作系統中還是在一般操作系統中,操作系統的核心都是任務調度。在設計嵌入式操作系統的時,進行優化選擇要根據被嵌入的實際系統的需求。單進程多線程調度是在實時嵌入式應用中常被采用來提高實時性。為了滿足不同用戶的需求,一般配有上述三種調度算法的函數在嵌入式操作系統中。當對自己的應用系統用戶開發完后,不會把沒有使用到的代碼連接到最終系統中。而在一般的操作系統中所有有關代碼都被加載到計算機系統中,對于使用中這些代碼是否被用到不進行考慮。期限調度法也被應用于實時嵌入式系統中,在這種調度方法的保證下設定的期限之前每一個進程被調度執行完。
2)存儲管理。存儲管理在一般操作系統中是非常復雜的,其中得到廣泛普及的是虛擬管理,與計算機實際內存相比應用系統可以獲得的編制空間更大,虛擬存儲管理是對外存和內存通過操作系統來進行管理,一個獨立的虛擬存儲空間能夠被每一個應用程序得到。虛擬地址是程序訪問的地址,對不同應用程序的共享存儲空間進行維護和管理,而且通過段、頁管理操作系統完成完成虛擬地址到物理地址的轉換和頁面換出與換入。各自的地址空間中分配各應用程序進行運行,不會產生相互干擾的現象。在在具體應用嵌入式的時候,所有靜態內存分配通常是嵌入式操作系統采用的方式,各自可能使用的內存容量和進程數量在開發的時候是可以預測。存儲管理在嵌入式操作系統中是比較簡單的。因為不能預測頁交換的時間,若采用虛擬存儲技術在實時嵌入式應用中,所以這種方法是不可取的。常見的動態內存分配法是一塊固定大小的內存在緩沖區中被動態分配出來,在使用完后就釋放出來。存儲管理在嵌入式操作系統中一般來說沒有收集垃圾的功能。可能會有幾種情況進行組合時是在復雜的應用系統中,在處理時候要按照具體情況來進行。如在一個嵌入式系統中有多個處理器,有非實時應用、軟實時應用和硬實時應用,設計時虛擬存儲技術被應用在非實時部分,動態內存分配被應用在軟實時部分,靜態內存分配被應用于硬實時部分,而且在不同的處理器上分別運行著三種應用。嵌入式操作系統在內存分配方面強烈的依賴于實際的被嵌入系統。自己的實際操作系統的在開發時候用戶可以進行選擇,因為幾種分配策略由一個通用嵌入式操作系統提供,這就顯示了嵌入式操作系統的裁剪性。內存保護作為一個重要的特性存在于存儲管理中。每個應用程序在一般的操作系統中對其他應用程序的地址空間不能任意訪問,它們都有自己的地址空間。在應用環境的限制下,存儲器不能被大量使用,盡管已經很便宜的存儲器芯片,這時就會嚴格限制代碼量。如只有幾KB在某些嵌入式操作系統中,所以進行內存保護處理時就顯得相當薄弱,一般在即使系統崩潰重大的損失也不會造成的領域中,常見的有手持電話。在內存保護方面有的嵌入式應用要求非常嚴格,如嵌入式操作系統在武器系統中就要求有內存保護功能。
3)中斷。在中斷和查詢是計算機系統接收事件的有兩種方法。在多任務操作系統中,采用查詢方式進行對I/O請求或事件的處理,大量的系統資源會被消耗。所以在處理I/O請求或事件使采用中斷方式是比較合適的。中斷和中斷處理程序在操作系統中是緊密聯系在一起的。如在I/O操作中,其過程如下:
中斷處理在嵌入式操作系統是被十分重視的,事件驅動在嵌入式操作系統中是常見的。中斷處理程序在嵌入式操作系統中引發的任務切換是:
4)用戶的接口與操作系統。操作系統提供有兩類接口給用戶使用:人機界面,不管是命令形式還是視窗形式,這個接口是操作系統的一個外殼,而在嵌入式操作系統中這個接口是不存在的;而在系統調用接口,在每個操作系統中都提供不同的調用種類和功能,如果系統調用在操作系統中提供的越多,那么就會擁有越強的功能,就能提供簡單而高效的支持給應用程序的開發,而且程序的維護量也會減少。而在嵌入式操作系統中這一規律則不太適用,在調制解調器上可以應用簡單的,在衛星地面通信接收站中可以應用復雜的。
5 結語
綜上可知,在對被嵌入系統進行充分考慮的前提下進行嵌入式操作系統的設計,在操作系統的設計和選擇的時候和根據實際的應用來進行,嵌入式操作系統雖然具有可剪裁性,但是這種剪裁是有限的。嵌入式操作系統在迅速發展,但同時面臨著很多機遇和挑戰。
參考文獻:
[1]Labrisse J.嵌入式系統構件[M].2 版.袁勤勇,黃紹金,唐青,譯.北京:機械工業出版社,2001:130-143.
[2]Jean J. Labros se. 嵌入式實時操作系統C/ OS - II ( 第2版) [ M] . 邵貝貝等譯. 北京: 北京航空航天大學出版社,2003.
[3]Sakamura K,Koshizuka N.T-Engine:The Open,Real-Time Embedded-Systems Platform [J].IEEEMicro,2002,22 (6):48-57.
[4]周立功等編. ARM 微控制器基礎與實驗[M].廣州周立功單片機發展有限公司, 2003.
[5]覃征,邢劍寬,董金春,等.軟件體系結構[M].2 版.北京:清華大學出版社,2008:95-136.
[6]陳向群, 王雷. Windows 系統分析及實驗教程[M]. 北京: 機械工業出版社, 2003.
[7]梁堅, 朱強, 王錦標. 嵌入式技術在SUPMAX800 集散控制系統中的應用[J], 計算機工程, 2003,( 9) : 151~153.
[8]周毓林, 寧楊,陸貴強, 等. Windows 內核定制及應用開發[M]. 北京: 電子工業出版社, 2005.
一、經濟系統的層次性
一般系統論創始人貝塔朗菲定義:“系統是相互聯系相互作用的諸元素的綜合體”,他強調元素間的相互作用以及系統對元素的整合作用。牽一發而動全身是系統的特征,更是當今社會經濟的特征。
經濟系統是系統經濟學研究的主要對象,經濟系統的層次性是系統經濟學的重要概念之一。經濟系統的層次性指根據某個或某些指標可以把經濟系統劃分為若干層次的經濟系統,每個層次的經濟系統都有自己獨特的特征和規律。根據組織水平的不同可以,將經濟系統分成六個層次,即“家庭經濟系統企業經濟系統產業經濟系統區域經濟系統國家經濟系統全球經濟系統”。
一般來說,高層次的經濟系統是以低層次的經濟系統為其載體的。低層次的經濟系統是高層次經濟系統的子系統或經濟元(經濟元是指具有一定功能的所有系統水平上的經濟實體,經濟系統是由經濟元和經濟元之間的關系組成)。
二、Android智能手機操作系統在經濟系統層級過渡的鏈接
1.家庭經濟系統過渡到企業經濟系統
溝通與交流是人類組成社會的充分必要條件。信息爆炸的現在,人與人、人與家庭、家庭與家庭的聯系需求比以往的任何時期更加強烈。手機的出現更好的滿足了人們溝通交流的需求,隨著消費者對手機需求的增加,其對手機功能的需求卻與價格成反向關系。
Android智能手機操作系統的成功研發,很好的解決了需求和價格的問題。Android手機操作系統是開源的,采用Webkit瀏覽器引擎,具有觸摸屏、高級圖形顯示和上網功能,消費者能夠在手機上查看電子郵件、搜索網址和觀看視頻節目等,比其他手機具有更強大的搜素功能,可以說是一種融入全部Web應用的單一平臺。它的開源性,極大地降低了開發成本,因此安卓手機受到市場強烈歡迎,市場占有率從2009年的1.3%①,一路飆升到2013年第一季度的51.4%。
Android手機系統的特征在于系統的開放性和服務免費,作為對第三方軟件完全開放的平臺,使開發者開發程序時擁有更大的自由度,突破了iPhone等只能添加為數不多的固定軟件的枷鎖;同時與Windows Mobile、Symbian等廠商不同,它免費向開發人員提供,可節省近三成成本。生產成本的降低和家庭經濟系統對其需求的加大,企業經濟系統也在隨之變化。
本文以代表性的三星集團為例。三星在市場上的崛起可以通過和諾基亞(生產Symbian操作系統)的市場占有率比較看出。2009年第三季度諾基亞在中國市場的占有率為50.08%,三星為12.36%,而到了2012年第二季度諾基亞卻降到了2.5%,三星為22.20%②。2013年第一季度,全球安卓智能手機收益共達50億美元。三星以占安卓智能手機總收益的95%份額主導安卓手機市場。
三星的成功依賴于充分運用了企業經濟系統中各經濟元之間的相互作用。企業系統的經濟元包括很多,本文只選取對三星成功最重要的六個經濟元和它們的相互作用來分析。如圖1所示。
圖1 智能手機企業經濟系統
三星的高管對家庭經濟系統的需求信息做出正確的判斷,將旗下50%智能手機采用Android操作系統,全面轉投這個開源平臺。三星的財務管理子系統向技術研發管理子系統投入了大量研發安卓智能手機操作系統的研發費用,像產品數據管理子系統投入設計費用,以便安卓手機能夠更美觀便捷,同時向營銷管理子系統支出營銷費用,進行系統營銷。三星通過家庭子系統了解安卓智能手機操作系統的需求,進而通過企業經濟系統的整體運作,擴大市場占有率,獲取超額利潤。
2.企業經濟系統過渡到產業經濟系統
Android操作系統為制造智能手機的企業經濟系統帶來了超額的利潤,這必定會帶動相關企業經濟系統的發展,為整個產業經濟系統帶來利潤。
這里的產業經濟系統的經濟元主要有9個,即家庭經濟系統、Android手機制造企業經濟系統、廣告企業經濟系統、半導體企業經濟系統、開發Android操作系統企業經濟系統、移動網絡運營企業經濟系統、Android手機應用交易平臺、支付平臺、Android手機應用軟件開發企業經濟系統。
與安卓手機相關的產業經濟系統中這9個經濟元和經濟元間的相互作用如圖2。圖中是以現金和服務或產品為鏈接,將家庭經濟系統、Android手機制造企業經濟系統同其他的經濟元相互作用共同構成產業經濟系統。從圖中我們可以看出,只要產業經濟系統中的一個經濟元能獲得超額的利潤,由于關聯性,可以帶動整個產業經濟系統獲得利潤。
圖2 與Android手機的相關的
產業經濟系統之間的經濟關系
3.產業經濟系統過渡到國家經濟系統
安卓智能手機操作系統這種產品的特殊性,使之不能像其他傳統產品那樣可以按照家庭經濟系統企業經濟系統產業經濟系統區域經濟系統國家經濟系統逐級過渡,因為安卓手機操作系統是一種虛擬產品,受到區域限制較少,所以可以直接從產業經濟系統過渡到國家經濟系統來分析。
安卓手機產業經濟系統的發展,引起了我國政府的重視。中國工業和信息化部電信研究院在一份報告表示:“我國移動操作系統研發對于Android系統存在嚴重路徑依賴?!盇ndroid操作系統是一種開源系統,但其核心技術和技術路線受到谷歌的嚴重控制,導致我國操作系統研發企業時刻面臨谷歌的商業歧視。
我國三大運營商中,中國移動推出了自有的手機操作系統,名為Open Mobile System,簡稱OMS。由于其技術短板,導致我國品牌缺乏國際競爭力,而且消費者對OMS系統幾乎沒有差異化的體驗,與Android系統相差甚遠。
手機操作系統作為向上支撐軟件、向下管理硬件和橫向構建手機產業經濟系統的基礎,必然成為提高我國智能手機產業競爭力的第一突破點。失去產業主導權將導致國際巨頭長期壟斷市場,掠奪利潤,威脅安全,所以必須大力發展我國自主知識產權的智能手機操作系統,進而提高我國在智能手機和移動互聯網產業的國際競爭力,更加快速地促進我國智能手機產業的發展。國家經濟系統中與智能手機經濟系統相關的經濟元主要有5個,即Android智能手機操作系統的產業經濟系統,我國自主研發的操作系統產業經濟系統、司法系統、政府、教育系統。國家經濟系統的經濟元之間的相互作用如圖3所示。
圖3 國家經濟系統中
與智能手機經濟系統相關的經濟元及其之間的關系
從圖3可以看出,我國要想提高在智能手機和移動互聯網產業的國際競爭力就應該從國家經濟系統的整體出發,政府分別向司法和教育系統傳遞出支持研發和大力發展人才的信息,然后各個系統再做出反應,只有國家經濟系統的每個子系統相互協調、相互配合、相互激勵才能使國家這個總體經濟系統得到整體的升級。
三、小結
本文以系統經濟學的層級結構理論來淺析了Android智能手機占有率提升的這個經濟現象。當今社會是“系統的時代”,經濟的一些經濟現象應該從系統的角度去分析,問題的解應該放到社會這個大的系統中來尋求,而非只是片面的拘泥于小部分來找答案。
注釋:
①數據來源于艾媒市場咨詢2006-2010年中國智能手機操作系統市場份額。
②數據來源于艾媒市場咨詢。
參考文獻
[1]昝廷全.系統經濟學探索[M].北京:科學教育出版社, 2004.
[2]昝廷全.系統經濟學學術散墨[M].北京:中國書店, 2012.
然而在實際教學中發現,該課程并未能有效的提高學生獨立開發軟件的能力,僅僅實現了讓學生了解操作系統的構成及功能實現這一基本教學目標。這個問題的出現與我們課程特點密不可分。首先,課程設置偏向理論,課程內容偏向軟件設計和算法實現,雖配套有實驗課程,但比例較低,不利于提高學生的實踐能力。其次,操作系統涉及到各類軟硬件資源,因此,需要專門的實驗平臺,否則,直接采用傳統的編碼和調試方法及有可能導致系統崩潰。最后,對于操作系統這種大型軟件的開發,需要學生具有較強的編程開發能力,實際上,很多學生并不能快速有效地將算法轉化為可執行程序,少數學生雖能快速實現局部功能但對軟件的整體思維和開發能力欠缺,目前大部分的實驗工作主要集中與操作系統部分子系統功能的實現。本文對操作系統理論教學及實驗教學中學生遇到的各種問題進行歸納總結,進而探討培養學生的軟件整體開發思維和方法,提高學生的獨立軟件開發能力。
1 問題歸納
1.1 局部思維方式
所謂局部思維方式是指學生在學習操作系統知識時,只關注當前學習或實踐的內容與知識點,很少能將當前知識與前面的知識聯系起來,這導致學習完一個知識點后,學生很可能不知道該知識點是為了解決什么樣的問題。這樣的局部思維方式是學生長期的學習過程中養成的不良習慣,不僅在學習操作系統這門課程中出現,在其他課程的學習中也同樣存在。
操作系統是一個整體性軟件,各章節的知識都是相互關聯的,因此,在這門課程的學習過程中,這種局部思維方式帶來的問題就更加明顯。下面總結了幾種由局部性思維帶來的普遍性問題。
關注知識細節,忽視知識的宏觀應用。實際教學中發現,很多學生在學習的過程中常常發生一葉障目的現象,通常的表現是學習了當前的知識點后,不知道學習該內容的目的,或者不知道該知識是用于實現操作系統的哪部分的功能的,因此,常常在學期結束后詢問學生什么是操作系統,它有哪些構成和基本功能,很多學生還是一頭霧水。這些主要是由于學生缺少以宏觀的視角來看待和解決問題的能力,不能正確認識每個細小知識點在整個宏觀問題中所處的位置。這就好比學生們仔細認真的觀察了一磚一瓦(各個細小知識點)卻不知道磚瓦是用來蓋房子(開發大型的系統軟件操作系統)的,或者即使知道使用磚瓦來蓋房子,也不知道在什么地方什么時候使用什么材料來蓋房子,概其主要原因就是學生過于關注一磚一瓦的實現細節而忘記關注磚瓦的使用過程,即只關注微觀的知識細節,而忘記學習宏觀的知識應用方式,這也是現在學生學習中的普遍性問題。
關注知識點個體,忽視整體聯系。操作系統課程中,每個章節內容對應部分子功能的實現,每個子功能相互協作才能構成一個完整的操作系統軟件。學生在學習過程中較多關注每個子功能的實現,而忽視了它們之間的聯系,因此,無法有效的將各個子功能拼接成一個完整的系統軟件。例如,學生不清楚I/O系統與用戶之間的接口在哪,如何讓處理機管理系統、存儲管理系統、I/O系統等協同工作,等等。
1.2 知識儲備不足
實際教學中,除了上述局部性思維方式外,學生知識儲備不足也是影響課程學習的另一主要原因。我們知道操作系統是一門綜合性課程,想要學好操作系統,既要了解軟件開發的相關知識,也要有硬件的基礎,因此,知識儲備不足會直接影響操作系統的學習。其表現歸納如下。
⑴ 常見的概念模糊。例如,邏輯地址空間與物理地址空間、程序的鏈接、數據結構、虛擬化等等常見概念的理解模糊。還有很多同學不了解內存單元的地址,更不知道內存地址的作用是什么,因此,在介紹地址映射、數據裝入內存的過程需要花費大量的時間去補充基礎知識。
⑵ 硬件基礎薄弱。計算機系統硬件組成知識薄弱,不了解計算機系統的工作流程,不了解計算機常見硬件的基本功能和基本特性。
⑶ 代碼實現能力差。操作系統實驗課程的教學中看到學生的編程能力普遍較差,且沒有軟件開發基礎和思維方式,很多學生只注重功能的實現,不關注各個部分的接口,導致各子系統可以正常運行,但是,無法拼接成完整系統。主要表現為編碼隨意,亂用GOTO語句,數據結構定義不規范,指針使用隨意。例如,通過printf(“%d\n”,i),學生編寫輸入語句scanf(“%d\n”,&i),而實際規范的語句應為scanf("%d",&i)。
2 操作系統課程教學的幾點思考
基于上述問題,本文針對操作系統教學提出幾點改進意見。
2.1 理論與實踐相結合
注重理論教學的同時,也要加強學生的實際應用能力的提高?,F在的學生更加看重知識的實用性,將自己所學知識轉化為實際應用和實踐是學生自主學習的主要內在推動力。單純的進行理論教學,會讓學生感覺操作系統是一門生澀枯燥毫無用處的一門課程。
在教學中,我們將理論和實踐相互結合,詳細闡述理論知識,讓學生充分理解相關工作原理及實現算法,再通過配套實驗課程指導學生將理論知識轉化為實際應用,通過這一轉化過程,提高學生對操作系統實用性的認識,激發學生自我學習的內在動力。理論轉化為實踐的過程中,學生會逐漸發現只有扎實的理論基礎積累才能快速的轉化成實踐,提高了學生對理論知識學習的重視程度,從而形成理論指導實踐,再由實踐去反思理論的良性循環。
在理論轉化成實踐的過程中,學生能夠將空泛的概念落到具體實處加深印象和理解,例如,內存的物理地址空間,可以通過編碼的調試過程查看每個內存單元的存儲內容,充分理解內存的數據存儲及變化。除此之外,通過理論轉化代碼實現的過程能夠快速有效的提高學生的編程能力,發現自己在編碼方面的不足和問題,以及提高自身的軟件設計能力。
2.2 整體與局部相結合
建立學生對于操作系統的整體概念,關于處理機管理、存儲器管理、I/O設備管理、文件管理及用戶接口等模塊都是操作系統的子系統,這些子系統相互關聯、相互協作才能實現操作系統對各種軟硬件資源進行管理并為用戶提供良好工作環境的功能。
教學中充分強調操作系統的整體結構和設計方法,在對整體結構和功能充分了解以后,再介紹操作系統的模塊劃分。透徹講解每模塊的設計思想和功能實現,讓學生在潛移默化中學習軟件開發的思維方式和解決方案,逐漸提高學生運用已學的設計思想解決問題的能力。只有對每個子模塊具體功能原理和實現方法充分掌握后才能快捷迅速的將它們從理論知識轉化成代碼,也只有在每個子功能的代碼都能充分實現的情況下,才有可能將它們連接成一個完整的大型的操作系統軟件。
整體是由局部組成,只有每一子模塊都實現了才有可能連接成整體,而整體不是對每個子模塊的簡單拼湊,各個模塊之間如何相互協調共同完成用戶任務是需要在一開始的軟件整體設計中考慮的問題,此外,軟件設計之初我們還需考慮各子模塊之間的接口。因此,在整個教學過程中,我們遵循“整體-局部-整體”的一個教學過程。通過這個過程,讓學生充分了解整體與部分之間的相互關系,加深理解。
2.3 層次式教學
操作系統課程是按年級統一開課的,但是同一個年級,不同學生的差別也很大,比如,他們各自的知識儲備、自身的理解力和領悟力、興趣愛好,比如有的善于思考而有的喜歡動手編程等等。因此,對不同學生采用統一標準顯然是不合適的,對于能力強、精力充沛的學生,這個統一的標準不能激發他們的潛能,而對于知識儲備相對較弱、能力稍差的學生,這樣的統一標準又會打擊自信心。因此,對于操作系統無論是理論教學還是實驗教學,都建議采用層次式教學,對于不同水平的學生提出不同要求。
在理論教學中,我們將掌握操作系統的基本概念、設計思想和算法作為基本教學目標,對于能力較強的學生在教學中提示一些課本中沒有的知識點去拓展知識空間和思維方法,比如:在學習了用戶空間和內核空間的基本概念后,讓有能力的學生了解用戶空間的數據如何與內核空間的數據進行交互,實現兩者之間數據交互的方法有哪些。而對于那些動手能力較強的學生可以引導他們用1~2種方式去實現將用戶空間的數據傳遞到內核空間內。
在實驗教學中,基本的教學目標是獨立實現操作系統中的基本算法,如進程同步、進程調度算法、銀行家算法及內存的分配回收算法等等。對于能力較強的學生可以引導他們去讀一些開源linux操作系統的源代碼,有選擇的對部分功能模塊進行優化改進,然后再編譯鏈接,最終將該改進植入操作系統中,以此激發學生的學習興趣。
3 結束語
操作系統課程的教學不僅需要教師不斷更新教學內容和教學工具,還要求教師能夠根據學生的特點因材施教。本文總結了歸納操作系統在理論教學和實驗教學中出現的一些常見問題,如局部思維方式問題和知識儲備不足代碼實現能力差的問題,并針對這些問題提出三點改進建議:強調整體與局部之間的相互關系,形成整體-局部-整體的教學模式;要求理論聯系實際,將理論知識應用到具體實踐中去,從理論到代碼實踐,再通過代碼實踐過程反思理論方法的有效的教學方法;針對不同學生采用層次式教學手段,設定基本教學目標,對于完成基本教學目標的同學引導其完成更高層教學目標,提高學生學習興趣和能力。
中圖分類號:TN409 文獻標識碼:A 文章編號:1674-7712 (2014) 04-0000-01
IC卡,一個正蓬勃發展的產業,一個與我們的生活正越來越密切的產業。在因特網、分布式和普及計算大潮涌來時,IC卡扮演著越來越重要的角色。本課題的背景是校園一卡系統收費終端的應用,隨著科學技術的迅猛發展,社會的日益信息化,技術的不斷革新以及要求的不斷提高,需要設計出一個功能豐富,性能更加穩定的,并且具有友好人機界面的嵌入式智能終端,來取代現在市場上的基于單片機的收費終端,該讀卡器必須簡單,方便快捷。
一、基于單片機的IC卡讀卡器的工作原理
其工作原理是通過射頻讀卡器向IC卡發一組固定頻率的電磁波,卡片內有一個IC串聯諧振電路,其頻率與讀卡器發射的頻率相同,這樣在電磁波激勵下,LC諧振電路產生共振,從而使電容內有了電荷;在這個電荷的另一端,接有一個單向導通的電子泵,將電容內的電荷送到另一個電容內存儲,當所積累的電荷達到2V時,此電容可作為電源為其它電路提供工作電壓,將卡內數據發射出去或接受讀卡器的數據。其發射原理是非接觸性IC卡與讀卡器之間通過無線電波來完成操作。二者之間的通訊頻率為13.56MHZ。非接觸性IC卡本身是無源卡,當讀卡器對卡進行操作時,讀卡器發出的信號由兩部分疊加組成:一部分是電源信號,該信號由卡接收后,與本身的L/C產生一個瞬間能量來供給芯片工作。另一部分則是指令和數據信號,指揮芯片完成數據的讀取、修改、儲存等,并返回信號給讀卡器,完成一次操作。讀卡器則一般由單片機,射頻模塊和天線組成,并配有與PC的通訊接口,打印口,I/O口等,以便應用于不同的領域。
二、系統設計的整體規劃
(一)系統設計思路。IC卡的應用領域非常廣泛。在IC卡的觸點和讀卡器的觸點良好接觸之前,讀卡器不應對IC卡施加有關信號,以免造成不可預料的損壞。IC卡讀卡器作為系統和用戶交換的接口,必將面對各種各樣復雜的應用環境。因此,在設計階段應注意IC卡讀卡器的環境。作為操作系統,管理IC卡的硬件資源和數據資源是其基本任務。IC卡上的硬件資源包括CPU、ROM、EEPROM和RAM及通訊接口,這些都由IC卡上操作系統統一管理,使外部不能直接控制這些資源,使IC卡對外表現為一個“黑匣子”,從而加強了系統的保密性能。智能卡通訊管理主要功能是執行智能IC卡的信息傳送協議,接收讀卡器發出的指令,并對指令傳遞是否正確進行判斷。
(二)系統論證方案。IC卡是一種集成電路卡,它的讀/寫設備是每個IC卡應用系統必不可缺的周邊設備。該設備通過IC卡的8個觸點向IC卡提供電源并與IC卡相互交換信息。雖然IC卡是從磁卡發展而來的。本IC卡讀卡器的功能為:當IC卡中的射頻模塊產生晶振頻率,通過天線發射出去,且將天線接收到的IC卡讀卡器的卡號數據返回給單片機,最終通過RS232接口將卡號數據在電腦上顯示。
(三)系統的整體結構。對于本論文的基于單片機的IC卡讀卡器系統來說,整個系統由電源模塊、時鐘電路模塊、蜂鳴器模塊和天線電路幾個部分組成。整個系統由單片機控制,能夠通過接口把數據從PC上顯示出來,電源模塊負責提供電力,當讀卡器讀取成功后,通過蜂鳴器響兩聲來表示。
三、讀卡器硬件設計
(一)單片機的簡介。本系統采用STC12LE5A16S2單片機作為主控芯片。STC12LE5A16S2是16K Flash的宏晶STC12C5A60S2系列單片機,采用宏晶第六代加密技術,STC12C5A60S2系列單片機器件是1個時鐘/機器周期8051單片機,低功耗、高速、高可靠、強抗靜電、強抗干擾。
(二)電源電路。電源電路是指提供給用電設備電力供應的電源部分的電路設計。本系統的電源電路工作狀況為:VCC(5V)和VDD通過電容接地,且VCC(5V)通過SPX1117M3-3.3穩壓電源芯片將電壓穩定在3.3V為系統提供電源,本系統所用的電源電路電路。
(三)蜂鳴器電路。蜂鳴器是一種一體化結構的電子訊響器,采用直流電壓供電,廣泛應用于計算機、打印機、復印機、報警器、電子玩具、汽車電子設備、電話機、定時器等電子產品中作發聲器件。
本系統中的蜂鳴器系統由三極管及喇叭構成,其工作狀況為:當三極管的發射極為高電平,基極為低電平時,三極管導通,蜂鳴器發出響聲,而當發射極和基極為高電平時,蜂鳴器不發出聲響。電路中采用單片機P1.6腳控制三極管導通和截止。
(四)天線電路。本次設計的系統,系統數據存儲在無源Mifare卡中。讀取模塊的主要任務是將能量傳輸給Mifare卡,并與之建立通信。天線是非接觸式IC卡讀寫模塊的一個重要組成部分,在讀寫模塊和非接觸式IC卡通信過程中,天線用于產生能發射和接收射頻信號的磁通量,而磁通量用于向卡提供電源并在讀寫模塊和卡片之間傳送信息。因此,在設計中要求天線線圈的電流最大,以用于產生最大的磁通量,并要確保有足夠的帶寬。
四、結束語
本次課題研究的是基于單片機的IC卡讀卡器設計,它的作用就是讀取IC卡的卡號,最終在電腦上顯示。首先,選定相應的單片機,了解其各個引腳的功能,然后查閱相關的單片機的資料和IC卡書籍。然后設定對應的方案,最終確定以STC12LE5A16S2單片機為控制核心,用FM1702射頻模塊,用來產生晶振頻率通過天線發射出去,且將天線接收到的數據反饋給單片機,最終通過RS232接口將接收到的數據顯示在PC上,且還要完成當IC卡讀卡器讀取、成功后,通過蜂鳴器響兩聲來表示。
參考文獻:
目前,企業的財務管理環境面臨著發展的機遇和挑戰:在全球實現一體化、信息化的的背景下,財務管理工作也要逐步實現信息化,這體現為,財務管理信息化、網絡化;財務聯系電子化;財務通訊科技化;管理人員專業化等多個方面。同時,對于許多企業而言,管理手段不斷豐富,無形資產的比重逐漸上升,在這樣的背景下,更新財務管理理念,引進新式財務管理模式,是十分重要的。
對于筆者所在的公司,企業的發展進入了國際化和現代化的新階段。作為大型集團企業下屬的地區公司,在籌融資及投資功能被上收的情況下,作為生產中心,財務管理的核心內容似乎只剩下了成本控制管理。以ERP作業鏈為基礎的企業業務運作模式在一定程度上整合了企業財務管理各個環節,有力支持了企業財務核算和管理。
一、EPR 系統概述
(一)EPR 系統簡介
所謂ERP(Enterprise Resource Planning)系統,是指企業在資源管理過程中對資源分配使用的各個環節進行系統化安排,從而達到資產使用效率最高的結果。EPR系統的主要運行職能是對企業財務管理中的每一個環節進行重新的安排、規劃和優化,從而使得財務管理人員能夠清楚地認識到公司資產的真實實時價值,為公司決策提供基本信息。。
(二)ERP 系統特點
EPR系統整合了公司內部的財務信息,從而使財務管理人員和決策人員能夠清楚地獲悉公司內部的基本資產狀況。EPR系統的作用首先是統一信息,由于其運行模式具有高度標準化,運行內容有統一標準,因此EPR系統特點之一是統一性和高效性。
同時,ERP系統的信息獲取和更新是實時的。這意味著,管理系統能夠獲取最新的生產經營狀態。因此,EPR系統整合各個部門的財務信息,有助于系統信息整合后及時更新總體數據,EPR系統具有高度及時性。
(三)EPR 系統在財務管理中的意義
從EPR的定位中我們就可以看出,EPR的核心內容是價值鏈與業務鏈的融合管理。因為,在公司中對財務資產的管理一直是財務部門的分內職責,而財務數據又基本上來源于業務部門的生產經營行為。因此通過組織實施ERP系統,將業務部門操作與財務價值核算實時的連接起來,對于提高企業財務管理效率有很大幫助。我認為,EPR系統在財務管理中的意義如下:
1、EPR系統整合財務信息
在傳統的信息收集模式和財務管理模式下,財務信息是十分不統一的,各個部門各自為戰。信息難以及時傳遞,各部門對公司整體運營狀況難以做出有效評估和調整。這極大地限制了公司決策的科學性和各個部門能動性的發揮。在EPR系統下,通過各業務模塊的融合,上述問題將迎刃而解。例如:生產計劃部門通過生產模塊下達生產計劃、根據生產經營計劃各業務部門會產生其各自的物料或服務需求計劃。這些需求計劃,在企業的采購模塊里又會生成采購計劃,相應的后續采購、驗收、掛賬付款等事項在系統中相應完成。采購的物料和服務,又會根據需求計劃和生產計劃分配到各自的成本中去,經過系統設定的成本核算模式,相應的成本將會實時計算出來。EPR的運用使每個部門擺脫其各自為戰的尷尬局面,解決了財務部門難以掌握整體信息的困境以及各個子核算系統相互分離的問題,解決了內部財務信息傳輸和整合的問題。在EPR系統下,上述所以信息都會被整合核算成為一個整體。大大減少了財務信息失誤的可能性,信息高度整合,企業財務管理的效率大大提高。
2、提高財務管理的效率
企業在整個生產經營過程中,需要對自身的財務狀況、運營能力、生產能力、市場環境等方面與進行一系列評估,并在此基礎上做出決策。在傳統財務管理模式下,據以評估的信息是相互分離的,并且在不同的部門中進行管理,如:銷售部門只關心銷售數據、生產部門只關心成本數據、采購部門只關心采購數據,很多重大決策缺乏過硬的數據支持。在EPR系統下,上述信息得到了高度整合。舉例而言,在原料供應的需求中,其要受到受到市場環境、和庫存狀況等因素的影響,在EPR系統下,上述信息得到整合,企業可以根據生產狀況、庫存狀況等決定采購與否以及采購數量,這一財務管理決策效率得到了大幅度提高。EPR 系統協調各個部門信息,從而使系統自身產生價值,形成產品和信息的一致性,實現資金流動、實物流動、信息流動的高度統一,加強了財務管理的一致性。提高財務管理的效率。
3、EPR系統的安全性和及時性
EPR系統是一個現代企業中資源管理的科學分析體系,從而使企業的財務信息資源能夠準確快速地提供,減少決策失誤.EPR系統有效實現了對財務管理的信息整合,使得各個部門的信息能夠及時得到匯總,實現數據的動態化管理。同時,EPR系統強調對數據的統一管理。系統論認為,數據的統一整合和系統分析,能夠有效減少每一個環節在最終信息獲得和決策中所占的比重,從而有效避免人工失誤,保證系統的安全。
然而,需要企業注意的是,EPR系統的安全性是相對的。在計算機和互聯網高度發達的今天,網絡黑客無所不在,一些國際化大公司也存在不少被黑客攻擊造成重大損失的案例。企業應該提高警惕,加強網絡和信息系統的安全。
二、EPR系統的應用
本文以筆者所在公司ERP系統為例說明,如何在財務管理中實現EPR系統的應用。
(一)數據采集系統的應用
ERP管理系統所采集的數據并以此建成的數據庫主要包括總帳會計模塊、物資采購模塊、生產計劃模塊、項目管理模塊等等,涵蓋公司和具體業務流程,由此可見,完整的數據采集系統對EPR系統而言必不可少。
(二)ERP系統與會計核算系統融合
ERP系統作為整合公司業務的系統,其并不是專業的會計核算軟件。其產生的原始數據信息,需加工處理成財務信息。為此,公司采取了ERP系統與財務核算系統融合的方式,將ERP原始業務信息,通過對照表等方式,轉化成財務數據。這樣,每當業務部門有業務發生,產生了實時的實物流,相應的就會產生實時的會計信息,為企業加強成本控制,實施財務管理提供了有力支持。
(三)網路系統更新
EPR系統強調數據整合,因此在應用中企業應當建立完善的內部網絡和數據系統,為分公司和子公司建立并并入公司主干網絡之中。與此同時,網絡及硬件的建設也為系統安全提供保障。
(四)操作系統統一化
EPR系統的數據格式應當統一,才能實現數據共享。在許多企業中,其信息設備尚存在多個操作系統并用的情況,這會導致信息處理的混亂。因此,在應用EPR系統時,企業必須統一操作系統。為此,公司在集團總部層面上控制編碼標準化是較好的方法。
(五)財務制度的統一化管理
EPR系統中要求業務流程,編碼等高度一致。而在現實操作中,許多企業的各個部門采用不同的標識方法和標識技術,造成企業內部存在人為的信息障礙,這對于企業長期發展十分不利。鑒于此,企業應當以總部EPR系統為模版,要求各個部門必須按照EPR系統的要求整理財務報表,整合財務數據。企業應當建立內部統一的會計制度、核算辦法、標準編碼、業務流程和應用系統,才能實現財務管理的統一化。
另外,為適應ERP系統實時,相關業務流程會有所改變,因此切合業務流程的改變,相關的制度也應重新修訂。
(六)EPR系統人員更新
EPR系統使得財務管理的處理在網絡和計算機設備上完成,這就要求各業務部門操作人員需要提高認識,明確自己的操作在整個企業業務鏈條中的位置,并且明白每個操作所產生的財務后果。同時,傳統許多由財務人員掌控和操作的程序已經被EPR系統自身所取代,這需要財務管理人員認真調整心態,及時更新知識,并將財務監督前移到業務部門崗位上去。
三、 結束語
EPR系統,作為財務管理的核心系統,是現代化企業進行管理的核心。因此,企業應當重視EPR系統的發展,高效應用EPR系統,使其真正能為企業健康高效發展發揮作用。
[中圖分類號]C29 [文獻標識碼]A [文章編號]1672-5158(2013)06-0161-01
企業的設備管理是指企業根據經營方針和目標,從設備的調查研究人手,對有關設備的規劃、設計、制造、選購、安裝、調試、使用、維護、大修改造、直至報廢的全過程,相應地進行一系列技術、經濟組織管理活動的總稱。由此可知,企業的設備管理是一門綜合性技術學科,其內容涉及到多個方面。其基礎理論涉及到系統論、控制論、信息論、管理經濟學,組織行為學等許多領域。企業的任何一項活動基本上都是依靠設備的力量進行操作和完成的,如果沒有一個良好運作的設備系統就很難保證企業工作的順利開展??梢哉f,設備的管理是企業正常運轉的基礎,其企業經營的前提,能夠降低生產成本,也是保證企業安全衛生和環境優美的重要條件和促進企業技術進步的關鍵因素。
一、實現企業設備管理信息化的意義
1 實現企業設備信息化管理,能夠保證企業的資產管理更加有效和形成完整的體系
企業的生產經營已經離不開科技力量的支撐,在整體運作過程中應當充分利用科技的力量對企業的設備管理實現信息化。通過對傳統的管理模式的轉變,提高生產率,降低風險,優化資源配置。能夠保證工作人員及時、清楚的了解設備的運作情況,并在出現問題時做出正確的抉擇,排除風險。
2 信息化的設備管理,對檢修費用的控制更加規范
在整個企業范圍內實現以項目管理為主的檢修維護運營體系(如使用ERP或EAM等方式),以先進的管理手段、規范的管理方式和先進的管理思想,實現對檢維修項目的費用、備品配件、進度的跟蹤和控制,做到全過程管理,優化企業資產管理、通過先進的信息技術手段,全面提升設備管理工作的質量和水平。
3 信息化的設備管理,能夠支持設備管理的持續改進與持續發展
企業設備信息化管理,能夠保證各項工作的開展都能順利和有序,提供企業效益。同時,能夠為企業的各種設備的管理提供有利的借鑒,促進企業管理的改進保證企業的設備管理工作隨著企業管理的發展而同步發展。另一方面,能夠實現設備的良好運行和規范化操作,對設備運行情況進行及時、準確的記錄和分析,保證各種考核指標的及時、準確和有效性。
4 實現企業設備管理的信息化,能夠從多個方面提高工作人員的員工素質為了讓工作人員掌握信息化下的設備管理技術,需要對其進行培訓,轉變傳統的管理思想,為在企業中實現大范圍的信息化建設,做好充分的準備。
二、我國企業設備管理信息化的現狀
實現企業設備管理的信息化具有重要的意義,我國企業也在致力于這方面的發展和推行,但是應當看到,當前,我國企業設備管理在實現信息化的過程中還存在著問題。
1 企業設備管理信息化起步晚
相比于西方發達國家,我國企業設備管理信息化的發展比較晚,而且存在著發展水平不一,而且,企業對于設備管理的認識不足,相關的信息化問題不甚了解。
2 在現行的企業設備管理體系中沒有先進的管理模式和方式
由于我國企業設備管理信息化起步較晚,沒有形成有效的管理模式,在企業管理運行中水平有限,而缺乏對企業設備管理特點與要求的了解與研究,難以真正提升企業設備管理的水平。
3 我國企業設備管理信息化的系統過于落后
當前,我國企業在信息化管理上所使用的系統沒有形成一個完整、有效運作的整體,在每一項工作中基本上都是獨自運行,難以彼此協調,這就一定程度上阻礙了其功能的發揮,同時,由于各管理系統缺少統一的設備編碼體系、規范的數據結構,不同在多個系統之間實現數據共享。
三、構建和完善企業設備管理信息化的建議
企業設備管理信息化的意義,在上面的內容中已經進行過充分的論述,設備管理的信息化能夠保證工作人員在企業設備運作過程中對設備的基本情況及時的了解,并防止出現設備運轉失靈,出現危險的情況,同時也可以針對已經發生的問題及時采取有效的措施進行改進。設備管理信息化使設備管理工作從靜態走向動態,并向多功能方向發展同其他信息化工作一樣,設備管理信息化建設也是一項較復雜的系統工程,應制定較詳細的實施措施以保證其順利建成。
1 改進企業管理的理念,重視企業設備管理的信息化構建
在構建企業設備管理信息化的過程中首先要做的就是對管理理念進行改進,要充分認識信息化管理是時展的要求,也是實現企業利益最大化的根本途徑。然后從思想的認識轉變到行動上的改進,切實加強設備管理的信息化建設,總之,要從思想上、組織上、力量上、措施上給予充分重視,將其作為企業發展的重大戰略來實施。
2 在構建設備管理信息化的過程中注重建設必須同與管理創新和機制轉變的相結合
設備管理信息化過程中所使用的操作系統,不是將過去由人所完成的工作交給系統完成,也不是通過計算機工作替代過去的人工作業,而是,在企業設備管理中實現一種理念與科技信,息化的有機結合,只有這樣才能真正實現提升設備管理質量的目的,這種理念就是實現管理創新和機制的轉變。
3 整合各企業的設備管理軟件,統一業內的各類編碼標準
目前我國的各使用的設備管理軟件和標準大都獨立運行,不夠統一。對此,可在企業設備信息化建設過程中有必要在本行業內統一各類編碼標準,如組織機構編碼、設備編碼、資產編碼、物資編碼等。
參考文獻
[1]彭虎、孟凡建:《基于Intranet設備管理信息系統得開發和研究》,載《設備管理與維修》,2002年第10期