摘要:
一般任务:1、判断可行,2.输出可行路径。 附带一个in.txt作为迷宫。 5 60 1 0 0 0 10 0 0 1 0 01 0 1 0 0 11 0 0 1 0 11 1 0 0 0 0 总结: 1.栈的基本用法如下: 头文件:#include<stack> 定义栈:stack<point> 阅读全文
2019年7月4日
2019年6月19日
摘要:
恢复内容开始 最终要的就是解决外部碎片!内部碎片:分配器发的内存大于请求,块中未使用的空间。 free()接受指针并释放块,不会给library通知块的大小,因此library得自己清楚。 library管理的空间成为heap,数据结构是空闲列表(本可以不需要列表),其包含了对内存管理区域中所有空闲 阅读全文
摘要:
code,stack and heap. 静态代码放在地址空间顶部,heap从顶部向下增长(用户malloc()更多内存),stack从底部16KB向上增长(用户进行进程调用),当然还有其他的地址空间安排。 我们描述的是OS为运行程序提供的抽象。程序实际上不在物理地址0到16KB的内存中,它被加载到 阅读全文
2019年6月17日
2019年5月8日
摘要:
MLFQ想同时解决周转时间和响应时间,那当系统运行时,调度器如何学习负载特性使得更好做出调度决策? Basic Rules: Rule 1: If Priority(A) > Priority(B), A runs (B doesn’t). Rule 2: If Priority(A) = Prio 阅读全文
2019年5月5日
摘要:
在了解底层机制后,现在开始高层策略。 文章中对工作负载有简单的假设:1.每个job有相同运行时间,2.所有jobs同时到达,3.job一旦开始则run到结束,4.所有job使用CPU,5.每个作业运行时间已知。 调度指标:一、turnaround time(性能指标,关注的是job完成时间)。性能往 阅读全文
2019年4月26日
摘要:
虚拟化机制的几大挑战:1.性能。在实现虚拟化的同时不增加系统过多开销。2.控制。高效运行程序的同时对CPU保持控制(对资源的管理)。 Limited direct execution:直接在CPU中运行程序。因此,OS启动程序是首先在进程列表中创建一个process entry,为其分配内存,从磁盘 阅读全文
2019年4月11日
摘要:
一般的sys.getsizeof()显示不了复杂的字典。 查看类中的内容: 这里用递归调用所有对象的getsizeof: 阅读全文
2019年4月6日
摘要:
、kill命令可以带信号号码选项,也可以不带。如果没有信号号码,kill命令就会发出终止信号(15),这个信号可以被进程捕获,使得进程在退出之前可以清理并释放资源。也可以用kill向进程发送特定的信号。例如: kill -2 123 它的效果等同于在前台运行PID为123的进程时按下Ctrl+C键。 阅读全文
2019年4月5日
摘要:
a是引用,1是对象。Python缓存整数和短字符串,对象只有一份,但长字符串和其他对象(列表字典)则有很多对象(赋值语句创建新的对象)。 返回4,当使用某个引用作为参数传给getfrecount时,创建了临时引用,+1. 对象引用对象 a引用对象b,c引用b两次。 通过objgraph包(之前安装x 阅读全文