0
时钟替换算法。 arr - 是物理内存arr2 - 页面(虚拟内存) 如果arr没有页面,则替换R = 0的帧;如果所有帧都有R = 1;初始化所有R = 0; IF帧有页面,R = 1。没做什么 。否则R = 1;时钟分页替换算法
#include<iostream>
using namespace std;
struct Frame
{
char content;
int R;
};
int main()
{
int arr2[] = { 1, 2, 3, 4, 1, 2, 5, 6 };
Frame arr[3];
arr[0].R = 1;
arr[0].content = arr2[0];
arr[1].R = 1;
arr[1].content = arr2[1];
arr[2].R = 1;
arr[2].content = arr2[2];
arr[3].R = 1;
arr[3].content = arr2[3];
for (int i = 0; i < 3; i++)
{
for (int j = 4; j < 8; j++)
{
if ((arr[i].content == arr2[j]) && (arr[i].R = 1))
{
cout << "Frame have this page";
}
else if ((arr[i].content == arr2[j]) && (arr[i].R = 0))
{
arr[i].R = 1;
}
else if ((arr[i].content != arr2[j]) && (arr[i].R = 1))
{
arr[i].R = 0;
}
else
{
arr[i].content = arr2[j];
arr[i].R = 1;
}
}
}
for (int i = 0; i < 3; i++)
{
cout << arr[i].content << " " << arr[i].R << endl;
}
system("pause");
return 0;
}
错误1个错误LNK1168:无法打开C:\用户\^h \文档\ Visual Studio的2013 \项目\ OS时钟\调试\ OS clock.exe写C:\用户\^h \文档\ Visual Studio 2013 \ Projects \ os clock \ os clock \ LINK os clock
水晶球认为exe已经在运行。 – molbdnilo 2014-11-25 12:23:11
_Oh阁下你会不会给我买... ...什么问题?错误消息指向“os clock.exe”正在运行,缺少写入权限或路径错误。 – Arno 2014-11-25 12:28:05