页面地址重定位 #include <iostream> #include <iomanip> #define PagetableLength 64 using namespace std; int PageTable[PagetableLength] = {0}; //前提:地址是从0开始的 int main() { int LogicalAddress = 0; int PageNum = 0; int w = 0; int i = 0; int num = 0; int f; int PageSize; char flag; cout << "请输入页号长度;" << endl; cin >> num; cout << "请输入页面大小:" << endl; cin >> PageSize; cout << "请依次输入块号;" << endl; for(i = 0; i < num; i++ ) { cin >> PageTable[i]; } cout << "系统页号对应块号情况;\n"; for (i = 0; i < num; i++) { cout << setw(2) << i << "-->" << setw(2) << PageTable[i]; if(i % 8 == 7) cout << endl; } while(f) { cout << endl << "请输入逻辑地址;\n"; cin >> LogicalAddress; PageNum = LogicalAddress / PageSize; w = LogicalAddress % PageSize;//求页内偏移地址 if(PageNum >= PagetableLength)//判断是否越界 { cout << "本次访问的地址已超出进程的地址空间,错误!;\n"; return -1; } cout << "对应的物理地址为;" << endl << PageTable[PageNum] * PageSize + w << endl; cout << "你还想继续请求分配吗?是请按Y/y,否按其他键" << endl; cin >> flag; if(flag == 'Y' || flag == 'y') f = 1; else break; } return 0; }
操作系统实验-页面地址重定位
最新推荐文章于 2021-05-06 17:45:31 发布
本文介绍了一个简单的页面地址重定位程序实现。通过用户输入页号长度、页面大小及块号,程序展示页表并计算出逻辑地址对应的物理地址。此程序有助于理解虚拟内存到物理内存的映射过程。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
ACE-Step
音乐合成
ACE-Step
ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言
2176

被折叠的 条评论
为什么被折叠?



