20191317《信息安全专业导论》第九周学习总结

教材内容总结

CPU调度

CPU调度 (CPU scheduling):多个进程同时处于内存,当一个进程必须等待时,OS从该进程拿走CPU使用权交给其他进程。

进程执行从一个IO区间(I/O burst)开始,随后进入一个CPU区间(CPU burst)并反复,进程循环地在CPU执行和I/O等待两个状态间切换,直到通过系统请求终止最后一个CPU burst。

这张图可以很好的解释CPU调度:

CPU调度决策发生在4种情况下:
1) 进程从运行(running)状态切换到等待(waiting)状态;
2) 进程从运行(running)状态切换到就绪(ready)状态;
3) 进程从等待(waiting)状态切换到就绪(ready)状态;
4) 进程终止

内存管理

内存管理是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。

一个执行中的程式,譬如网页浏览器在个人电脑或是图灵机(Turing machine)里面,为一个行程将资料转换于真实世界及电脑内存之间,然后将资料存于电脑内存内部(在计算机科学,一个程式是一群指令的集合,一个行程是电脑在执行中的程式)。

我还在博客园里找到一些更加详细的资料:https://www.cnblogs.com/huangwentian/p/7487670.html

进程状态

进程状态反映进程执行过程的变化。这些状态随着进程的执行和外界条件的变化而转换。在三态模型中,进程状态分为三个基本状态,即运行态,就绪态,阻塞态。在五态模型中,进程分为新建态、终止态,运行态,就绪态,阻塞态。

文件访问

文件访问有直接访问和顺序访问两种方法。

顺序访问即将文件看做线性结构。这要求按顺序处理文件中的数据。读写操作根据读写的数据量移动当前文件指针。

直接文件访问的文件会被概念性的划分为带编号的逻辑记录。直接访问允许用户指定记录编号,从而把文件指针设置为某个特定的记录。因此,用户可以按照任何顺序读写记录。

磁盘调度

磁盘调度在多道程序设计的计算机系统中,各个进程可能会不断提出不同的对磁盘进行读/写操作的请求。由于有时候这些进程的发送请求的速度比磁盘响应的还要快,因此我们有必要为每个磁盘设备建立一个等待队列,常用的磁盘调度算法有以下四种:

先来先服务算法(FCFS)

最短寻道时间优先算法(SSTF)

扫描算法(SCAN)

问题与解决办法

在做云班课选做作业时,我发现进程状态代码难以理解,我就在简书上找了些资料。然后在其基础之上根据自己的理解做了一些改动。

from state_machine import State, Event, acts_as_state_machine, after, before, InvalidStateTransition

@acts_as_state_machine
class Process:
    created = State(initial=True)
    ready = State()
    running = State()
    waiting = State()
    terminated = State()

    read = Event(from_states=(created,waiting ,running),to_state = ready)
    run = Event(from_states=ready,to_state = running)
    terminate = Event(from_states=running,to_state = terminated)
    wait = Event(from_states=running,to_state = waiting)

    def __init__(self, name):
        self.name = name

    @after('wait')
    def wait_info(self):
        print('{}entering waiting mode'.format(self.name))

    @before('terminate')
    def terminate_info(self):
        print('{}terminated'.format(self.name))    

    @after('run')
    def run_info(self):
        print('{}is running'.format(self.name))

    @after('read')
    def read_ingo(self):
        print('{}is ready'.format(self.name))    

def transition(process,event,event_name):
    try:
        event()
    except InvalidStateTransition as err:
        print('Error: transition of {} from {} to {} failed'.format(process.name, process.current_state, event_name))

def state_info(process):
    print('state of {}: {}'.format(process.name, process.current_state))        

