导航

2022-2023-1 20221301 《计算机基础与程序设计》第九周学习总结

作业信息

这个作业属于哪个课程 <班级的链接>https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP
这个作业要求在哪里 <作业要求的链接>https://www.cnblogs.com/rocedu/p/9577842.html#WEEK09
这个作业的目标 计算机科学概论第10,11章 并完成云班课测试《C语言程序设计》第8章并完成云班课测试

教材学习内容总结

《计算机科学概论》第10.11章

  • 操作系统责任:管理计算机资源、为系统交互提供界面
  • 内存与进程管理:内存管理:了解主存中载有多少个程序以及它们的位置的动作
  • 进程管理:了解活动进程的信息的动作
  • CPU调度:
    非抢先调度:发生在一个进程从运行状态切换到等待或者终止时
    抢先调度:发生在一个进程从运行到准备或者从等待到准备时
    • 先到先服务:按到运行状态的顺序转移到CPU
    • 最短作业优先:查看所有处于准备状态的进程,从中挑选一个最短服务时间的进程转移到CPU
    • 轮询法:分配给调度上CPU的进程,确定了允许该进程运行的时间长度。每个进程会被分配一个时间片,在这个时间片的时间段内,允许进程运行;如果在时间片结束时该进程还在运行,就会剥夺该进程得而CPU并分配给另一个进程;如果该进程在时间片结束前终止或者阻塞,则CPU会立即完成任务并进行切换。这种算法有利于交互式计算,响应的速度快,但是由于进程的切换,时间片轮转法要花费较多的内存开销,而且对于彼此进程间相差较大的有利,而对于进程大小相似或相同的则不利。

阅读教材中遇到的问题

  • 没有明白在分区时,压缩这一现象是在什么时候进行的,需不需要人为控制?
  • 为节省存储空间或传输带宽,人们已经在计算机系统中广泛地使用了数据压缩技术。在磁介质存储数据或网络传输数据时,人们使用基于硬件或软件的各种压缩技术。当压缩技术在各个领域都很流行时,内存压缩技术却由于其复杂性而一直未得到广泛使用。近年来,由于在并行压缩一解压算法以及在硅密度及速度方面取得的进展,使得内存压缩技术变得可行。

内存压缩技术的主要思想是将数据按照一定的算法压缩后存入压缩内存中,系统从压缩内存中找到压缩过的数据,将其解压后即可以供系统使用。这样既可以增加实际可用的内存空间,又可以减少页面置换所带来的开销,从而以较小的成本提高系统的整体性能。

内存压缩机制是在系统的存储层次中逻辑地加入一层——压缩内存层。系统在该层中以压缩的格式保存物理页面,当页面再次被系统引用时,解压该压缩页后,即可使用。我们将管理这一压缩内存层的相关硬件及软件的集合统称为内存压缩系统。内存压缩系统对于CPU、I/O设备、设备驱动以及应用软件来说是透明的,但是操作系统必须具有管理内存大小变化以及压缩比率变化的功能。

  • 对于大多数的操作系统而言,要实现内存压缩,大部分体系结构都不需要改动。在标准的操作系统中,内存都是通过固定数目的物理页框(page frame)来描述的,由操作系统的VMM来管理。要支持内存压缩,OS要管理的实际内存大小和页框数目是基于内存的压缩比率来确定的。这里的实现内存是指操作系统可的内存大小,它与物理内存的关系如下:假设PM是物理内存,RM(t)是系统在t时刻的实际内存,而CR(t)是压缩比率,在给定时刻t可支持的最大实际内存为RM(t)=CR1(t)×PM。然而,由于应用程序的数据压缩率是不依赖于OS而动态变化的,未压缩的数据可能会耗尽物理内存,因此当物理内存接近耗尽时,操作系统必须采取行动来解决这个问题。

参考:https://blog.csdn.net/abc470337944/article/details/6870726

代码调试中的问题和解决过程

  • 问题1:没有明白\t是什么意思
  • 问题1解决方法:在网上查询:C语言的t 代表的意思是水平制表符。相当于按了键盘上的TAB按键,通常宽度相当于8个空格的位置,但有些软件允许设置tab的宽度。在双引号或定界符表示的字符串中有效,在单引号表示的字符串中无效。
  • 问题2:忘记百分数该如何输出了
  • 问题2解决办法:通过翻阅教材及查询资料,学会了。例如printf("%d%%",a);即可输出a%。

其他(感悟、思考等,可选)

通过几周的学习,发现了很多新的学习途径和方法,尝试学习更多新的领域的东西,对自己来说是一个挑战!!但是明显发现,最近的自学能力有所提升!再接再厉!!

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 0/0 0/0 3/3
第二周 200/200 6/6 18/21
第三周 200/400 10/10 10/31
第四周 300/700 2/12 19/50
第五周 300/1000 3/15 20/70
第六周 300/1300 5/20 15/85
第七周 900/2200 1/21 15/100
第八周 1400/3600 5/25 15/115
第九周 1500/5100 3/27 15/130

参考资料