计算机启动

  • 启动自检
  • 初始化启动
  • 启动加载
  • 内核装载
  • 登录

中断

  • 硬件中断

    • I/O设备
    • CPU
      • Timer:时间片结束后,发中断给CPU
      • Scheduler:将CPU合理分配任务使用
  • 异常中断
    • 内存:使多任务共享内存资源
  • 软件中断
    • 内核态:操作系统运行的状态
    • 用户态:用户程序运行的状态(必须通过操作系统访问硬件)
    • 状态寄存器:位于CPU内,获取当前进程状态,通过int指令将用户态变为内核态
    • 系统调用函数:操作系统中用于控制硬件的函数,运行在内核态。CPU运行到系统调用函数时执行int指令,产生软件中断唤醒操作系统,执行函数内容,结束后返回用户态

多运行环境管理

  • 进程:操作系统为可执行程序提供的运行环境。包括代码段、数据段、栈、堆、BSS段、PCB等
  • 三状态模型
    • 运行态:进程在CPU上运行时
    • 就绪态:可被CPU运行时
    • 阻塞态:等待某事件发生时

  • 进程调度:动态地把CPU分配给出于就绪序列中的进程。策略有先来先服务,短任务优先等

文件系统

  • 文件类型:普通文件、目录文件、块设备文件、字符设备文件
  • 树结构
    • 绝对路径:从根到目标文件的完整路径
    • 相对路径:从当前目录到目标文件的路径

参考:

操作系统公开课(清华大学)

http://www.xuetangx.com/courses/course-v1:TsinghuaX+30240243X+sp/about

http://os.cs.tsinghua.edu.cn/oscourse/OS2019spring

Operating Systems: Three Easy Pieces

http://pages.cs.wisc.edu/~remzi/OSTEP/

Linux中断(interrupt)子系统之一:中断系统基本原理

https://blog.csdn.net/DroidPhone/article/details/7445825

Linux C编程一站式学习

http://docs.linuxtone.org/ebooks/C&CPP/c/

设计64位操作系统

https://zhuanlan.zhihu.com/p/86475224

Linux IO 模型

https://zhuanlan.zhihu.com/p/113467811

阻塞/非阻塞/同步/异步

https://www.zhihu.com/question/19732473/answer/20851256

[OS] 概述&学习资料的更多相关文章

  1. os x 10.10 測试版系统下载 swift语言学习资料下载

    http://pan.baidu.com/s/1eQ5oj1S               这是下载地址 ! 刚学完oc 就出了 swift!这----  只是还是非常高兴看了一点swith得东西感觉 ...

  2. webapi的学习资料

    猿教程_-webapi教程-WebAPI教程 猿教程_-webapi教程-Web API概述 猿教程_-webapi教程-新建Web Api项目 猿教程_-webapi教程-测试Web API 猿教程 ...

  3. 【转】iOS超全开源框架、项目和学习资料汇总

    iOS超全开源框架.项目和学习资料汇总(1)UI篇iOS超全开源框架.项目和学习资料汇总(2)动画篇iOS超全开源框架.项目和学习资料汇总(3)网络和Model篇iOS超全开源框架.项目和学习资料汇总 ...

  4. iOS学习资料整理

    视频教程(英文) 视频 简介 Developing iOS 7 Apps for iPhone and iPad 斯坦福开放教程之一, 课程主要讲解了一些 iOS 开发工具和 API 以及 iOS S ...

  5. iOS 学习资料汇总

    (适合初学者入门) 本文资料来源于GitHub 一.视频教程(英文) Developing iOS 7 Apps for iPhone and iPad斯坦福开放教程之一, 课程主要讲解了一些 iOS ...

  6. Wmyskxz文章目录导航附Java精品学习资料

    前言:这段时间一直在准备校招的东西,所以一晃眼都好长时间没更新了,这段时间准备的稍微好那么一点点,还是觉得准备归准备,该有的学习节奏还是要有..趁着复习的空隙来整理整理自己写过的文章吧..好多加了微信 ...

  7. 这月薪过万的Java高级学习资料,难得一遇的干货,不下载真可惜了!

    大家有没有想我呢 不管你们想不想我 我挺想你们的 通过昨天我不断的 死气白咧各种说好话 最终 要到了Java学科的Java集合学习资料 里面包含视频+资料+源码 堂兄也有一个愿望 希望你们月薪过万后 ...

  8. 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)(1)

    原文:http://developer.51cto.com/art/201501/464174.htm 编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定 ...

  9. 【我的Android进阶之旅】Realm数据库学习资料汇总(持续更新)

    介绍 realm是一个跨平台移动数据库引擎,支持iOS.OS X(Objective-C和Swift)以及Android. 2014年7月发布.由YCombinator孵化的创业团队历时几年打造,是第 ...

随机推荐

  1. C语言之通讯录的模拟实现

    C语言之通讯录的模拟实现 在C语言学习结束之际,谨以此篇文章来对C语言的学习告一段落. 纲要: 通讯录的静态版本 通讯录的动态版本 通讯录的带文件版本 因为三种实现方法除了储存形式不同,其他都基本相同 ...

  2. 使用SignalR ASP.NET Core来简单实现一个后台实时推送数据给Echarts展示图表的功能

    什么是 SignalR ASP.NET Core ASP.NET Core SignalR 是一种开放源代码库,可简化将实时 web 功能添加到应用程序的功能. 实时 web 功能使服务器端代码可以立 ...

  3. windows2003配置IIS

    这里采用的是vmbox虚拟机 用这个加载光驱, 使其加载Windows2003的安装镜像 挂载后根据下列操作 点击下一步等加载,加载到这个界面即可 在这里选择应用程序服务器(iis.asp.net), ...

  4. java面试一日一题:请讲下对mysql的理解

    问题:请讲下对mysql的理解 分析:该问题主要考察对mysql的理解,基本概念及sql的执行流程 回答要点: 主要从以下几点去考虑, 1.mysql的整体架构? 2.mysql中每一个组件的作用? ...

  5. adb下载安装

    下载地址:https://www.androiddevtools.cn/# 首页tab工具栏: 选择Android SDK工具-- SDK Tools 下载任一版本即可 安装 :将下载的安装包解压到D ...

  6. Salesforce学习之路(三)利用VS Code结合Git开发Salesforce

    在前面说了一些有关Admin的知识,但实际开发运用中,仅凭Admin的配置很难满足项目的定制化需求,因此基于CRM的二次开发则应运而生. 由于国内资料相对较少,所以很多入门新手无处下手,那这里就简单介 ...

  7. mysql索引性能验证,高性能的索引策略

    索引性能验证 1.无索引列的查询 在where条件中查询没有添加索引的列,性能会比较差.我们可以先在sqlyog中打开表t_user的数据,然后复制一个名字出来进行查询. /*无索引列的查询,索引不会 ...

  8. Java获取多线程执行结果方式的归纳与总结

    在日常的项目开发中,我们会经常遇到通过多线程执行程序并需要返回执行结果的场景,下面我们就对获取多线程返回结果的几种方式进行一下归纳,并进行简要的分析与总结. 一.Thread.join 在一些简单的应 ...

  9. spring boot @Schedule 如何定时请求任务

    spring boot 定时任务,添加两个注解即可: 1,启动类添加:@EnableScheduling 2,方法上添加注解:@Scheduled(cron = "0/5 * * * * ? ...

  10. sublime常用快键键

    ---------------最常用的1.新建文件-输入"html:xt"后  按"Ctrl+E键"或 "tab键" ,可快速生成xhtml ...