:::
布丁布丁吃布丁

目錄學考古題(年份未知)

※非本次期中考範圍的題目則略過


一.

⊙我國最早將道教典籍編入圖書總目錄內的目錄是︰

七略 2.七志 3.七錄 4.中經新簿

⊙我國最早紀錄佛經的官修書目是︰

七略 2.七志 3.七錄 4.中經新簿

⊙專收歷朝書目,設立「簿錄」類的書目是︰

七略 2.七志 3.七錄 4.中經新簿

二.

⊙專設「紀傳錄」的書目是︰

七略 2.七志 3.七錄 4.中經新簿

⊙「四書」立為專目的史志是︰

七略 2.隋志 3.直齋書錄解題 4.明史藝文志

⊙《文史通義》的著者是︰

劉向2.章學誠 3.祁承燁 4.鄭樵

⊙下列何者係編年紀事︰

古史 2.載記3.故事 4.詩文評

三. 明代祁氏「庚申整書略例」推就圖書分類的方法為何?試申述之。

四. 解釋名詞︰

    • 注、傳、集解、章句
    • 讖緯
    • 《校讎通義》
    • 《書目答問》

五. 解釋下列引文的意義,並闡述其目錄學理論︰

1.「按隋志於書,則以所作之人,或所解之人,注其姓名於書之下,文集則大書於其名之上,曰某人文集,不著注焉,唐志因隋志係人於文集之上,遂以他書一概如是」。

2.「類書猶持軍也,若有條理,雖多而治,若無條理,雖寡而紛,類例不患其多也,患處多之無術也」。

3.「求書之官不可不遣,校書之任不可不專」。「司馬遷世為史官,劉向父子校讎天錄,虞世南顏師古相繼為秘書監,令狐德棻三朝當修使之任,孔穎達一生不離學校之官,若欲圖書之備,文物之興,則校讎之官,豈可不久其任哉!」

六. 試述明代祁承燁「通」、「互」及清人章學誠「別裁」、「互著」之目錄學理論。

七. 試述《明史藝文志》的源流與特色

八. 試述《四庫全書總目》之編纂體例,並解釋下列類目之要義︰

1.五經總義 2.小學 3.編年 4.紀事本末 5.載記 6.政書 7.小說 8.別集

九. 試述《郡齋讀書志》與《直齋書錄解題》之體例與特色。

十. 試述我國四部分類法形成的源流。

十一. 試述《四庫全書總目》之編纂體例,並回答下列子題︰

    • 四庫提要與劉向別錄之關係
    • 總序、小序與提要三者之區別
    • 著錄與存目之意義
    • 檢索四庫全書及其提要有何工具系統?

十二.《別錄》、《七略》、《漢書藝文志》三者之關係,試闡述其含義。

十三. 試述《中經》、《新簿》、《晉元帝書目》、《隋書經籍志》四種書目類例的傳承關係,並闡述四部法形成之源流。

十四. 試述《群書四部錄》、《古今書錄》、《舊唐書經籍志》之關係,並說明《新唐書藝文志》的特色。

十五. 試述我國「史志」、「官簿」、的特色,請各舉一例說明之,史志中又有「以書類人」之體例,試舉例說明之。

(more...)

[日記]回到現實Online──線上遊戲有感

布丁布丁吃布丁

[日記]回到現實Online──線上遊戲有感



卡巴拉島在今天到達23級了
雖然離一轉還很遠,離一堆任務、地圖都很遠很遠
不過,總有一種
即使等級再高,我也不過是在那邊組隊、打怪、接任務
換了地圖,換了要打的怪、換了裝備

但是那個模式就是不會換

-

前幾天安裝了Mabinogi來玩

我說,真不愧是許多人都稱讚的遊戲
一開始,我便被那氣氛所吸引

玩了一下之後,我才開始爬說明文
看到了Mabinogi的世界,是個非常有趣的世界
跟卡巴拉島那樣子,主要還是以練功為主的遊戲,有很大的差別

在我眼中,Mabinogi就是一個世界
如果以後沒事情做的話,我應該可以一整天泡在這世界裡面
不是玩遊戲,而是在這個遊戲裡面玩

-

話說回來,我為什麼要沉溺在這個世界裡面呢
我需要在世界當中,找到一個值得我投注時間精力的目標

雖然這個目標我無法明確地形容
不過,絕對不是一個人打怪練等這種事情就可以滿足的

如果是要達成社交上的目標,也就是交朋友的話
那我好像有更多途徑可以去「玩」,而不限於這種OLG



線上遊戲MMORPG...到底還是為了升等級吧...
將升等級作為我在這個世界的目標...我還是覺得有點空虛


-


一邊結束了卡巴拉島,一邊逛著線上遊戲版

突然回想起那個好久沒玩的RO-TCG
那個剛剛要打帳號卻都已經忘記帳號的遊戲

RO-TCG不是一個世界
要說類別的話,大概就跟宏碁戲谷的棋類、牌類差不多的東西
啊  他本來就是牌啊XD

RO-TCG的遊戲架構很耐人思索
他有著TCG的特色,並設計了線上商店與交易這個市場
在RO-TCG之中,可以感受到以前在AA裡面體會到的樂趣
除了不能用代牌組出想要的牌組(笑)
以及無法讓玩家彼此面對面、邊打牌邊聊天的感覺

之前RO-TCG的收費制度讓我覺得看不到遊戲的樂趣
不過現在已經改成約兩天便可以抽一張卡的程度
雖然慢,但是可以看得到牌組與你的牌技一同地成長

大約每天花一小時
不是練功,而是練習與研究牌的組法與玩法
畢竟,這只是個遊戲

-

也許,我要的不是一個虛擬的世界

只是要一個與人交流、與人同樂的遊戲吧

--
來拉人一起玩RO-TCG喲  >o</
(偽)RO-TCG台灣推廣協會 http://homepage.ntu.edu.tw/~b92705050/ROTCG/

(more...)

[圖資]作業系統 922期中考 -1

布丁布丁吃布丁

[圖資]作業系統 922期中考 -1

九十二學年度第二學期
作業系統 期中考 之一


一、解釋名詞

1. 布雷第異常現象(Belady’s anomaly)

