操作系统理论

操作系统理论:        1. 操作系统是什么?            操作系统是一个协调\管理\控制计算机硬件资源与应用软件资源的一段控制程序            有两大功能:                1. 将复杂的硬件操作封装成简单的接口给应用程序或者用户去使用                2. 将多个进程对硬件的竞争变得有序

    操作系统发展史        并发: 多个任务看起来是同时运行的        串行:一个任务完完整整地运行完毕,才能运行下一个任务

        多道技术:(复用=>共享/共用)            1. 空间上的复用:多个任务复用内存空间            2. 时间上的复用:多个任务复用cpu的时间                1. 一个任务占用cpu时间过长会被操作系统强行剥夺走cpu的执行权限:比起串行执行反而会降低效率                2. 一个任务遇到io操作也会被操作系统强行剥夺走cpu的执行权限:比起串行执行可以提升效率

原文地址:https://www.cnblogs.com/zhouhao123/p/11253700.html

时间: 2024-10-14 11:54:12

操作系统理论的相关文章

[操作系统理论] 2, 系统调用的实现

一, 操作系统的保护机制 1, 直观的想法 假设有一个系统调用whoami(), 这个系统调用的功能是显示出当前计算机的所有者. 假设这台计算机是我的, 那么在操作系统的内核部分的内存中的某一个地方存放着我的名字: "aixiangfei", 假设这个内存的地址是100. 对于whoami()的实现, 最直观的想法就是: 直接把地址100处的字符串复制过来, 然后打印到到屏幕上. 如果真的是这种实现方法, 那么这个操作系统是非常不安全的! 比如说: 我们的密码肯定也是被保存在了操作系统

操作系统理论与多道技术

什么是操作系统 操作系统是一个协调,控制,管理计算机硬件与软件的控制程序. 细说的话,操作系统应该分成两部分功能: #一:隐藏了丑陋的硬件调用接口,为应用程序员提供调用硬件资源的更好,更简单,更清晰的模型(系统调用接口). 应用程序员有了这些接口后,就不用再考虑操作硬件的细节,专心开发自己的应用程序即可. 例如:操作系统提供了文件这个抽象概念,对文件的操作就是对磁盘的操作, 有了文件我们无需再去考虑关于磁盘的读写控制(比如控制磁盘转动,移动磁头读写数据等细节), #二:将应用程序对硬件资源的竞态

4月23日 python学习总结 套接字UDP和 操作系统理论,多道理论

一.套接字UDP udp是无链接的,先启动哪一端都不会报错 UDP(user datagram protocol,用户数据报协议)是无连接的,面向消息的,提供高效率服务.不会使用块的合并优化算法,, 由于UDP支持的是一对多的模式,所以接收端的skbuff(套接字缓冲区)采用了链式结构来记录每一个到达的UDP包,在每个UDP包中就有了消息头(消息来源地址,端口等信息),这样,对于接收端来说,就容易进行区分处理了. 即面向消息的通信是有消息保护边界的.   服务器 #服务器 ss = socket

[操作系统理论] 1, 操作系统的启动

一, 执行BIOS程序 x86 PC刚开机的时候, CPU处于实模式, 实模式和保护模式相对应, 实模式的寻址是cs:ip (CS左移4位+ip). 开机时, cs=0xFFFF, ip=0x0000, 也就是说cpu从0xFFFF0地址处开始执行, 但是我们发现0xFFFF0这个地址距离0xFFFFF只有16个字节, 这16个字节并不能做什么事情, 所以在0xFFFF0处的指令是一个跳转指令 jmp far f000:e05b 跳转到对应的地址处执行. 这里的代码具体的任务是检查硬件, 如RA

Linux内核学习总结

李泽源 原创作品 转载请注明出处 <Linux内核分析>MOOC课程:http://mooc.study.163.com/course/USTC-1000029000 [Linux内核学习总结] 幸福来得很突然,这门课就快结束了…… 是时候,总结下这段时间的坚持了,也给同样对Linux内核有兴趣的你一个指南. 在这门课的学习过程中,按照老师的要求,每次课后都写一篇博文,这是一个很好的学习方式.每当写这些文章的时候,总是要多看几遍视频,再查查相关的资料,才能勉强凑成一个完整的文档:同时也把自己学

Linux系统的理解及学习Linux内核的心得

作业列表      linux内核分析作业:以一简单C程序为例,分析汇编代码理解计算机如何工作 linux内核分析作业:操作系统是如何工作的进行:完成一个简单的时间片轮转多道程序内核代码 linux内核分析作业3:跟踪分析Linux内核的启动过程 linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 linux内核分析作业5:分析system_call中断处理过程 linux内核分析作业6:分析Linux内核创建一个新进程的过程 Linux内核分析作业7:L

UNIX/Linux下C语言的学习路线

一.工具篇 “公欲善其事,必先利其器”.编程是一门实践性很强的工作,在你以后的学习或工作中,你将常常会与以下工具打交道, 下面列出学习C语言编程常常用到的软件和工具. 1.操作系统    在UNIX或Linux系统中学习C很方便,所以在开始您的学习旅程前请先选择一个UNIX或Linux操作系统,目前可供个人免费使用的UNIX或Linux系统有FreeBSD.RedHat Linux.SUSE Linux等,而且在安装包中还提供很多实用的工具,如:gcc, make等. 如果您一直使用Window

linux 性能篇 -- top用法

#top 输出: c:  切换显示命令名称和完整命令行. 显示完整的命令. 这个功能很有用. M : 根据驻留内存大小进行排序. P:根据CPU使用百分比大小进行排序. [[email protected] log]# top top - 14:06:23 up 70 days, 16:44,  2 users,  load average: 1.25, 1.32, 1.35 Tasks: 206 total,   1 running, 205 sleeping,   0 stopped,   

实验一、熟悉DOS命令

实验一.熟悉DOS命令 专业:网工1401      姓名:卓奕源      学号:201406114311 一. 实验目的 1.从操作系统理论的观点来了解和掌握DOS有关用户接口的特点: 2.熟悉常用DOS操作命令(md.cd.rd.copy.move.del.deltree.type等DOS命令): 3.学会建立和使用简单的批处理文件: 二. 实验环境 基于MS—DOS环境 (注:MS-DOS是Microsoft公司20世纪80年代初推出的单用户单任务操作系统,由于性能和移植性较好,使用非常