下载桌面端
进入网页版

登录/ 注册

万兴科技(300624.SZ)集团成员

系统仿真之操作系统类图

立即使用

Unix/Linux系统仿真 操作系统类图BufferAreaManage+bAM:static BufferAreaManage-bufferAreaBitmap:boolean[]-bufferAreaType:boolean[]-pid:int[]-outputWellBlock:int[]-pointer:int[]+BufferAreaManage()+applyOneBufferAreaPage(PCB pcb, boolean type):int+applyOneinputBufferAreaPage(PCB pcb):int+applyOneOutputBufferAreaPage(PCB pcb):int+releaseAllBufferAreaPage(PCB pcb):String+write(PCB pcb, int data):void+haveBufferAreaPage(PCB pcb, boolean type):intDeadLock+dL:static DeadLock =初始值-n:int =30-m:int =10-available:int[] = {0,0,2,3,4,5,6,7,1,1}-allocation:int[][]-request:int[][]-work:int[]-finish:boolean[]+DeadLock()+setWork():void+setfinish():void+applyResource(PCB pcb):boolean+releaseResource(PCB pcb):void+recycleResource(PCB pcb):void+refreshRequest(PCB pcb):void+deadLockTestAndRecover():void+deadLockTest():ArrayList<PCB>+allocationIsEmpty(int ProcessNum):boolean+judgeK(int k):boolean+getPCBWithID(int id):PCB+deadLockRecover(ArrayList<PCB> +deadLockProcess):void refresh():voidProcessManage+pM:static ProcessManage-PCBTableBitmap:boolean[] -allProcessQueue:Vector<PCB>-readyQueue:Vector<PCB>[][]-active:int = 0-expired:int = 1-readyQueueBitmap: boolean[]-runningQueue:Vector<PCB>-blockedQueue:Vector<PCB>[]-suspendQueue:Vector<PCB>[]-endQueue:Vector<PCB>+ProcessManage()+getNumOfFreePositionOfPCBTable():int+applyOnePositionOfPCBTable():int+releasePositionOfPCBTable(PCB pcb):void+toBeReady(PCB pcb, boolean isActive):void+toBeRunning(PCB pcb):void+toBeBlocked(PCB pcb, int blockedQueueNum):void+toBeSuspend(PCB pcb, int suspendQueueNum):void+toBeEnd(PCB pcb):void+refreshReadyQueueBitmap():void+refreshActiveAndExpired():void+createPCB(JobTableItem jobTableItem):PCB+writePCBToPCBTable(PCB pcb):void+initPageTable(PCB pcb, String apply):void+writeCodeToSwapArea(PCB pcb, String apply):void+updataPageTable(int swapOutPageNum, int +swapInPageNum):refreshSystemCallBlockedQueue():voidFileSystem+fS:static FileSystem-staticInodeTableBitmap:boolean[]-staticInodeTable:Inode[]-activeInodeTableBitmap:boolean[]-activeInodeTable:Inode[]-dirBlock:ArrayList<DirectoryBlock>-userGroup:User[]-systemOpenTable:ArrayList<SystemFileOpenTableItem>-superBlock:SuperBlock-cur_inode:Inode-cur_dirBlock:DirectoryBlock-dir:String-user:User-cmd:String-temp:String-input:int+FileSystem()+run():void+userLogin():void+userPassword():void+dir():void+cd():void+cd_():void+mkdir():void+rmdir():void+create():void+delete():void+open():void+close():void+read():void+write():void+hlink():void+slink():void+switch_():void+haveParameter():boolean+havePosition(int staticInodePos, int +activeInodePos):boolean+applyPositionInStaticInodeTable():int+applyPositionInActiveInodeTable():int+searchInodeInActiveInodeTable():int+searchInodeInStaticInodeTable():int+searchDirBlock():int+searchInodeByabsolutePath():int+searchFileInSystemOpenTable():int+searchFileInUserOpenTable():int+getFileName():String+searchUserGroup():int+adjustDirBlockByFileName(String filename):voidMemoryManage+mM:static MemoryManage-bitmap:int[]-free_area:ArrayList<Integer>[]-swapAreaBitmap:boolean[]+MemoryManage()+refreshBitmap():void+setOneBit(int bitmap, int pos, int value):int+getOneBit(int bitmap, int pos):int+isBlockUsing(int i,int j):boolean+refreshFreeAreaDownward(int listNum, int start, int num, int state):void+refreshFreeAreaUpward():void+getNumOfFreePageInUserSpace():int+applyPageInUserSpace(int numOfPage):String+applyOnePageInUserSpace():int+getNumOfFreePageInSwapArea():int+applyPageInSwapArea(int numOfPage):String+applyOnePageInSwapArea():int+calculateMinPowerOfTwo(int number):int+setSwapAreaBitmap(int pageNum, boolean value):voidSPOOLing+s:static SPOOLing-wellBitmap:boolean[]-systemJobTable:Vector<JobTableItem> -acceptJobQueue:Vector<JobTableItem> -blockNumOfOutput:Vector<Integer>+run():void+advanceInputProgram():void+delayOutputProgram():void+allocateWellSpace(int numOfNeededBlock):int+releaseWellSpace(int blockStartNum, int +numOfBlock):void+writeJobToWell(JCB job, int blcokNum):void+readJobFromWell(int blcokNum):JCBProcessSchedule+pS:staticProcessSchedule+highLevelSchedule():void+middleLevelSchedule():void+lowLevelSchedule():booleanKernel+k:static Kernel+systemPath:String = ""-systemTime:int = -1-systemCanRunning:boolean = false-systemCallWaitTime:int = 0-need_resched:boolean = true+Kernel()+run():void+processCreate(PCB pcb):boolean+processBlocked(PCB pcb, int blockedQueueNum)+processWake(PCB pcb):void+processSuspend(PCB pcb, int suspendQueueNum):void+processActivate(PCB pcb):void+processCancel(PCB pcb, boolean runover):void+P(PCB pcb):boolean+P_BufferArea(PCB pcb, boolean type):boolean+V(PCB pcb):void+V_BufferArea(PCB pcb):voidThread+run():void
118
1
1
发布时间: 2021-04-01