一般來說,在同一種分頁替換演算法當中,將記憶體容量增加以增加分頁可用欄位的時候,應該會減少分頁錯誤的次數;可是有時因為可用欄位的增加而降低了CPU的使用率,OS因而加入了更多分頁,導致可用欄位相對不足,分頁錯誤便沒有減少。這種違反一般趨勢的現象,即稱為布雷第異常現象。

2. 純程式碼(pure code)

純程式碼又稱為共同程式碼,他是一種不會被改變、可以重複使用的程式碼。一般是用於程式庫(libraries)等常被參照(reference)的用途。

3. 工作集(working set)

工作集合(working set)是指在一定的時間中,某個行程(process)所參照(reference)到的分頁數量(pages),其時間同等於參照分頁的次數(a fixed number of page references)。假如在約5個參照分頁次數的時間中,該行程參照到了1 2 2 1 3這幾個分頁。那麼其工作集合為3個分頁,各別為1 2 3。

工作集合是用來預測該行程接下來要使用的需求欄位數量(demand frames),作業系統(OS)依照各個行程的工作集合來分配他們的欄位數量,以避免輾轉現象發生。

4. 何謂分頁錯誤(page fault)?

記憶體分配中,使用分頁式將行程拆成數個行程,然後一個個分頁接著執行,需要存取到還沒有載入記憶體的分頁而發生錯誤,而這種狀況即稱為分頁錯誤。


二、

1. 請略述處理分頁錯誤發生與處理的過程(最好畫圖表示,若以文字描述請將步驟標示清楚)

  1. 檢查TBL裡面需要的分頁的有效‧無效位元是否為1 (0代表尚未載入記憶體、1代表已經載入記憶體)→為0,發生分頁錯誤
  2. 發生分頁錯誤之後,暫停該行程的執行,進入監督模式,交由作業系統操作
  3. 作業系統到硬碟(second storage)去尋找程式(program,尚未在記憶體中執行的程式)所需的該段分頁
  4. 取出該分頁至實體記憶體的可用欄位。如果實體記憶體已經沒有可用欄位,則須先執行分頁替換的動作
  5. 所需分頁寫入實體記憶體之後,再修改分業表當中的有效‧無效位元,將它改成1(有效)
  6. 重新啟動行程,讓他再執行一次分頁要求,因為分頁已經載入,就不會發生分頁錯誤了

2. 試討論在需求分頁記憶體管理方法中,分頁大小的優劣。

分頁(page)越小的情況下,將可以越精確地填滿記憶體空間,而不會有浪費的空間。對於需求分頁的記憶體管理方法來說,分頁越小越好。但由於分頁縮小相對於程式碼也不多,執行時將會時常參照(reference)到其他分頁,因此分頁錯誤(page fault)的次數也會相對增加。分頁錯誤所需耗掉的輸入輸出(Input / Output,I/O)時間往往是最耗時的動作,比較起來,內部斷裂(internal fragmentation)相對的較省時。因此虛擬記憶體仍傾向使用大的分頁。


三、請說明在分頁法中為何要使用翻譯側看暫存區(translation look-aside buffer, TLB)這樣的硬體機制?

  • TLB(翻譯成「旁邊找尋轉移暫存區」會比較好)是為了解決兩個記憶體使用程式而發展出來的特殊高速搜尋的硬體快取裝置,又稱為組合記憶體(associative memory)。
  • TLB分成兩個欄位:分頁編號(page number)與頁框編號(frame number),個別紀錄程式的邏輯位置(logical address)與實體記憶體位置(physical address)。
  • 當程序需要參照某個分頁時,會先到TLB去找尋該分頁的頁框位置,如果找不到,才到分頁表(page table)裡去尋找。如下圖:

四、

1. 略述記憶體管理中分頁法(paging)和分段法(Segmentation)的差異?

分頁法是將程式分割成固定大小的分頁,但是各分頁並沒有邏輯性,如果要執行程式中一個常被用到的部份,他可能會被分割在數個不同的分頁當中。

而分段法則是以邏輯性的完整性為出發點,程式依照邏輯性來分割,因此各個部份大小會不相同。

分頁法因為分頁大小相同而可以解決外部斷裂的問題,分段法因為大小不同而不行。

 

2. 並請就內部斷裂(Internal fragmentation)與外部斷裂(external fragmentation)的產生情形進行說明與討論。

  • 外部斷裂(external fragmentation)是指記憶體總和剩餘空間雖然足以載入整個行程,但因為剩餘空間被其他行程切割而不連續,所以無法載入行程,浪費記憶體空間。浪費的記憶體多寡,與記憶體選擇配置的演算法相關,也和記憶體空間總量以及行程的平均大小有關。
  • 有時行程雖然小於記憶體某段連續的剩餘空間(坑洞),但在配置給該行程時,仍將整段空間都要走,以減少記憶體「小碎塊」的情況發生。這種行程額外要求了自己不需要的空間,稱之為內部斷裂(internal fragmentation)。
  • 外部斷裂是指記憶體空間不連續,而無法配置給行程;內部斷裂是指被額外配置給行程,但實際並未被使用的記憶體空間。兩者相同的地方在於,都有不會被使用,而形同浪費的記憶體空間。

五、試問下列兩個程式在需求分頁(分頁大小64個word)的記憶體管理策略下,有何不同或影響?

P1:


int A[64][64];

for (i=0;i<64;i++ ){

for(j=0;j<64;j++){

A[i][j]=0;

}

}

P2:

int A[64][64];

for (j=0;j<64;i++ ){

for(i=0;i<64;j++){

A[i][j]=0;

}

}

比較這兩者程式使用的資料順序:

P1:
A[0][0]

A[0][1]

A[0][2]

A[0][63]

A[1][0]
A[1][1]

A[63][62]

A[63][63]

P:
A[0][0]
A[1][0]

A[2][0]

A[63][0]

A[0][1]

A[1][1]

A[62][63]

A[63][63]

由此可知,P1使用到j(欄)的頻率高,而P2使用到i(列)的頻率高。在記憶體管理策略當中,如果是column-major(欄為主),則P1的情況下發生分頁錯誤的情況會比較少,因為分頁都在附近;反之,如果是row-major(列為主)的情況下,較適合P2


