主题:[原创]看看这道程序改造题怎么做,高手请进,急!
austlw
[专家分:0] 发布于 2007-07-30 10:26:00
1)给页面(page)分配core页面(page)时,把对应的页面表(page table entry)的AGE,设置成MAXAGE(=15).
2)SLAVE模式每执行一次1命令,给JOB分配的core页面(page)的AGE都减去1
3)页面错误(page lault)发生时,如果没有空的page,在全部的core页面(page)里找到AGE=0,作为替换的候补。
PROCEDURE MEMORYMANAGER (VAR JJOB : INTERGER : VAR ENTRY : QUEUERACGE : VAR W ; VAR V : CHAR);
VAR J: INTEGER ; JOB : 1 . . MAXJOBS : PTEADDR : WORD :
BEGIN
WITH JOBQ ( . JREADY .) DO BEGIN
W : = “ 0000” ;
J: = “HEAD”;
WHILE (W = “0000” AND (J <TAIL) DO BEGIN
J: =J+1;
JOB: =Q( . J MOD QUEUESIZE . );
WITH JD( .JOB .) DO BEGIN
PTEADDR( .2 .) : =PTR( .3.);
PTEADDR( .3 .) : =PTR( .4.);
V: =“0”;
WHILE (W = “0000”) AND (V<=PTR( .2 .)) DO BEGIN
TESTAGE (PTEADDR, W);
V : =SUCC(V)
END
END
END
END
IF W< > “0000”THEN BEGIN
JJOB: = JOB;
ENTRY : =J MOD QUEUESIZE;
V: = PRED(V)
END
END(*MEMORYMANAGER*);
回复列表 (共9个回复)
沙发
Matodied [专家分:7560] 发布于 2007-07-30 13:41:00
楼主:
QB+PASCAL
这是什么语言?
板凳
austlw [专家分:0] 发布于 2007-07-30 16:59:00
就是pascal语言呀
3 楼
Matodied [专家分:7560] 发布于 2007-07-30 21:04:00
那你好多语句都不打分号?
4 楼
abcwuhang [专家分:1840] 发布于 2007-07-30 22:02:00
太深奥了,偶看不懂
5 楼
austlw [专家分:0] 发布于 2007-07-30 23:57:00
呵呵,我知道这题难了点儿,所以向大家请教来了,请大家献计献策
6 楼
austlw [专家分:0] 发布于 2007-07-31 09:44:00
题目意思是 改造上面操作系统里的mos程序段,大家积极出谋划策呀!
7 楼
austlw [专家分:0] 发布于 2007-07-31 11:02:00
大家看看这样改行吗?
PROCEDURE MEMORYMANAGER (VAR JJOB : INTERGER : VAR ENTRY : QUEUERAGE : VAR W ; VAR V : CHAR);
VAR J: INTEGER ; JOB : 1 . . MAXJOBS : PTEADDR : WORD :
BEGIN
WITH JOBQ ( . JREADY .) DO BEGIN /* 0 */
W : = “ 0000” ;
J: = “HEAD”;
AGE := MAXAGE;
WHILE (W = “0000” AND (J <TAIL) DO BEGIN /* 1 */
J: =J+1;
AGE := AGE – 1;
JOB: =Q( . J MOD QUEUESIZE . );
WITH JD( .JOB .) DO BEGIN /* 2 */
PTEADDR( .2 .) : =PTR( .3.);
PTEADDR( .3 .) : =PTR( .4.);
V: =“0”;
WHILE (W = “0000”) AND (V<=PTR( .2 .)) DO BEGIN /* 3 */
TESTAGE (PTEADDR, W);
IF AGE = 0 THEN BEGIN
保存 JOB 和 j值
END
V : =SUCC(V)
END /* 3 */
END /* 2 */
END /* 1 */
END /* 0 */
IF W< > “0000”THEN BEGIN
JJOB: = JOB;
ENTRY : =J MOD QUEUESIZE;
V: = PRED(V)
END
END(*MEMORYMANAGER*);
8 楼
abcwuhang [专家分:1840] 发布于 2007-07-31 13:17:00
全是大写.......好....(该怎么说呢)太xxx了
9 楼
austlw [专家分:0] 发布于 2007-08-02 16:25:00
帮忙顶呀,别沉了
我来回复