设计一个“模拟内存管理程序”。首先用一个整数数组模拟内存资源池,内存资源大概在10000-20000之间,由外部输入决定;其次,内存分块有三种,分别为50/100/200个整数。这里必须要说明,对于三种类型的区块数量各是多少,出题者的意图为“50数量较多,100适中,200较少”,
看来理解错了,知乎有大神贴题了。只是一个 malloc
1
nyanyh 2020-01-07 16:54:16 +08:00
说实在这就是我期望的大学课程,理论和实践相结合
|
2
poplar50 2020-01-07 17:04:56 +08:00 via Android
老师可能需要换位思考一下。对于老师来说 easy 的东西对于学生来说可能就是难于上青天了。。
|
3
murmur 2020-01-07 17:05:44 +08:00 1
如果是课程设计,允许查资料开发是个好题目
笔试就太恶心了 |
4
q8164305 2020-01-07 17:40:23 +08:00 via Android
很多老师喜欢拿自己研究了很多年的东西让别人一年搞懂,搞不懂还要喷你菜,这挺恶心的
|
5
zachgenius 2020-01-07 17:52:04 +08:00
闭卷笔试? 告辞
|
6
DavidNineRoc OP @nyanyh 惊现大神。
@poplar50 没学过 windows 编程,但我感觉这个不是需要管理别的程序,杀死别的进程?是很容易的吗? @murmur 笔试,是真的牛皮 @q8164305 大一的新生,一个学期我是觉得牛皮 @zachgenius 也不知道手写怎么写出这个程序,老师不会觉得是一个文件的事情吧 |
7
Owenjia 2020-01-07 18:46:47 +08:00
任务管理器?怎么看评论感觉像 malloc 啊?
|
8
GeruzoniAnsasu 2020-01-07 19:08:36 +08:00 1
看起来像看不懂要写内存管理还是任务管理的一群普通大一学生在吐槽题目看不懂
如果写的是内存管理,那可能还是有顶尖学霸能随手复刻一下各种 **malloc 库实现的 如果真的是写“任务管理” 那题目不首先定义一下 task/process 内核结构体那么是没法开始动键盘的,更别说动笔了。我觉得并不能傻逼到这种程度 |
9
GeruzoniAnsasu 2020-01-07 19:09:03 +08:00 1
结论: 信息不足
|
10
billlee 2020-01-07 22:13:30 +08:00
按这里说的知乎上的说法,就是个固定了分块大小和每种大小的块量的内存池,用 3 个 bitset 管理就够了,又不是要写 slab 分配器。
|
11
alcarl 2020-01-07 22:27:34 +08:00 via Android
给 tasklist 和 taskkill 这俩命令套个壳子,一小时也就这么多了,在有时间再给 wmic 相关命令套个壳子输出一下 cpu 使用率和内存使用率,不能再多了。。。。别的别想了。一小时啊,他是不是对 windows 自带的任务管理器有什么误解(◦`~´◦)
|
12
Raynard 2020-01-07 22:45:16 +08:00
理解个字面意思,能关闭和查看任务。。
在简单点,只查看 |
13
JamesR 2020-01-07 23:32:24 +08:00
太难了,除非以前课余时候自己做过同样的题,否则写不出来的。
|
14
WhoMercy 2020-01-07 23:33:19 +08:00 via Android
闭卷考一般都是开放题,只要方向对扣分就不会很严,也就是说写多了及格还是简单的,如果上课听讲、课后有自己思考,也有机会拿高分。
|
16
allenjuly7 2020-01-07 23:41:20 +08:00
大佬们是不是没有点进去看题目?......
题目明明是模拟内存管理呀 |
17
xiadong1994 2020-01-08 03:27:05 +08:00
最简单的内存管理器或者说是 malloc 实现(超简化版 CSAPP malloclab,我不信这个老师会把代码都敲出来去跑正确性和性能测试),数据结构基本只需要用到链表(懒点直接上数组遍历硬怼),难度上来说问题不大( depends on 上课教了啥),也就手写代码坑了点(不过没有某校研究生操作系统课期中期末考试必有的一道手写某种进程同步机制的实现坑,人肉进程调度器)。
|
18
msg7086 2020-01-08 03:29:34 +08:00
题不对文。要求写内存管理偏说写任务管理,还用了一个有二义性的任务管理器的说法(要说也应该是任务调度之类的)。
内存池要求不算高,虽然大一写是有点过分但是放在大二大三的话还算是正常的。 看了下回答,槽点主要集中在上课拧螺丝,考试造火箭上。 |
19
vinew 2020-01-08 06:17:02 +08:00 via iPhone 3
可以画图吗🌺🐔
|
20
crella 2020-01-08 06:47:51 +08:00 via Android 1
看题目,以为是要用 vs+c#慢慢敲一个 taskmgr.exe 的仿制品
|
21
nevin47 2020-01-08 08:18:54 +08:00 via Android 1
我看了一下其实是实现一个 malloc,对大一上了半年的同学来说是有点难度,不过海星海星
|
22
DavidNineRoc OP @GeruzoniAnsasu 笔试
@Owenjia 现在才看到有人说是模仿一个任务管理器 @billlee @alcarl 针对的是大一新生,以前学过的应该可以搞定 @WhoMercy 上的课和考的试完全不一样 @allenjuly7 才看到~ @xiadong1994 大一新生貌似他们类都没学完,更别说链表了。估计只能给班上的几个人人完成了。 @msg7086 平时课上也是造火箭的,时不时来一个设计程序,一周一个语言 @vinew 用 C++ 来画? @nevin47 大佬 |