六、以下列分頁參考串列為例︰

1,3,2,4,2,1,4,6,2,1,4,3,7,6,3,2,1,2,3,6

試問對下列分頁替換法而言,將分別產生多少次分頁錯誤?假設分配頁框處為三個頁框

1. 先進先出(FIFO):共15次分頁錯誤

 

1

3

2

4

2

1

4

6

2

1

4

3

7

6

3

2

1

2

3

6

分頁表

1

1

1

4

4

4

4

4

2

2

2

2

7

7

7

7

1

1

1

1

 

3

3

3

3

1

1

1

1

1

4

4

4

6

6

6

6

6

3

3

 

 

2

2

2

2

2

6

6

6

6

3

3

3

3

2

2

2

2

6

載入時間

0

1

2

0

1

2

3

4

0

1

2

3

0

1

2

3

0

1

2

3

 

0

1

2

3

0

1

2

3

4

0

1

2

0

1

2

3

4

0

1

 

 

0

1

2

3

4

0

1

2

3

0

1

2

3

0

1

2

3

0

步驟

  1. 先檢查分頁表當中,是否有與待載入的分頁相同編號的分頁
    →如果有,停止檢查
    →如果沒有,繼續檢查
  2. 檢查載入時間最長的分頁,將之替換為待載入分頁,載入時間設為0。
  3. 其他未檢查的分頁,載入時間各自加1

分頁錯誤,載入的分頁 (上一階段當中,載入時間最長的一個分頁)

  • 分頁表:替換成被載入的分頁
  • 載入時間:歸零

檢查到已經有載入的分頁

  • 分頁表:不變
  • 載入時間:不變

2. 最近最少使用(LRU):共15次分頁錯誤

 

1

3

2

4

2

1

4

6

2

1

4

3

7

6

3

2

1

2

3

6

分頁表

1

1

1

4

4

4

4

4

4

1

1

1

7

7

7

2

2

2

2

2

 

3

3

3

3

1

1

1

2

2

2

3

3

3

3

3

3

3

3

3

 

 

2

2

2

2

2

6

6

6

4

4

4

6

6

6

1

1

1

6

未被使
用時間

0

1

2

0

1

2

0

1

2

0

1

2

0

1

2

0

1

0

1

2

 

0

1

2

3

0

1

2

0

1

2

0

1

2

0

1

2

3

0

1

 

 

0

1

0

1

2

0

1

2

0

1

2

0

1

2

0

1

2

0

步驟

  • 先檢查分頁表當中,是否有與待載入的分頁相同編號的分頁
    →如果有,將之未被使用時間設為0,停止檢查
    →如果沒有,繼續檢查
  • 檢查未被使用時間最長的分頁,將之替換為待載入分頁,未被使用時間設為0。
  • 其他未檢查的分頁,未被使用時間各自加1

分頁錯誤,載入的分頁 (上一階段當中,未被使用時間最長的一個分頁)

  • 分頁表:替換成被載入的分頁
  • 未被使用時間:歸零

檢查到已經有載入的分頁

  • 分頁表:不變
  • 未被使用時間:不變

3. 第二次機會(Second=Chance Algorithm):共14次分頁錯誤

 

1

3

2

4

2

1

4

6

2

1

4

3

7

6

3

2

1

2

3

6

分頁表

1

1

1

4

4

4

4

4

4

1

1

1

7

7

7

2

2

2

2

2

 

3

3

3

3

1

1

6

6

6

4

4

4

6

6

6

1

1

1

6

 

 

2

2

2

2

2

2

2

2

2

3

3

3

3

3

3

3

3

3

載入時間

0

1

2

0

1

2

3

0

1

0

1

2

0

1

2

0

1

2

3

0

 

0

1

2

3

0

1

0

1

2

0

1

2

0

1

2

0

1

2

0

 

 

0

1

2

3

4

0

1

0

1

0

1

2

3

0

1

2

3

0

參考位元

0

0

0

0

0

0

1

0

0

0

0

0

0

0

0

0

0

1

1

0

 

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

 

 

0

0

1

1

1

0

1

0

0

0

0

0

1

0

0

0

1

0

步驟

  • 先檢查分頁表當中,是否有與待載入的分頁相同編號的分頁
    →如果有,則將該分頁的參考位元設為1,停止檢查
    →如果沒有,繼續檢查
  • 檢查載入時間最長的分頁
  • 如果載入時間相同,則用FIFO依照載入先後排序
  • 檢查的分頁的參考位元如果是1,將之設為0,載入時間設為0,繼續檢查下一個
  • 檢查的分頁的參考位元如果是0,將之分頁替換成待載入的分頁,參考位元設為0,載入時間設為0,停止檢查
  • 其他尚未被檢查到的分頁,其載入時間增加1

分頁錯誤,載入的分頁

  • 分頁表:替換成被載入的分頁
  • 載入時間:歸零
  • 參考位元:設為0

檢查到已經有載入的分頁

  • 分頁表:不變
  • 載入時間:不變
  • 參考位元:設為1

受檢查,給予第二次機會的分頁

  • 分頁表:不變
  • 載入時間:歸零
  • 參考位元:歸零
(more...)

[圖資]作業系統 922期中考 -2

布丁布丁吃布丁

[圖資]作業系統 922期中考 -2

九十二學年度第二學期
作業系統 期中考 之二


一、解釋名詞

1. Working set (工作集合)

工作集合(working set)是指在一定的時間中,某個行程(process)所參照(reference)到的分頁數量(pages),其時間同等於參照分頁的次數(a fixed number of page references)。假如在約5個參照分頁次數的時間中,該行程參照到了1 2 2 1 3這幾個分頁。那麼其工作集合為3個分頁,各別為1 2 3。

工作集合是用來預測該行程接下來要使用的需求欄位數量(demand frames),作業系統(OS)依照各個行程的工作集合來分配他們的欄位數量,以避免輾轉現象發生。

2. Thrashing (輾轉現象)

