Marvel-Site Marvel-Site
首页
  • Java

    • Java基础
    • Java进阶
    • Java容器
    • Java并发编程
    • Java虚拟机
  • 计算机基础

    • 数据结构与算法
    • 计算机网络
    • 操作系统
    • Linux
  • 框架|中间件

    • Spring
    • MySQL
    • Redis
    • MQ
    • Zookeeper
    • Git
  • 架构

    • 分布式
    • 高并发
    • 高可用
    • 架构
  • 框架

    • React
    • 其他
  • 实用工具
  • 安装配置

    • Linux
    • Windows
    • Mac
  • 开发工具

    • IDEA
    • VsCode
  • 关于
  • 收藏
  • 草稿
  • 索引

    • 分类
    • 标签
    • 归档
GitHub (opens new window)

Marvel

吾必当乘此羽葆盖车
首页
  • Java

    • Java基础
    • Java进阶
    • Java容器
    • Java并发编程
    • Java虚拟机
  • 计算机基础

    • 数据结构与算法
    • 计算机网络
    • 操作系统
    • Linux
  • 框架|中间件

    • Spring
    • MySQL
    • Redis
    • MQ
    • Zookeeper
    • Git
  • 架构

    • 分布式
    • 高并发
    • 高可用
    • 架构
  • 框架

    • React
    • 其他
  • 实用工具
  • 安装配置

    • Linux
    • Windows
    • Mac
  • 开发工具

    • IDEA
    • VsCode
  • 关于
  • 收藏
  • 草稿
  • 索引

    • 分类
    • 标签
    • 归档
GitHub (opens new window)
  • Java

  • 计算机基础

    • 数据结构与算法

    • 计算机网络

    • 操作系统

      • 操作系统基本概念
        • 进程、线程、协程的区别
        • 进程间的通信方式
        • 操作系统常见问题
        • IO多路复用
      • Linux

    • 框架|中间件

    • 架构

    • 后端
    • 计算机基础
    • 操作系统
    Marvel
    2022-07-16
    目录

    操作系统基本概念

    # 操作系统基本概念

    # 什么是操作系统?

    1. 操作系统(Operating System,OS)是管理计算机硬件与软件资源的程序,是计算机的基石。
    2. 操作系统本质上是一个运行在计算机上的软件程序,用于管理计算机硬件和软件资源。举例:运行在电脑上的所有应用程序都是通过操作系统来调用系统内存以及磁盘等硬件。
    3. 操作系统存在屏蔽了硬件层的复杂性。操作系统就像是硬件使用的负责人,统筹着各种相关事项。
    4. 操作系统的内核(Kernel)是操作系统的核心部分,它负责系统的内存管理,硬件设备的管理,文件系统的管理以及应用程序的管理。内核是连接应用程序和硬件的桥梁,决定着系统的性能和稳定性。
    image-20220408141646600

    # 什么是系统调用?

    介绍系统调用之前,先了解一下用户态和系统态。

    根据进程访问资源的特点,我们可以把进程在系统上的运行分为两个级别:

    1. 用户态(user mode):用户态的进程可以直接读取用户程序的数据。
    2. 系统态(kernel mode):系统态运行的进程或程序几乎可以访问计算机的任何资源,不受限制。

    什么是系统调用呢?

    我们运行的程序基本都是运行在用户态,如果我们调用操作系统提供的系统态级别的子功能咋办呢?那就需要系统调用了。也就是说,我们运行的用户程序中,凡是系统态级别的资源有关的操作(如文件管理、进程控制、内存管理等),都必须通过系统调用方式向操作系统提出服务请求,并由操作系统代为完成。

    系统调用按功能大致分为:

    • 设备管理。完成设备的请求和释放,以及设备启动等功能。
    • 文件管理。完成文件的读、写、创建及删除等功能。
    • 进程控制。完成进程的创建、撤销、阻塞及唤醒等功能。
    • 进程通信。完成进程之间的消息传递或信号传递等功能。
    • 内存管理。完成内存的分配、回收以及获取作业占用内存大小及地址等功能。
    编辑 (opens new window)
    上次更新: 2023/08/20, 21:21:52
    计算机网络常见面试问题
    进程、线程、协程的区别

    ← 计算机网络常见面试问题 进程、线程、协程的区别→

    最近更新
    01
    位运算
    05-21
    02
    二叉树
    05-12
    03
    Spring三级缓存解决循环依赖
    03-25
    更多文章>
    Theme by Vdoing | Copyright © 2022-2024 Marvel
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式