• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      計算機專業(yè)“信息技術(shù)”方向操作系統(tǒng)實驗的教學(xué)改革

      2009-08-28 09:09殷兆麟
      計算機教育 2009年14期
      關(guān)鍵詞:操作系統(tǒng)信息技術(shù)

      楊 磊 殷兆麟

      摘要:計算機教育專家按計算機專業(yè)從業(yè)人員解決問題的空間、要求的知識結(jié)構(gòu)及其人才培養(yǎng)的課程設(shè)置把計算機專業(yè)人才培養(yǎng)分為四類:計算機科學(xué)與技術(shù)、計算機工程、軟件工程、信息技術(shù)。信息技術(shù)人才是國民經(jīng)濟需要最多的人才,本文通過分析信息技術(shù)類人才的特點,提出信息技術(shù)方向應(yīng)選擇Java作為主流語言,進(jìn)而施行操作系統(tǒng)實驗的改革。

      關(guān)鍵詞:分類培養(yǎng);信息技術(shù);計算機語言;操作系統(tǒng)

      中圖分類號:G642 文獻(xiàn)標(biāo)識碼:B

      1信息技術(shù)類人才特點

      計算機專業(yè)人才分類培養(yǎng)的目的是合理設(shè)置不同分類人才培養(yǎng)的課程體系,構(gòu)建不同分類人才的知識結(jié)構(gòu)、素質(zhì)要求、專業(yè)能力。逐步改變目前課程偏多、內(nèi)容偏舊、專業(yè)不專、能力不強、人才市場適應(yīng)性差的局面。信息技術(shù)人才是我國大量需要的計算機專業(yè)人才。信息技術(shù)從業(yè)人員解決的核心問題空間、需要的知識體結(jié)構(gòu)分別如圖1 、圖2所示。

      傳統(tǒng)的計算機應(yīng)用專業(yè)、近幾年新增的電子商務(wù)技術(shù)專業(yè)、電子政務(wù)技術(shù)、網(wǎng)絡(luò)工程專業(yè)、企業(yè)信息管理系統(tǒng)等大都?xì)w于“信息技術(shù)”方向,其人才的知識體結(jié)構(gòu)可以借鑒“信息技術(shù)”人才知識結(jié)構(gòu)。由圖1、圖2可以看出信息技術(shù)從業(yè)人員解決的問題空間傾向于應(yīng)用,大量的需要解決的問題涉及的是組織系統(tǒng)的行為、應(yīng)用技術(shù)、軟件開發(fā)。顯然,這種知識結(jié)構(gòu)與傳統(tǒng)的計算機應(yīng)用專業(yè)是不同的,它突出了“應(yīng)用”。

      2信息技術(shù)類人才的語用能力

      當(dāng)今計算機應(yīng)用從系統(tǒng)行為分析、系統(tǒng)邏輯設(shè)計到系統(tǒng)實現(xiàn)都和計算機語言密切聯(lián)系在一起。支持軟件系統(tǒng)建模的UML語言,它可以描述系統(tǒng)分析與設(shè)計,面向?qū)ο蟮某绦蛟O(shè)計語言(C++、Java、C#)、支持Web應(yīng)用的HTML語言、腳本語言(Script等)、網(wǎng)絡(luò)數(shù)據(jù)表達(dá)語言XML、動態(tài)網(wǎng)頁語言(JSP、ASP.Net)是當(dāng)今實現(xiàn)應(yīng)用系統(tǒng)的主要語言。如果把這些語言和圖1和圖2聯(lián)系起來,也就是說把信息技術(shù)方向人才的核心問題空間與解決問題主要選擇的語言聯(lián)系起來,我們得到圖3 。這里僅列舉了當(dāng)代IT使用最廣、最有代表性的語言。從圖3可以看出:信息技術(shù)方向從業(yè)人員一般選擇Java、C#、UML、XML,一般選擇基于Web的框架,它成為從事信息技術(shù)人才必備語言。

      當(dāng)今一門語言往往與一種IT理論與技術(shù)體系聯(lián)系在一起,C#和Windows 操作系統(tǒng)、.Net可視化開發(fā)環(huán)境密不可分;Java語言和J2SE、J2EE、J2ME及其集成開發(fā)環(huán)境聯(lián)系在一起;語用能力成了專業(yè)能力特色的體現(xiàn)。這樣一來,對于計算機專業(yè)語言教學(xué)面臨如何最優(yōu)地選擇一種語言作為主流語言,即作第一語言、它涉及后續(xù)專業(yè)基礎(chǔ)課程、專業(yè)課程的教學(xué)。

      我國多數(shù)高校計算機專業(yè)以往不管什么人才培養(yǎng)方向,一般開設(shè)的第一門語言是C或C++。目前越來越多高校計算機專業(yè)信息技術(shù)方向選擇Java語言或C#作為主流語言,許多專家在探索Java或C#作主流語言的“操作系統(tǒng)”的教學(xué)改革。

      3信息技術(shù)方向“操作系統(tǒng)”實驗的改革

      選擇Java語言作為信息技術(shù)方向主流語言就必須研究、實踐“操作系統(tǒng)”等課程實驗如何利用Java開發(fā)環(huán)境來完成。由圖2看出,信息技術(shù)方向的操作系統(tǒng)的內(nèi)容包含在“平臺技術(shù)”中。平臺技術(shù)是支持“應(yīng)用”必須技術(shù)的有機集合。這里指的必須技術(shù)主要包括計算機硬件系統(tǒng)、操作系統(tǒng)、中間件技術(shù)。這里講授的平臺技術(shù)應(yīng)該是為理解、開發(fā)、維護“應(yīng)用”的專業(yè)基礎(chǔ)理論與技術(shù)。為了節(jié)約篇幅,下面以java.util.concurrent 包為例描述它支持操作系統(tǒng)的進(jìn)程、線程管理(并行計算)實驗。

      操作系統(tǒng)的進(jìn)程、線程管理涉及中斷、原語、進(jìn)程(線程)、互斥、同步、進(jìn)程(線程)調(diào)度等重要概念,java.util.concurrent 包可以說是上述概念的Java抽象。

      (1) 原子變量

      java.util.concurrent.atomic包含原子變量類。它支持讀取和寫入原子變量與讀取和寫入對一般變量的訪問具有相同的存取語義。 原子變量的操作會變?yōu)槠脚_提供的用于并發(fā)訪問的原語。原子變量屏蔽變量操作中斷,降低鎖定對象的粒度。中斷是把單CPU虛擬成多CPU的物理條件,是程序并發(fā)的基礎(chǔ),也是導(dǎo)致破壞順序程序封閉性的直接原因。

      (2) 互斥機制

      java.util.concurrent.locks包提供了鎖類或接口,Lock接口的主要實現(xiàn)是ReentrantLock,它是指可重入的鎖,多個線程可以并發(fā)對鎖發(fā)出請求,但同一時刻只能有一個線程持有該鎖。一個ReentrantLock將被最近成功獲得鎖,且還沒有釋放的線程所擁有。當(dāng)鎖沒有被其它線程占有時,一個申請鎖的線程將成功獲得鎖并返回,可以通過isHeldByCurrentThread和getHoldCount方法來檢查此情況是否發(fā)生。

      該類的構(gòu)造方法接收一個可選的參數(shù):fairness(表示公平地分配鎖)。當(dāng)設(shè)置fairness為true(即采用公平分配鎖的方式)時,在多個線程的爭奪下,獲取鎖的訪問將花費很長時間。否則該鎖將無法保證任何有序的訪問。使用公平鎖(即使用公平的方式分配鎖)開發(fā)的程序在多線程并發(fā)訪問時與采用默認(rèn)的設(shè)置(使用不公平鎖)相比,表現(xiàn)為很低的吞吐量,但是有時在獲取鎖和保證鎖分配的均衡性時有些小的差異。公平鎖不能保證線程的計劃性和有序性。例如,一個在許多使用公平鎖的線程中的一員可能獲得多倍的獲得鎖的機會,這種情況發(fā)生在其它激活線程沒有被處理而且不持有鎖時。

      ReadWriteLock接口定義的鎖可以在讀者之間共享,但與寫者互斥。它只有一個實現(xiàn)ReentrantReadWriteLock.

      Condition接口描述了與鎖相關(guān)的條件變量,可能多個條件對應(yīng)一鎖。

      AbstractQueuedSynchronizer類是定義依賴阻塞隊列線程的鎖和其它同步的父類。

      (3) 同步接口

      Sync接口提供獲取acquire()、嘗試attempt()、釋放release()方法,以便實現(xiàn)同步操作,以實現(xiàn)更加靈活的代碼同步。Sync接口至少要提供acquire() 和release() 兩種方法。試圖占有Sync對象的線程調(diào)用acquire()方法,然后等待,直到輪到它們掌控Sync對象。處理完畢后,占有Sync的線程必須調(diào)用sync上的release()方法。Sync接口與其實現(xiàn)類的類圖如圖4所示。

      當(dāng)多個線程同時在等待獲取Sync接口時,線程占有權(quán)的最后次序取決于被選Sync的實現(xiàn)。Sync接口上線程占有權(quán)的策略包括先到先服務(wù)(first come first served,FCFS)和基于線程優(yōu)先級(thread priority based)。Sync也可以定義attempt()方法,它考慮了線程等待Sync的最大持續(xù)時間。

      Semaphore:可用于pool類實現(xiàn)資源管理限制。提供了acquire()方法,允許在設(shè)定時間內(nèi)嘗試鎖定信號量,若超時則返回false。

      Mutex:Mutex對象可以作為參數(shù)在方法間傳遞,所以可以把同步代碼范圍擴大到跨方法甚至跨對象。

      NullSync:其方法的內(nèi)部實現(xiàn)都是空的,可能是作者認(rèn)為如果你在實際中發(fā)現(xiàn)某段代碼根本可以不用同步,但是又不想過多改動這段代碼,那么就可以用NullSync來替代原來的Sync實例。此外,由于NullSync的方法都是synchronized,所以還是保留了“內(nèi)存壁壘”的特性。

      ObservableSync:把sync和observer模式結(jié)合起來,當(dāng)sync的方法被調(diào)用時,把消息通知給訂閱者。

      TimeoutSync:可以認(rèn)為是一個adaptor,可以位于Sync的外層,實現(xiàn)上鎖超時控制的類,其構(gòu)造函數(shù)如下:public TimeoutSync(Sync sync, long timeout){…}。

      (4)Executor/ThreadFactory接口

      該把相關(guān)的線程創(chuàng)建/回收/維護/調(diào)度等工作封裝起來,而讓調(diào)用者只專心于具體任務(wù)的編碼工作(即實現(xiàn)Runnable接口),不必顯式創(chuàng)建Thread類實例就能異步執(zhí)行任務(wù)。

      使用Executor還有一個好處,就是實現(xiàn)線程的“輕量級”使用, 包括線程池,任務(wù)隊列等。

      ThreadFactory主要實現(xiàn)有: ThreadFactoryUser.Default ThreadFactory。

      類關(guān)系圖如圖5所示。

      java.util.concurrent除包含上述支持同步計算的類外,它還包括其他層次更高的線程同步類。不難看出利用java.util.concurrent包認(rèn)真選擇、設(shè)計,完全可以完成操作系統(tǒng)的并行計算部分的實驗。同時這個過程也是提高學(xué)生面向?qū)ο蠓治?、設(shè)計、實現(xiàn)的過程,提高Java語言應(yīng)用能力的過程。

      同樣利用Java可以很好地支持操作系統(tǒng)文件管理實驗。

      4總結(jié)

      計算機專業(yè)人才分類培養(yǎng)是提高計算機專業(yè)人才質(zhì)量的需要。信息技術(shù)人才是國民經(jīng)濟需要最多的人才,信息技術(shù)人才培養(yǎng)應(yīng)該按自己需要選擇主流語言,Java語言信息技術(shù)人才的主流語言,有利于掌握J(rèn)ava技術(shù),也完全滿足信息技術(shù)人才操作系統(tǒng)實驗需要。

      參考文獻(xiàn):

      [1] 教育部高等學(xué)校計算機科學(xué)與技術(shù)教學(xué)指導(dǎo)委員會.高等學(xué)校計算機科學(xué)與技術(shù)專業(yè)發(fā)展戰(zhàn)略研究報告暨專業(yè)規(guī)范(試行)[M]. 北京:高等教育出版社,2006.

      [2] 殷兆麟,姜利群,朱長征. 面向?qū)ο笳Z言教學(xué)中一些問題的探討[C]//全國計算機課程教學(xué)改革論壇論文集.北京:高等教育出版社,2005.

      [3] 殷兆麟,張永常,范寶德,等. 以創(chuàng)新精神貫徹“高等學(xué)校計算機科學(xué)與技術(shù)專業(yè)發(fā)展戰(zhàn)略研究報告暨專業(yè)規(guī)范”[C]//全國計算機課程教學(xué)改革論壇論文集.北京:高等教育出版社,2006.

      猜你喜歡
      操作系統(tǒng)信息技術(shù)
      浙江天正思維信息技術(shù)有限公司
      以信息技術(shù)促進(jìn)學(xué)生的美術(shù)理解與表現(xiàn)
      幼兒園教學(xué)活動中信息技術(shù)的應(yīng)用思考
      巧學(xué)信息技術(shù)課程
      淺談初中信息技術(shù)項目式學(xué)習(xí)教改實踐
      巧用“信息技術(shù)”,提高課堂效率
      智能手機操作系統(tǒng)的分析與比較
      國產(chǎn)桌面操作系統(tǒng)中虛擬化技術(shù)應(yīng)用研究
      基于單片機的嵌入式系統(tǒng)的開發(fā)研究
      “操作系統(tǒng)原理”實驗教學(xué)設(shè)置初探
      开阳县| 阜阳市| 谢通门县| 行唐县| 闸北区| 车致| 宝清县| 随州市| 深圳市| 广安市| 错那县| 鄂托克前旗| 棋牌| 麟游县| 察隅县| 宜春市| 江阴市| 蒲江县| 东城区| 新昌县| 温州市| 秦皇岛市| 卢龙县| 久治县| 庆安县| 介休市| 中阳县| 偏关县| 蕲春县| 衡南县| 五大连池市| 抚州市| 浑源县| 湖州市| 呼伦贝尔市| 中宁县| 温宿县| 闸北区| 凤山市| 博野县| 乌恰县|