輾轉現象(thrashing)是指行程(process)分頁替換的頻率相當高,於是系統的時間相耗費在輸入輸出(I/O)的動作,CPU的使用率(utilization)低落,作業系統會認為需要增加多工的程度(the degree of multiprogramming),而又將行程加入系統中,每個行程所分配到的實體記憶體又更少,因而惡性循環。當各行程的總需求欄位空間(total demand frames)超過實體記憶體的欄位空間時,便會發生輾轉現象。

3. Dynamic linking (動態連結)

  1. 直到需要執行的時候,才會進行連結動作。當程式要用到系統程式庫(libraries)時,在需要參照(reference)的地方做記號(stub)
  2. 記號stub是用來找尋需要使用的程式庫(libraries),stup將會被取代為該程式庫的記憶體位置,並且執行該程式。作業系統需要確認該程式庫是否在實體記憶體當中。
  3. 有用到的程式資料庫在記憶體裡只會存在一份,而不必每次參照的時候都得複製,因此不會重複。鏈結(linking)的工作只需進行一次
  4. 動態連結特別適合程式庫(libraries)

二、試解釋內部斷裂(Internal fragmentation)與外部斷裂(external fragmentation)的差異。

  1. 斷裂(fragmentation)發生在行程(process)載入記憶體(memory)時,空間分配時發生的問題。
  2. 外部斷裂(external fragmentation)是指記憶體總和剩餘空間雖然足以載入整個行程,但因為剩餘空間被其他行程切割而不連續,所以無法載入行程,浪費記憶體空間。浪費的記憶體多寡,與記憶體選擇配置的演算法相關,也和記憶體空間總量以及行程的平均大小有關。
  3. 有時行程雖然小於記憶體某段連續的剩餘空間(坑洞),但在配置給該行程時,仍將整段空間都要走,以減少記憶體「小碎塊」的情況發生。這種行程額外要求了自己不需要的空間,稱之為內部斷裂(internal fragmentation)。
  4. 外部斷裂是指記憶體空間不連續,而無法配置給行程;內部斷裂是指被額外配置給行程,但實際並未被使用的記憶體空間。兩者相同的地方在於,都有不會被使用,而形同浪費的記憶體空間。

三、請略述處理分頁錯誤的步驟(最好畫圖表示,若以文字描述請將步驟標示清楚)

六個步驟

  1. 檢查TBL裡面需要的分頁的有效‧無效位元是否為1 (0代表尚未載入記憶體、1代表已經載入記憶體)→為0,發生分頁錯誤
  2. 發生分頁錯誤之後,暫停該行程的執行,進入監督模式,交由作業系統操作
  3. 作業系統到硬碟(second storage)去尋找程式(program,尚未在記憶體中執行的程式)所需的該段分頁
  4. 取出該分頁至實體記憶體的可用欄位。如果實體記憶體已經沒有可用欄位,則須先執行分頁替換的動作
  5. 所需分頁寫入實體記憶體之後,再修改分業表當中的有效‧無效位元,將它改成1(有效)
  6. 重新啟動行程,讓他再執行一次分頁要求,因為分頁已經載入,就不會發生分頁錯誤了

四、 以下列分頁參考串列為例︰

1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6

試問對下列分頁替換法而言,將分別產生多少次分頁錯誤?假設分配頁框數為4個頁框

1. LRU:共10次分頁錯誤

 

1

2

3

4

2

1

5

6

2

1

2

3

7

6

3

2

1

2

3

6

分頁表

1

1

1

1

1

1

1

1

1

1

1

1

1

6

6

6

6

6

6

6

 

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

 

 

3

3

3

3

5

5

5

5

5

3

3

3

3

3

3

3

3

3

 

 

 

4

4

4

4

6

6

6

6

6

7

7

7

7

1

1

1

1

未被使用時間

0

1

2

3

4

0

1

2

3

0

1

2

3

0

1

2

3

4

5

0

 

0

1

2

0

1

2

3

0

1

0

1

2

3

4

0

1

0

1

2

 

 

0

1

2

3

0

1

2

3

4

0

1

2

0

1

2

3

0

1

 

 

 

0

1

2

3

0

1

2

3

4

0

1

2

3

0

1

2

3

步驟

  1. 先檢查分頁表當中,是否有與待載入的分頁相同編號的分頁
    →如果有,將之未被使用時間設為0,停止檢查
    →如果沒有,繼續檢查
  2. 檢查未被使用時間最長的分頁,將之替換為待載入分頁,未被使用時間設為0
  3. 其他未檢查的分頁,未被使用時間各自加1

分頁錯誤,載入的分頁 (上一階段當中,未被使用時間最長的一個分頁)

  • 分頁表:替換成被載入的分頁
  • 未被使用時間:歸零

檢查到已經有載入的分頁

  • 分頁表:不變
  • 未被使用時間:不變

2. FIFO:共14次分頁錯誤

 

1

2

3

4

2

1

5

6

2

1

2

3

7

6

3

2

1

2

3

6

分頁表

1

1

1

1

1

1

5

5

5

5

5

3

3

3

3

3

1

1

1

1

 

2

2

2

2

2

2

6

6

6

6

6

7

7

7

7

7

7

3

3

 

 

3

3

3

3

3

3

2

2

2

2

2

6

6

6

6

6

6

6

 

 

 

4

4

4

4

4

4

1

1

1

1

1

1

2

2

2

2

2

載入時間

0

1

2

3

4

5

0

1

2

3

4

0

1

2

3

4

0

1

2

3

 

0

1

2

3

4

5

0

1

2

3

4

0

1

2

3

4

5

0

1

 

 

0

1

2

3

4

5

0

1

2

3

4

0

1

2

3

4

5

6

 

 

 

0

1

2

3

3

4

0

1

2

3

4

5

0

1

2

3

4

步驟

  1. 先檢查分頁表當中,是否有與待載入的分頁相同編號的分頁
    →如果有,停止檢查
    →如果沒有,繼續檢查
  2. 檢查載入時間最長的分頁,將之替換為待載入分頁,載入時間設為0
  3. 其他未檢查的分頁,載入時間各自加1

分頁錯誤,載入的分頁 (上一階段當中,載入時間最長的一個分頁)

  • 分頁表:替換成被載入的分頁
  • 載入時間:歸零

