南邮 | 操作系统实验三:存储管理
- 理解操作系统存储管理原理。
- 研读Linux 内存管理所用到的文件include/linux/mm.h,主要包括两个数据结构:mem_map、free_area。
- 在Linux 下,用malloc()函数实现cat或copy命令。
例程1
申请内存、使用内存以及释放一块内存
#include <stdio.h>
#include <stdlib.h> //exit函数,实验指导上少了这一个头文件
#include <string.h>
#include <malloc.h>
int main(void)
{
char * str;
if ((str=(char*)malloc(10))==NULL)
{ printf("not enough memory to allocate buffer\\n"); exit(1);
}
strcpy(str,"hello");
printf("string is %s\\n",str);
free(str);
return 0;
}
例程2
在打开文件后,通过fstat()获得文件长度,然后通过malloc()系统调用申请响应大小的内存空间,通过read()将文件内容完全读入该内存空间,并显示出来。
#include<stdio.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdlib.h>
#include <malloc.h>
#include <string.h> //实验指导上少了这一个头文件
#include <sys/types.h> //实验指导上少了这一个头文件
#include <fcntl.h> //实验指导上少了这一个头文件
main()
{ int fd,len; void *tp; struct stat ps; //fd=open(“/home/jf03/try”,0); fd = open(“/home/wonz/b16xxxxxx.c”, 0); //实验指导上这里写错了fstat(fd,&ps); len=ps.st_size; tp=malloc(len); read(fd,tp,len); //printf(“%s\\n”,tp);
printf(“%s\n”,tp); //实验指导上这里写错了
printf(“the length of the file: %d\n”, len); //实验指导上这里写错了close(fd);
}
南邮 | 操作系统实验三:存储管理相关推荐
- 【南邮操作系统实验】页面置换算法(FIFO、LRU、OPT)图形化界面(JavaFx)
页面置换算法图形化界面 前言 运行效果 源码 FIFO LRU OPT FXML界面 控制器 启动类 前言 其实以前操作系统实验的时候我写过了三份了:(命令行) 页面置换算法 (FIFO.LRU.OP ...
- 【南邮操作系统实验】银行家算法Java版
这个是南邮通达的操作系统实验,实验内容相对比较简单,就是实现一下银行家算法. 我没有参考任何源码,纯属 made by myself,如果差错,欢迎指出. import java.util.*; /* ...
- 南邮数据结构实验三---图的基本运算及飞机换乘次数最少问题
一. 实验目的和要求 1.掌握在图的邻接矩阵和邻接表存储结构实现图的基本运算的算法.学习使用图算法解决应用问题的方法. (1). 验证教材中关于在邻接矩阵和邻接表两种不同存储结构上实现图的基本运算的算 ...
- 【南邮操作系统实验】页面置换算法 (FIFO、LRU、OPT)Java 版
页面置换算法Java版 先进先出置换算法(FIFO) 最近最久未使用置换算法(LRU) 最佳置换算法(OPT) 帮女朋友写了份 Python版的,Python版戳这里 帮女朋友舍友写了份 C++ 版的 ...
- 南邮操作系统实验之文件系统实验——实现简单多用户文本
1.实验概述 实现多用户文件系统,每次用户可保存多个文件,一次运行用户可打开5个文件. 实现文件的相关操作,包括创建.删除.打开.关闭以及读写功能. 采用二级目录,设置主目录MFD.用户文件目录UFD ...
- 【南邮操作系统实验】页面置换算法(FIFO、LRU、OPT) C++ 版
页面置换算法 先进先出置换算法(FIFO) 最近最久未使用置换算法(LRU) 最佳置换算法(OPT) 写好了 Java 版和 Python 版的- Java版这里 Python版戳这里 帮女朋友舍友写 ...
- 【南邮操作系统实验】页面置换算法(FIFO、LRU、OPT) Python 版
页面置换算法 先进先出置换算法(FIFO) 最近最久未使用置换算法(LRU) 最佳置换算法(OPT) 本来已经写好一份 Java 版的了,然后又帮女朋友写了一份 Python 版,啊哈哈 Java版戳 ...
- 南邮计算机实验报告合集【非常全】
南邮计算机实验报告合集 GitHub上自取,可以借鉴,请勿直接抄袭 南京邮电大学数据结构实验,南京邮电大学离散数学实验,南京邮电大学操作系统实验,南京邮电大学电工电子基础实验B实验,南京邮电大学汇编语 ...
- 操作系统实验五--存储管理
文章目录 操作系统实验五--存储管理 一.实验目的 二.实验内容 三.设计原理及相关算法 四.结果分析 五.源代码 操作系统实验五–存储管理 一.实验目的 1.了解虚拟存储技术的特点,掌握请求页式存储 ...
最新文章
- Linux只列出目录的几种方式
- Golang库学习笔记 Gin(三)
- java final内存机制_Java中的内存处理机制和final、static、final static总结
- 小米百万美金大奖花落机器狗团队,5 年千亿重砸研发鼓励创新
- DRD:线程错误检测器
- 谁动过你的电脑?小姐姐们要学会保护好自己电脑里的小秘密呀
- numpy 常用api(四)
- 【DP】LeetCode 53. Maximum Subarray
- navicat premium使用教程 Navicat Premium mac的基本使用
- i5 7200u 计算机专业,i5 7200U理论性能对比_笔记本评测-中关村在线
- RS232标准DB9接口定义
- 代码 生成迅雷链接启动迅雷下载
- OpenLayers 6 实现仿Echarts风格的动态迁徙图/航班图
- Verilog常用语法
- 金蝶显示数据无法连接服务器,金蝶连接云服务器异常怎么回事
- 写贺卡给毕业师姐怎么写计算机系的,[给师姐的毕业祝福语]对师姐的毕业祝福语...
- 外贸b2c网站建设!
- IDEA 工具中 如何生成有参和无参的构造方法
- 村田晶振的料号暗藏什么意义呢
- 笔记:腾讯云服务器的使用
热门文章
- 前端请柬框架_25佳漂亮的结婚邀请 婚礼请柬网站设计
- iOS图片处理之涂抹马赛克解析
- php分割中文字符串(1个字,多个字)
- android捕鱼达人修改方法(反编译、修改、打包)
- 七、PyQt5文件及文件夹操作(高级应用篇)
- 封号令人头秃:金融类应用谷歌上架问题
- 空间注意力机制sam_一种基于注意力机制的神经网络的人体动作识别方法与流程...
- 计算机屏幕变红色,电脑屏幕变红色怎么办 电脑显示器变成红色怎么办 - 云骑士一键重装系统...
- artTemplate模板引擎及ajax封装
- 关于Windchill中简单的操作(对象的操作,客制化操作)