コード例 #1
0
/*
	**PENTING**

	FUNGSI UTAMA
	Penanganan Memori dilakukan disini...
*/
void tanganiData(int nomor_request){
	//nomor request adalah index untuk mengakses dataPage
	boolean done=false; 
	int i=0;
	// Contoh...
	printf("Process %d has requested page %d\n",dataPage[nomor_request].Requested, nomor_request);

	//# 3. Jika terdapat frame yang tidak ditempati, alokasikan.	
	//# 4. Jika tidak ada seluruh frame ditempati, pilih page ‘victim’ yang akan di swap.
	//printf("ini nomor request : %d\n", nomor_request );
	addToFrame(que, nomor_request);



	//	   	+ Jika page ‘victim’ tersebut memiliki dirty bernilai true simulasikan penulisan pada disk, lakukan 
	//		  sleep(1) dan tambahkan nilai pengaksesan pada disk.
	//        .. code ..

	//		+ Update page table untuk menyatakan page tersebut sudah tidak berada pada memori fisik.
	//        .. code ..

	//# 5. Simulasikan pemuatan page dengan sleep(1) dan tambahkan nilai pengaksesan pada disk.


	//# 6. Update page table untuk menyatakan page tersebut telah di load ke memori fisik dalam frame tersebut,
	//     tentu dengan dirty bernilai false, dan kembalikan nilai Requested ke 0.
	//dataPage[nomor_request].Dirty = 0;
	dataPage[nomor_request].Requested = 0;

	//# 7. Cetak page table setelah diupdate.
	// .. code ..
}
コード例 #2
0
 //@Override
 /*public*/ void SignalMastLogicTableAction::actionPerformed(ActionEvent* /*e*/) {
#if 0
     // create the JTable model, with changes for specific NamedBean
     createModel();
     MySortFilterProxyModel* sorter = new MySortFilterProxyModel(m);
     JTable* dataTable = m.makeJTable(sorter);
     dataTable->setObjectName("SignalMastLogicTable");
     //sorter.setTableHeader(dataTable.getTableHeader());
     // create the frame
     f = new jmri.jmrit.beantable.BeanTableFrame(m, helpTarget(), dataTable) {};
     setMenuBar(f);
     setTitle();
     addToFrame(f);
     f.pack();
     f.setVisible(true);
#endif
 }