檢查到已經有載入的分頁

  • 分頁表:不變
  • 載入時間:不變

Second=Chance Algorithm:共10次分頁錯誤

 

1

2

3

4

2

1

5

6

2

1

2

3

7

6

3

2

1

2

3

6

分頁表

1

1

1

1

1

1

1

1

1

1

1

1

1

6

6

6

6

6

6

6

 

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

 

 

3

3

3

3

5

5

5

5

5

3

3

3

3

3

3

3

3

3

 

 

 

4

4

4

4

6

6

6

6

6

7

7

7

7

1

1

1

1

載入時間

0

1

2

3

4

5

0

1

2

3

4

0

1

0

1

2

3

4

5

6

 

0

1

2

3

4

0

1

2

3

4

0

1

2

3

4

0

1

2

3

 

 

0

1

2

3

0

1

2

3

4

0

1

2

3

4

0

1

2

3

 

 

 

0

1

2

3

0

1

2

3

4

0

1

2

3

0

1

2

3

參考位元

0

0

0

0

0

1

0

0

0

1

1

0

0

0

0

0

0

0

0

1

 

0

0

0

1

1

0

0

1

1

1

0

0

0

0

1

0

1

1

1

 

 

0

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

1

1

 

 

 

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

步驟

  1. 先檢查分頁表當中,是否有與待載入的分頁相同編號的分頁
    →如果有,則將該分頁的參考位元設為1,停止檢查
    →如果沒有,繼續檢查
  2. 檢查載入時間最長的分頁
  3. 如果載入時間相同,則用FIFO依照載入先後排序
  4. 檢查的分頁的參考位元如果是1,將之設為0,載入時間設為0,繼續檢查下一個
  5. 檢查的分頁的參考位元如果是0,將之分頁替換成待載入的分頁,參考位元設為0,載入時間設為0,停止檢查
  6. 其他尚未被檢查到的分頁,其載入時間增加1

分頁錯誤,載入的分頁

  • 分頁表:替換成被載入的分頁
  • 載入時間:歸零
  • 參考位元:設為0

檢查到已經有載入的分頁

  • 分頁表:不變
  • 載入時間:不變
  • 參考位元:設為1

受檢查,給予第二次機會的分頁

  • 分頁表:不變
  • 載入時間:歸零
  • 參考位元:歸零

五、略述記憶體管理中需求分頁(Demand Paging)的做法

  • 需求分頁的基本道理是:「直到需要執行的時候,才將分頁載入記憶體」。
  • 在分頁的作法中,程式(program,當程式在執行狀態的時候,稱為行程或程序(process))會被分割成大小相等的分頁,這時程式是被擺置在次儲存裝置(second storage),如硬碟當中。當程序(process)執行時遇到須要使用的部份分頁,才去載入分頁。
  • 需求分頁使用了分頁表來記錄該分頁是否已經載入記憶體。分頁表基本上有三個欄位:分頁編號、分頁實體記憶體位置、分頁已載入的有效-無效位元(valid-invalid bit),其中有效-無效位元是用來紀錄分頁是否已經載入記憶體。如果未載入為0,表示該分頁上在磁碟當中;已經載入為1,表示已經存在於記憶體當中。
  • 程序的需求分頁動作會先檢查分頁表的有效-無效位元,如果為1,則正常執行;如果為0,則發生分頁錯誤。分頁錯誤時的處理,可以參考第三題。

六、下列程式設計技巧和結構中,哪些對需求分頁的環境有利,哪些則相對的顯得不利?並請簡單敘述你的理由。

  • 堆疊(stack)
  • 循序搜尋法(sequence search)
  • 純程式碼(pure code)
  • 向量運算(vector operations)
  • 間接定址(indirection)

首先,需求分頁的特色在於將程序執行時所需要的記憶體空間降至最低,因為只載入需要的分頁。但是當記憶體空間不足時,則需要執行花費時間的分頁替換動作(page replacement)。減少分頁替換的情況發生,也就是程序執行時,重覆使用同一個分頁;其次是按照順序地執行分頁,這些都是有利於需求分頁環境的結構。相對的,不按照順序、跳來跳去的程式結構,將會時常需要載入位置差異大的分頁,而不利於需求分頁的環境。

  • 堆疊(stack):堆疊是一種先進後出的資料結構。例如有A B C D這四個資料依順序進入堆疊,則接下來出來的則是D C B A。從執行順序來看,會變成A B C D D C B A。其中存取A的兩個時間差距遠,表示時常要載入位置差異大的分頁,因此不利於需求分頁的環境。
  • 循序搜尋法 (sequence search):這是一種用於搜尋的演算法。例如要在A B C D當中檢查D的位置,則程式會從A B C D一個一個依序地檢查。其使用的分頁是有順序性的,因此利於需求分頁環境。
  • 純程式碼 (pure code):程式碼不可被其他程式修改,而用來重複執行的程式碼稱之,又稱為共同程式碼。因為該段程式碼(等於分頁)重複使用,因此有利於需求分頁環境。
  • 向量運算 (vector operations):向量是指具有方向的量單位,如往北走20公里,此為向量的表示。在電腦運算中,單向、平面或立體圖形的向量通常用一維、二維或三維矩陣表示,而向量的運算便是矩陣之間的運算。程式中常使用陣列的方式來表示矩陣,而程式語言對陣列的Column-major(欄優先)還是Row-major(列優先)分配分頁的方式,與程式中先執行列還是執行欄的差別,便會影響到分頁錯誤的發生頻率。當分配分頁方式與執行順序相同時,會利於需求分頁的環境;反之,則是不利於需求分頁。
(more...)

[日記]隨筆幾篇故事

布丁布丁吃布丁

[日記]隨筆幾篇故事

昨晚在社版寫的


首先,是篇關於合作與錯誤的故事:

在很久以前,偏荒鄉下的某個地方,有兩個人一同平靜地住在一間大屋子裡面。這附近除了他們之外,並沒有任何人居住,他們過著與世隔絕的生活,連本來的名字都忘記了,他們稱呼對方,都是叫對方的特徵:「瘸子」、「瞎子」。是的,他們一位失去的腿,另一位失去了雙眼,都不是一個完整的人。但是,他們懂得透過合作來維持生活,瘸子有雙眼,能告訴瞎子方向;瞎子則能夠背著瘸子,走到任何地方。