def main():
    READY = 'ready'
    RUNNING = 'running'
    WAITING = 'waiting'
    TERMINATED = 'terminated'

    p1, p2 = Process('process1'), Process('process2')
    [state_info(p) for p in (p1, p2)]

    print()
    transition(p1, p1.wait, WAITING)
    transition(p2, p2.terminate, TERMINATED)
    [state_info(p) for p in (p1, p2)]

    print()
    transition(p1, p1.run, RUNNING)
    transition(p2, p2.wait, WAITING)
    [state_info(p) for p in (p1, p2)]

    print()
    transition(p2, p2.run, RUNNING)
    [state_info(p) for p in (p1, p2)]

    print()
    [transition(p,p.read, READY) for p in (p1,p2)]
    [state_info(p) for p in (p1, p2)]

    print()
    [transition(p, p.terminate, TERMINATED) for p in (p1, p2)]
    [state_info(p) for p in (p1, p2)]

if __name__ == '__main__':
    main()    

虽然这些代码可以看懂,但是真让我自己写的话还是做不到的。这里面还有许多我没接触过的知识
资料
Python设计模式之状态模式

原文地址:https://www.cnblogs.com/wpy-1049363419/p/11924209.html

时间: 2024-10-07 04:32:34

20191317《信息安全专业导论》第九周学习总结的相关文章

2019-2020-1学期 20192421 《网络空间安全专业导论>>第二周学习总结

在本次对第五章与第四章进行了自主学习后,我对电脑硬件层的门和电路以及计算部件的有关知识有了一定了解,这两章从硬件层结构的层面出发,来辅助加深对于计算机的理解. 计算机是电子设备,它的大多数基础硬件元件控制着电流,而人类则通过这技术利用电流能量来进行计算,第四章将继承前两章讲述的计数系统,进而探讨计算机如何让使用电信号来表示和操作这些二进制值.首先要了解我们根据信号的电平区分信号的值,0-2伏是低电平,由二进制数字0表示,2-5伏范围内是高电平,由二进制数字1表示,然后再来来介绍一下有关概念, 门

2019-2020-1 20191312《信息安全专业导论》第九周学习总结

2019-2020-1 20191312<信息安全专业导论>第九周学习总结 教材学习内容总结 这周学习了操作系统层的两章:操作系统和文件系统和目录.从操作系统开始,介绍了操作系统扮演的角色,管理者和服务者.接着介绍了操作系统如何管理进程和内存,并介绍了一些具体的方法.通过对这些管理方法的学习,我进一步了解了计算机的运行原理和方法.然后文件系统和目录这一章介绍了系统中或者说是计算机中文件的储存方法,了解了树状结构下的文件储存,我认为这是一种非常高效的储存方式.同时也学习了对文件的读写方式,和在读

20191302 《信息安全专业导论》第二周学习总结

2019-2020-20191302 <信息安全专业导论>第二周学习总结 教材学习内容总结 -<计算机科学概论>第一章 第十八章 -第一章 全景图 通过第一章的学习我了解了计算机系统的组成,硬件与软件,抽象的概念,计算机的发展历史以及计算机语言,对计算机有了初步的了解,体会到计算机从能充满整个教室的大块头到现在小巧玲珑的笔记本电脑经历了多代的演变,人类科技的进步速度之快令我j惊叹. -第十八章 计算的限制 通过这一章的学习,我了解到数学问题只有一小部分可解,只有一部分问题是计算机可

2019-2020-1 20191312 《信息安全专业导论》第三周学习总结

2019-2020-1 20191312 <信息安全专业导论>第三周学习总结 教材学习内容总结 本周学习了二进制数值与计数系统和数据表示法.学会了区分数字分类,描述位置计数法以及其他进制的相互转化.了解了二进制在计算机系统里的应用,对数据类型,整数值,字符集和音频信息有了初步的认识. 教材学习中的问题和解决过程 阅读了3.3.3文本压缩,对编码和加密有了疑问,编码与加密有什么区别呢?结合base64的课下作业,我查阅了一些资料 编码与加密, 密码及编码 同时我也了解了一些其他的相关知识. 代码

2019-2020 191316《信息安全专业导论》第三周学习总结

