亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? dpartition.cpp

?? 本程序?yàn)橐粋€(gè)內(nèi)存動(dòng)態(tài)分區(qū)分配的模擬程序,采用首次適應(yīng)算法和最佳適應(yīng)算法實(shí)現(xiàn)動(dòng)態(tài)分區(qū)。其中
?? CPP
字號(hào):
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "DPartition.h"
#include "malloc.h"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TMainFrm *MainFrm;
//--------------------------------------------------------------------------- 
__fastcall TMainFrm::TMainFrm(TComponent* Owner)
	: TForm(Owner)
{
}
//---------------------------------------------------------------------------
typedef struct LNode
{
	struct LNode *prior;//前趨結(jié)點(diǎn)  
    int size;	//內(nèi)存空間大小
    int address;	//首地址
    struct LNode *next;//后繼結(jié)點(diǎn)
    String fileName;	//分配給的文件名
}LNode,*FreeList;

FreeList head,cur;

int maxSize = 640,minSize = 10;
//---------------------------------------------------------------------------
void Display()
{
    MainFrm->Memo1->Lines->Add("當(dāng)前空閑分區(qū)鏈信息如下:");
    MainFrm->Memo1->Lines->Add("分區(qū)大小(KB)\t分區(qū)始址\t狀態(tài)\t作業(yè)名");
    cur = head->next;
    while(cur != NULL)
    {
    	if(cur->fileName == "")
    		MainFrm->Memo1->Lines->Add(IntToStr(cur->size)+"\t\t0x"+IntToHex(cur->address * 1024,8)+"\t空閑\t"+cur->fileName);
        else
        	MainFrm->Memo1->Lines->Add(IntToStr(cur->size)+"\t\t0x"+IntToHex(cur->address * 1024,8)+"\t已用\t"+cur->fileName);
        cur = cur->next;
    }
}
//--------------------------------------------------------------------------- 
void __fastcall TMainFrm::FormCreate(TObject *Sender)
{
	head = (FreeList) malloc (sizeof(LNode));
    head->next = head->prior = NULL;	//建立一個(gè)帶頭結(jié)點(diǎn)的雙向鏈表
    FreeList temp = (FreeList) malloc (sizeof(LNode));	//生成一個(gè)新結(jié)點(diǎn)
    temp->size = maxSize;
    temp->address = 0;
    temp->fileName = "";
    temp->next = head->next;
    temp->prior = head;
    head->next = temp;
}
//---------------------------------------------------------------------------
//空閑分區(qū)的分配算法
bool __fastcall TMainFrm::Apply(String fileName,int size)
{        
	FreeList temp = (FreeList) malloc (sizeof(LNode));
    FreeList min = (FreeList) malloc (sizeof(LNode));
    //查找第一個(gè)符合要求的結(jié)點(diǎn)
    for(cur = head->next;cur && cur->fileName != "" || cur->size < size;cur = cur->next);
    min = cur;
    if(BF->Checked)//如果選擇的是最佳適應(yīng)算法則要查找出所有符合要求結(jié)點(diǎn)中最小的一個(gè)
    {
    	for(cur;cur;cur = cur->next)
        	if(cur->size < min->size && cur->fileName == "") min = cur;
    }
    if(min)
    {
    	if(min->size - size <= minSize) temp = min;//不可再分則直接分配給作業(yè)
        else
        {//從可用分區(qū)中劃出size大小的內(nèi)存空間                           
        	temp->size =size;
            temp->address = min->address;
            min->size -= size;
            min->address += size;           
        	temp->prior = min->prior;
            min->prior->next = temp; 
        	min->prior = temp;
        	temp->next = min;  
        }
        temp->fileName = fileName;
        return true;
    }
    else return false;
}
//---------------------------------------------------------------------------
//空間釋放算法
void __fastcall TMainFrm::SetFree(String fileName)
{
    for(cur = head->next;cur && cur->fileName != fileName;cur = cur->next);//找到結(jié)點(diǎn)
    if(cur)
    {
    	if(cur->prior != head && cur->prior->fileName == "")
    	{//不為第一結(jié)點(diǎn)且與前一可用區(qū)相鄰          
            if(cur->next != NULL && cur->next->fileName == "")
            {//與后一可用分區(qū)相鄰
            	cur->size += cur->next->size;
                cur->next = cur->next->next;
                if(cur->next->next != NULL) cur->next->next->prior = cur;
            }         
        	cur->prior->size += cur->size;
            cur->prior->next = cur->next;
            if(cur->next != NULL) cur->next->prior = cur->prior;
    	}
        else if(cur->next != NULL && cur->next->fileName == "")
        {//與后一可用分區(qū)相鄰且不為空表目
        	cur->fileName = "";
        	cur->size += cur->next->size;
            cur->next = cur->next->next;
            if(cur->next->next != NULL) cur->next->next->prior = cur;
        }
    	else
    	{
    		cur->fileName = "";
    	}
    }
    else MessageBox(NULL,"釋放空間失敗!","警告",false);
}
//---------------------------------------------------------------------------
void __fastcall TMainFrm::Btn_CreateClick(TObject *Sender)
{
	String fileName;
    int size;
    if(Edit_CName->Text == "")
    {
    	MessageBox(NULL,"請(qǐng)輸入作業(yè)名!","錯(cuò)誤",false);
        return;
    }
    else if(Edit_Size->Text == "")
    {
		MessageBox(NULL,"請(qǐng)輸入作業(yè)的大小!","錯(cuò)誤",false);
        return;
    }
    fileName = Edit_CName->Text;
    size = StrToInt(Edit_Size->Text);
    if(Apply(fileName,size)) Display();
    else MessageBox(NULL,"沒有足夠的可用空間!","提示",false);
}
//---------------------------------------------------------------------------
void __fastcall TMainFrm::Btn_FreeClick(TObject *Sender)
{
	String fileName;
    fileName = Edit_FName->Text;
    SetFree(fileName);
    Display();
}
//---------------------------------------------------------------------------
void __fastcall TMainFrm::FormClose(TObject *Sender, TCloseAction &Action)
{
	for(cur = head;cur;cur = cur->next) free(cur);	
}
//---------------------------------------------------------------------------


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人一区二区视频| 日韩高清一区二区| 99热这里都是精品| 国产精品久久久久aaaa| 99久久er热在这里只有精品15 | 国产欧美日韩久久| www.久久精品| 一区二区三区在线观看视频 | 国产1区2区3区精品美女| 国产女主播视频一区二区| 成人avav在线| 亚洲综合色在线| 91麻豆精品国产91久久久资源速度| 日韩av中文在线观看| 久久综合成人精品亚洲另类欧美 | 不卡在线观看av| 亚洲综合一区二区精品导航| 欧美高清性hdvideosex| 国产精品18久久久久久vr| 国产精品网站在线播放| 欧美天堂一区二区三区| 久久国产精品色婷婷| 国产精品电影院| 欧美区一区二区三区| 国产精品自产自拍| 亚洲最色的网站| 久久婷婷色综合| 色视频一区二区| 国模无码大尺度一区二区三区| 国产精品久久福利| 欧美电影免费提供在线观看| 成人黄动漫网站免费app| 日韩在线一区二区| 中文字幕不卡在线| 欧美色倩网站大全免费| 国产精品综合一区二区| 亚洲国产日韩a在线播放性色| 欧美一区二区三区啪啪| 99久久伊人网影院| 久久99国产精品久久99果冻传媒 | 一区二区理论电影在线观看| 日韩免费看的电影| 在线观看亚洲a| 国产成人免费av在线| 日韩成人一区二区| 亚洲激情图片一区| 国产三级一区二区| 欧美一区二区三区免费观看视频| 成人午夜av影视| 国内外成人在线视频| 亚洲不卡在线观看| 亚洲精品伦理在线| 国产欧美一区二区精品性色| 欧美肥妇毛茸茸| 欧美性色欧美a在线播放| 成人精品视频一区二区三区尤物| 麻豆国产一区二区| 亚洲成av人片观看| 亚洲激情图片qvod| 亚洲欧美日韩一区二区| 中文字幕免费一区| 国产女同互慰高潮91漫画| 2014亚洲片线观看视频免费| 日韩欧美激情一区| 制服丝袜亚洲精品中文字幕| 欧美视频一区二区三区| 91国偷自产一区二区三区成为亚洲经典| 风间由美一区二区三区在线观看 | 亚洲桃色在线一区| 国产免费观看久久| 国产女人水真多18毛片18精品视频| 欧美mv和日韩mv国产网站| 欧美日韩中文字幕一区二区| 欧美亚洲高清一区二区三区不卡| 色94色欧美sute亚洲线路一ni| 成人av在线电影| 成人免费高清视频| av日韩在线网站| 不卡高清视频专区| 99久久精品国产麻豆演员表| 91亚洲精品久久久蜜桃| 色噜噜久久综合| 在线亚洲高清视频| 欧美日韩免费高清一区色橹橹 | 欧美一级夜夜爽| 欧美一区二区久久久| 日韩网站在线看片你懂的| 欧美成人欧美edvon| 精品久久五月天| 日本一区二区三区电影| 中文字幕在线一区| 亚洲免费观看高清在线观看| 一区二区三区欧美激情| 亚洲高清不卡在线观看| 视频一区二区中文字幕| 久久狠狠亚洲综合| 国产99久久久国产精品潘金| 99久久精品国产一区二区三区 | 欧美经典一区二区| 亚洲免费在线看| 五月天亚洲婷婷| 国产一区二区三区| jlzzjlzz亚洲日本少妇| 欧美色视频在线观看| 精品国产麻豆免费人成网站| 国产精品网站导航| 亚洲一区二区在线视频| 七七婷婷婷婷精品国产| 国产a精品视频| 欧美亚洲愉拍一区二区| www国产成人免费观看视频 深夜成人网| 国产亚洲精久久久久久| 亚洲午夜免费视频| 国产伦精品一区二区三区免费| 不卡一区中文字幕| 欧美一区二区三区免费在线看 | 亚洲激情自拍视频| 久久精工是国产品牌吗| 91美女视频网站| 欧美变态口味重另类| 亚洲欧美在线高清| 久久aⅴ国产欧美74aaa| 色综合咪咪久久| 日韩女优电影在线观看| 亚洲欧美视频一区| 久久精品国产精品亚洲综合| 色综合天天做天天爱| 精品国产91乱码一区二区三区 | 亚洲国产成人一区二区三区| 一区二区三区在线免费播放 | 国产精品三级视频| 天天影视网天天综合色在线播放| 床上的激情91.| 日韩三级电影网址| 亚洲国产精品尤物yw在线观看| 亚洲欧美激情视频在线观看一区二区三区 | 日本一区二区视频在线| 偷拍与自拍一区| av资源站一区| 日韩欧美国产精品一区| 亚洲综合在线电影| 国产精品影视网| 日韩欧美不卡一区| 午夜激情久久久| 91麻豆国产精品久久| 国产午夜三级一区二区三| 日本女优在线视频一区二区| 在线观看欧美黄色| 综合久久一区二区三区| 国产一区二区女| 日韩欧美中文字幕制服| 亚洲国产精品视频| 一本久道久久综合中文字幕| 国产欧美一区二区精品婷婷| 精品一区二区日韩| 日韩一区二区在线看| 午夜精品一区二区三区免费视频| 91丨九色丨尤物| 亚洲欧美在线视频观看| 北条麻妃一区二区三区| 欧美国产禁国产网站cc| 国产精品18久久久| 国产日韩欧美精品在线| 久久精品国产在热久久| 日韩免费成人网| 精品一区二区影视| 精品伦理精品一区| 久久丁香综合五月国产三级网站| 91精品欧美福利在线观看| 天天做天天摸天天爽国产一区| 欧美日韩一区在线| 偷拍日韩校园综合在线| 在线观看亚洲成人| 亚洲国产日韩一级| 91麻豆精品国产91久久久久 | 蜜桃精品视频在线观看| 日韩三级视频在线看| 久久99在线观看| 国产欧美精品在线观看| 成人免费观看男女羞羞视频| 亚洲欧洲日韩av| 91久久人澡人人添人人爽欧美| 亚洲精品视频一区二区| 欧美日韩在线直播| 日韩不卡一区二区三区| 26uuu国产电影一区二区| 国产91精品久久久久久久网曝门 | 亚洲人成网站精品片在线观看| 99国产精品久| 亚洲成av人综合在线观看| 欧美一区二区视频在线观看| 美女视频黄久久| 国产欧美日韩另类视频免费观看 | 国产福利一区二区三区视频在线| 亚洲精品一区二区三区福利| 成人av片在线观看| 亚洲午夜激情av| 26uuu国产一区二区三区| 99精品国产视频| 视频精品一区二区|