再來談談他們的相識過程。那時候,只有一個人住在大屋子裡面的瘸子,因為行動不便而跌倒在地、無法翻身,正當他苦惱該怎麼辦的時候,突然有個人出現在他面前,並問他::「我問你,你是我的雙眼嗎?」然後他便背起了瘸子,那個人,正是瞎子。

瘸子一開始覺得這樣子不太好,即使他沒有雙腿,他也希望能用自己的力量行動。而瞎子卻認為「我可以成為你的雙腿」,不顧瘸子意願地背著他。相處了一段時間之後,瘸子漸漸能夠接受瞎子。相對的,燒得一手好菜的瘸子也能滿足瞎子超大食量的需求。兩人便成為缺一不可的好伙伴。

然而,平穩的日子總是會結束。有天,當瘸子跟瞎子都還在睡覺的時候,屋子忽然發生火災了。瘸子睜開雙眼,發現窗外已經是一片火紅,情況十分危急。他趕緊叫醒身旁的瞎子,告訴瞎子現在的狀況。

「那真是太糟糕了!我們現在該怎麼辦?」瞎子慌張地說。

瘸子說:「冷靜!我們唯有互助合作,才能逃出這裡。」

「嗯!」瞎子同意地點頭。

「所以你背著我,我告訴你方向,來吧!」

 然後瘸子背起了瞎子,瞎子告訴瘸子方向,瘸子背著瞎子緩慢地爬行,結果撞到了牆壁而昏迷,然後他們兩個人就埋沒在火海,再也沒有出來過了。



-- 這結局是我一開始就決定好的


既然很優閒,那我再來說另一篇故事好了。這次是高科技網路,情報隱私這方面的故事。

時間發生在未來。

主角是一位妹妹,先聲明,她不叫做水坂憐。她坐在一張椅子上,頭上帶著一個類似頭盔的東西。據她的說法,她因為期中考快要到了,所以她正在用功。但是那個頭盔裡面放映的東西,似乎跟她要考試的內容沒有相關。她到底在看些什麼呢?她本人也不願意回答。

一段時間過去,她將頭盔脫下,可以看得到她一臉疲憊的樣子。然後,她將右手伸向了旁邊的小桌子,摸來摸去,卻一直沒拿到她要的東西。她馬上知道發生了什麼事了。

她深深地吸了一口氣,大喊:

「姊,蜜餞!」 


-- decryption key


好吧,那來個傳統的鬼故事好了。

這個晚上,某個正在準備期中考的學生走在街頭。他拿著一個熱呼呼的盒子,裡面裝著叉燒包,那是他的宵夜、讀書魔力補充的來源。

他回到宿舍,打算來大快朵頤一番,好繼續用功的時候。

怎麼少了一個叉燒包......?

是的,原本十個一盒的叉燒包,居然只剩下九個了。

「喵的...這個情節好像在哪裡看過啊?」

他蓋上了盒蓋,再打開,果然

叉燒包又少了一個!

冒著熱氣的八個叉燒包,散發出一種詭異的氣氛。

他吞了口口水,死不信邪。蓋上盒蓋,再打開,

只剩下七個了!

一方面是因為好奇,一方面又覺得有趣。他這樣蓋了又開,開了又蓋,叉燒包一個一個的減少。

到最後,盒子裡面的叉燒包終於都不見了。

他想想應該也玩夠了,於是講手上的盒蓋一翻,

十個叉燒包好好地黏在那上面。

叉燒包:「吃了我也可以喔。」



-- 「天然紀念物叉燒包」

(more...)

[圖資]目錄學 922期中考考題

布丁布丁吃布丁

[圖資]目錄學 922期中考考題

九十二學年度第二學期
圖書資訊學系 目錄學 期中考題


問答題:

一、「群書四部錄」、「古今書錄」、「舊唐書經籍志」之關係,及「別錄」「七略」「漢書藝文志」三者之關係。試闡述其涵義。

在唐玄宗時詔令元行沖等編輯當時的書目,因而有《群書四部錄》。後經歷安史之亂,毋煚認為其成書倉卒,體例、事例皆有其不當之處,不滿意《群書經籍志》,而將《群書四部錄》再進一步增刪整理為《古今書錄》,而後來的《舊唐書經籍志》本於《古今書錄》,而刪其小序及書下小注。

這樣承先啟後的關係,和《別錄》、《七略》、《漢書藝文志》之間的編撰、承繼關係相像。《別錄》是由劉向所創,將當時整理之書目撮其指要,明辨其得失,考鏡各家之學術源流,並將每書之指要、作者介紹、書之考訂得失附錄於每書之後,是為敘錄。另外又將各漢書之敘錄提出,集結為一冊,是為《別錄》。而其子劉歆根據根據別錄做了一些增刪,將其整理的書目分為七個大略,而每一大略下又有小類,各為《七略》,實則為六略。分別為諸子略、方技略、數術略、六藝略、兵書略、詩賦略,另一為輯略,輯略所收之為各略之小序總錄,是真正的分類項目。《七略》是《別錄》之簡要後的結果。到了東漢,班固奉命編撰《漢書藝文志》,則是在《七略》之基礎上,又行精簡之結果。《漢書藝文志》是第一部歸類在史書之下的官編目錄,因其特性,在史書之下,所以勢必要將先前之七略簡化,再行收錄,目的只是為了要顯現學術流變之大勢。

  1. 西漢 劉向《別錄》:
    1. 撮其指要、明辨得失、考鏡源流
    2. 敘錄:每書指要、作者介紹、考訂得失,附錄於書後
    3. 提要:敘錄提出,結集成冊
  2. 西漢 劉歆《七略》:
    1. 分七大略、下有小類,各為《七略》,實則六略
    2. 諸子、方技、數術、六藝、兵書、詩賦,輯略
    3. 輯略:收各略之小序總錄,為真正的分類項目
  3. 東漢 班固《漢書藝文志》:
    1. 第一部史書官編目錄
    2. 顯現學術流變之大勢
上數段落語意並不通順,徵求通順的解釋