2019-2020 191316<信息安全专业导论>第三周学习总结 教材学习内容总结 阅读课本第二三章,我了解了数字的分类和位置计数法,学会了如何在不同进制直接对数字进行转换和计算补码.知道了为什么计算机要采用二进制.了解了文本压缩的三种方法,颜色表示法和视频表示法. 教材学习中的问题和解决过程 问题一:我阅读了关于数据压缩技术的有关文字,没有明白既然有损压缩会丢失数据,为什么有时还会采用这种方法. 解决方案:我上网查了有关资料,知道了有损与无损的区别以及各自的优缺点. 有损压缩 有损压缩的特

20191302 《信息安全专业导论》第三周学习总结

20191302 <信息安全专业导论>第三周学习总结 教材学习内容总结 1.了解了数字的分类 number.natural number.negative number.integer.rational number 2.位置计数法与十进制 3.了解了各种进制的转换 掌握了十进制向二进制的转换 4.掌握了二进制补码 5.了解了文本'.音频.图像.视频的表示法与压缩 教材学习中的问题和解决过程 1.二进制向八进制和十六进制的转换可能有简便的方法,是什么呢? 解决:百度查询,二进制到八进制可以三个

2019-2020-1 20191330 《信息安全专业导论》第三周学习总结

2019-2020-1 20191330 <信息安全专业导论>第三周学习总结 教材学习内容总结 第二章:从中学习了数字的分类及一些计数方法 第三章:了解了数据的分类及数字进制的转换和文本压缩的方法 参加云班课测试,满分58分,得分49分.班级第八名(忽略重分情况) 代码调试中的问题及解决方法 问题1.can't assign to operator 解答:出现类似情况是因为值的类型不同,进行计算需要先统一字符的类型,例如统一为字符串,数字等类型. 问题2:Undefined variable

2019-2020-1 20191326 《信息安全专业导论》第三周学习总结

2019-2020-1 20191326 <信息安全专业导论>第三周学习总结 教材学习内容总结 了解了二进制计数法以及二的倍数的计数法,能将其他进制的数字转换成其他十进制数字,也能将十进制数字转换成其他基数的数字,了解了分数字分类和位置计数法,能够区分模拟数据和数字数据,了解了负数和浮点数的概念,能够区分光栅图形和矢量图形,了解了RGB值如何定义颜色和时间和空间视频压缩,知道了数据压缩和计算压缩率. 做题当中的问题 不明白脉冲编码调制和重新计时不明白科学计数法和浮点表示法的区别. 原文地址:h

20191331 《信息安全专业导论》第4周学习总结

<信息安全专业导论>第4周学习总结 教材学习内容总结 1.门电路 用以实现基本逻辑运算和复合逻辑运算的单元电路称为门电路.常用的门电路在逻辑功能上有与门.或门.非门.与非门.或非门.与或非门.异或门等几种. 门电路作用过程可通过真值表表示 2.组合电路逻辑电路 连接门电路,组成逻辑结构,实现信息的运算和存储. 3.冯诺依曼结构 数学家冯·诺依曼提出了计算机制造的三个基本原则,即采用二进制逻辑.程序存储执行以及计算机由五个部分组成(运算器.控制器.存储器.输入设备.输出设备),这套理论被称为冯·

2019-2020-20191201《信息安全专业导论》第4周学习总结

2019-2020-20191201<信息安全专业导论>第3周学习总结 教材学习内容总结 <计算机科学概论> 第4章:这一章我们认识了基础的门和电路,门负责执行基础的逻辑运算,并且门是由一个或多个晶体管创建的,电路则是一种门的组合,它可以把一个门的输出作为另一个门的输入. 第5章:这一章介绍了构成计算机的各个部件,比如冯诺伊曼体系结构.RAM和ROM,不同类型的触摸屏等等. <自学是门手艺> 第5章:5.6节主要讲解的是有序容器的相关知识,字符串是有序容器的一种,怎么处