二、試述我國「史志」的特色。史志中又有「以書類人」之體制,試舉例說明之。

我國史志始源於東漢班固所著之漢書此類的《藝文志》,其體例為當時首創。以《漢書藝文志》的體例來說,前有總序,說明為漢代之書籍,以及書目,其編撰先後順序,沒有一定格式,因其書目而定。而在其每小類之下又有小序說明為什麼此類的書會歸納為第一類,此類之學術流派為何等,註明在此類有多少篇。另外又在每大略之下另立大序,說整個學術流變之大勢,最後再將各略、各類做總計,註明其下。《漢書藝文志》開創了史志之先河,在於顯現學術流變之大勢,而一般以收錄整理分類的目錄不太一樣。

  1. 史志之源:東漢 班固《漢書藝文志》,是我國現存最早的圖書目錄
  2. 體例:
    1. 前有總序:說明書籍書目、編撰順序,格式不一
    2. 小類下立小序:辨其學術流派,註其篇數
    3. 大略下立大序:敘述學術流變之大勢,篇數統計
  3. 開創注釋體書目之先河

《隋志》創立「以書類人」之著錄方法(疑似講義錯誤,原為「以人類書」)。我國傳統書目之著錄方法均採「以人類書」。《隋書經籍志》經、史、子三部及集部之「楚辭」、「總集」二類採「以人類書」方式著錄。「別集類」則採「以書類人」方式著錄。

  • 「以人類書」者:
    1. 先著錄書名、篇卷,次著錄作者;
    2. 如:《靈憲一卷》,張衡撰
    3. 《漢書藝文志》用此法
  • 「以書類人」者:
    1. 先著錄作者,次著錄書名、篇卷。
    2. 如《梁武帝詩賦集》二十卷
    3. 此法最早見於《隋書經籍志》之「別集類」,《新唐書藝文志》四部之書皆用此法

三、試從下列文獻中闡述「七志」之特色與體制:

  1. 阮孝緒七錄序云:「以向歆雖云七略,實有六條,故別立圖譜一志,以全七限,其外又條七略及二漢藝文志、中經簿所闕之書,並方外之經,佛經道經,各為一錄,雖繼七志之後,而不在其數」。

阮孝緒在他所著的《七錄》序言提到了,劉向劉歆父子的《別錄》、《七略》來說,雖然說是《七略》,但是實際上只有分述六類,其中輯略並非分類。所以《七志》另建圖譜一志,將分類以七類完整。所謂的圖書,圖和書是共存的,因為圖書也是書的一類,但先前都沒有被分為一類,所以《七志》又考訂研究了《七略》,和二漢《藝文志》、《中經新簿》闕漏的書補上,並且把《佛經》和《道經》另立為一錄,顯見《七志》也注意到當時的佛、道教盛行,而將其相關典籍也更新立錄。

  1. 隨書經籍志總序:「其道佛附見,和九條,然亦不述作者之意,但於書名之下,每立一傳,而又做九篇條例,編乎首卷之中,文義淺薄,未為典則」。

在《隋書經籍志》的總序中提到,《七志》加上《道經》和《佛經》,和起來有九類,但是已經不詳述作者的介紹、著書之背景、學術流家,而是又另外在書名之下,立一個小傳,只介紹作者生平概要,另外做九篇條例,放在首卷,說明其類,但是其說明意涵都較為淺薄,和先前之《七略》、《別錄》相較,顯得精略了許多。

四、試述《四庫全書總目》之編撰體例。並回答下列子題:

1. 四庫提要與劉向別錄之關係

《四庫提要》有採納劉向《別錄》之作法,將其收錄之書目作提要,而另列於一書以供查檢

2. 總序、小序與提要三者之特色

  1. 總序是總和該部書的大類流變,及學術大勢,著錄考鏡之源流,
  2. 小序
    1. 其每小類之後的說明
    2. 說明此類書籍之學術流派,及歸為一類之依據,辨其得失,
  3. 提要
    1. 附在每書之後
    2. 把該書之內容,主要特點,另外整理出來
    3. 使後人可因其提要查檢書目,而不因書名而誤,節省查閱時間。

3. 著錄與存目之意義

  1. 著錄所指的是該書是否在舊有紀錄中是否有被收錄而存目。即指該書是否仍存在,抑或散佚
  2. 可註明於書目之下,以說明該書之存廢。

4. 檢索四庫全書及其提要有何工具系統?

檢索《四庫全書》及其提要,可用四庫全書及其提要之索引本來進行檢索,針對書名作者索引。現今已有四庫全書之電子全文資料庫,只要輸入欲查找之條件名稱,即可找出資料。


答案參考資料

  1. 中國目錄學 / 胡楚生著
  2. 92學年度,簡學姐

上述答案仍有許多不完整的地方,請幫忙補完

(more...)

[圖資]目錄學 932期中考考題

布丁布丁吃布丁

[圖資]目錄學 932期中考考題

九十三學年度第二學期
圖書資訊學系 目錄學 期中考題


問答題:

一、試述《中經》、《新簿》、《晉元帝書目》、《隋書經籍志》四種書目類例的傳承關係,並闡述四部法形成之源流。

自兩漢以降,迄於魏晉,典籍漸多。魏秘書郎鄭默,始制《中經》,晉秘書監,更著《新簿》,皆以四部別之。甲部以紀六藝(經),乙部以紀諸子(子),丙部以紀史事(史),丁部以紀詩賦(集)。不過那時候還沒有類別的稱呼,而皆用甲乙丙丁紀其順序而已。及晉著作郎李充,撰為《晉元帝書目》。然其與荀勗新簿異者,一則李充易新簿乙丙圖書之次,而以乙部紀史、丙部紀子,是其時雖無經史子集之名,而甲乙丙丁以既經史子集圖書之次第則定矣;二則以李充之「沒略眾篇之名」推之,則荀書中,四部之下,尚有小類,亦有類目之名,可以知之。阮孝緒之七錄其內篇所分,隋志承之,而「經、史、子、集」這四個類別的名字終於訂定,所以四部分類法是從隋志開始才正式確立的。

  1. 魏 鄭默《中經》傳到 晉 荀《新簿》:
    1. 《中經》開四部法編排之端倪
    2. 皆以甲乙丙丁四部別之,經子史集之名尚未確立
  2. 晉 李充《晉元帝書目》:
    1. 易其乙丙,經史子集次第定矣
    2. 四庫之法,鄭默、荀開其端,李充定其次序
  3. 《隋書經籍志》:承繼七錄,而經史子集之類名出焉,方始正式確立也

二、試述《群書四部錄》、《古今書錄》、《舊唐書經籍志》之關係,並說明《新唐書藝文志》的特色。

唐玄宗開元三年,詔弘文館學士元行沖撰成《群書四部錄》奏上。每書多有解題,每類亦有小序,然經安史之亂,圖書散亡殆盡,目錄亦已不傳。

然《群書四部錄》成書過於倉促,體例事理,均有未安。毋煚乃即以《群書四部錄》為本,針對缺失,加以增刪,而成《古今書錄》四十卷。較之《群書四部錄》,份量雖僅及五分之一,然著錄圖書種數,則與之相當。蓋刪卻各書之序跋,而撮其要旨,以為簡明之體解也。《古今書錄》大約亡於北宋末年,然而所撰修之《舊唐書經籍志》,即本於《古今書錄》而來,故於《舊唐志》中,猶可窺見毋煚《古今書錄》之面貌也。

《舊唐書經籍志》二卷,劉撰,是《舊唐書經籍志》本於《古今書錄》,而刪其小序及書下小注,故遂簡略古今書錄四十卷為二卷也。

方之漢代,則《群書四部錄》、《古今書錄》、《舊唐書經籍志》之關係,即《別錄》、《七略》、《漢書藝文志》三者之關係也。

  1. 唐 元行沖《群書四部錄》:每書多有題解、每類亦有小序。散於安史之亂。
  2. 毋煚《古今書錄》:承群書四部錄。刪卻各書序跋、撮其要旨、以為簡明題解也。亡於北宋末年。
  3. 劉熙《舊唐書經籍志》:本於古今書錄。刪其小序及輸下小注。
  4. 其關係即漢 劉向《別錄》、其子劉歆《七略》、班固《漢書藝文志》三者之關係也。

《新唐書藝文志》四卷,歐陽修撰,此志乃係根據《舊唐書經籍志》,另加著錄唐代學者自撰之書,故是書所著錄者,可謂鉅矣。《新唐志》之分類如下:甲部經錄、乙部史錄、丙部子錄、丁部集類。《新唐志》每類後無小序、每部後無大序,與《舊唐志》同。《新唐志》經部分為十一類,較《舊唐志》少一詁訓類,如爾雅等書,均列於小學類之首。《新唐志》易《舊唐志》之事纇為類書,於經脈上冠「明堂」二字。《新唐志》於每一類目之中,分「著錄」與「不著錄」兩項,「著錄」指《古今書錄》原有之書,「不著錄」指《新唐志》所增之唐人著作,此一分別,頗為清晰,亦甚可取。

  1. 唐 歐陽修《新唐書藝文志》
  2. 根據《舊唐書經籍志》,加著唐代學者自撰之書
  3. 以經史子集四部別之
  4. 與《舊唐志》之異同
    1. 無小序、無大序,同《舊唐志》
    2. 經部分為十一類,較《舊唐志》少一詁訓類
      →爾雅等書,列於小學類之首
    3. 易《舊唐志》事類類書,冠明堂經脈之上
  5. 「著錄」與「不著錄」:
    1. 著錄指《古今書錄》原有之書
    2. 不著錄指所增之唐人著作

三、試述我國「史志」、「官簿」、「私錄」的特色,請舉各一例說明之。

  • 「史志」:
    1. 反應著述成果、學術源流之大體
    2. 不必詳述各書內容,著者生平亦可參見列傳
    3. 例:《漢書藝文志》開正史藝文志之先河
  • 「官簿」:
    1. 目錄之書,有奉帝王詔令而修撰
    2. 例:《四庫提要總目》
      1. 經史子集四部
      2. 每一書下有詳明之提要(解題),每類之前有小序,每部之前有總序
        (書→提要、類→小序、部→總序)
      3. 在現存目錄書中,實為體制最完整而份量最龐大之代表也。
  • 「私錄」:
    1. 為閱讀與治學所需,學者均好私人藏書
    2. 宋齊之後私錄興起,七分法體系已起變革
    3. 例:《七志》
      1. 不限當時收藏、重視當代著錄
      2. 開創書目提要新體例:
        1. 各書傳有敘錄、偏重著者生平介紹
        2. 變敘之名,從傳之實」:改變敘錄體之名稱,而確實地作為傳記之用
      3. 均有條例(小序),相當於《七略》的「輯略」
      4. 實為九分法:
        1. 上承《七略》六分遺規
        2. 增「圖譜志」而成七分法
        3. 又附道佛二部,實為九分

四、解釋以下《七錄》序文之意義:

王以「六藝」之稱,不足以標榜經目,改為「經典」,今則從之,故序經典錄,為內篇之一。
劉王並以眾史合於春秋,劉氏之世,史書甚寡,附見春秋,誠得其例,今眾家記傳,倍於經典,猶從此志,實為繁蕪,且七略詩賦,不從六藝詩部,蓋尤其書既多,所以別為一略,今依擬斯例,分出眾史,序記傳錄,為內篇第二。

王儉認為「六藝略」沒有辦法將圖書經目加以標示清楚,所以將「六藝略」改為「經典」,而此以後為編制之法,故編為小序經典錄,為內篇之一。

劉氏父子王檢將眾多史書合編於「春秋」。在劉氏父子之世代,史書所存不多,所以將其附錄於「春秋」,尚可得知其書目。而今世史書為多家所記傳,數量多於經典,卻仍這樣做,實在是多餘的作法。而且七略的詩賦並不列於六藝詩部之下,是因為其書數量之多,所以分開來列為一略。現在依照這個例子,分出家史,序紀傳錄,作為為內篇中的第二篇。


答案參考資料

  1. 中國目錄史 / 胡楚生著
  2. 91屆張學姐

上述答案仍有許多不完整的地方,請幫忙補完

(more...)