<Linux>(极简关键、省时省力)《Linux操作系统原理分析》(1)

2023-11-09 11:04

本文主要是介绍<Linux>(极简关键、省时省力)《Linux操作系统原理分析》(1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Linux操作系统原理分析》(1)

  • 1 操作系统概述
    • 1.1 计算机系统
      • 1.1.1 硬件系统
      • 1.1.2 操作系统
      • 1.1.3 应用软件
    • 1.2 操作系统作用
    • 1.3 操作系统功能
    • 1.4 操作系统分类

1 操作系统概述

1.1 计算机系统

第三层应用程序
第二层操作系统
第一层硬件系统

计算机系统分为硬件系统、操作系统、系统应用软件三层。

1.1.1 硬件系统

  • 硬件系统由5 个部分构成:运算器、控制器、主存储器以及输入设备输出设备
  • 上层:操作系统。
  • 硬件层提供给操作系统的接口是机器的指令系统。
  • 操作系统的程序使用指令系统提供的机器指令所具有的功能,实现对硬件的直接管理和控制。

1.1.2 操作系统

  • 操作系统是靠近硬件的软件层。
  • 用户无需关注硬件和系统软件交互细节。
  • 操作系统常驻内存。
  • 提供:操作接口编成接口

1.1.3 应用软件

  • 包括系统应用软件和应用软件。
  • 系统应用软件是操作系统的延申,主要是语言处理程序和系统服务程序。
  • 为用户编制应用软件、加工和调试程序以及处理数据提供必要服务
  • 不常驻内存。
  • 应用软件序是计算机用户为了使用计算机完成某一特定工作,或者解决某一具体问题而编制的程序。

1.2 操作系统作用

  1. 屏蔽物理层。
  2. 管理系统资源,提高资源利用率。

1.3 操作系统功能

  1. 单道系统和多道系统:同时处理一个程序或同时处理多个程序。
  2. 具体功能
模块功能
处理机管理• 进程控制
• 进程调度
• 进程通信
• 进程同步与互斥
• 死锁 (dead lock)
存储器管理• 存储分配
• 地址映射
• 存储保护
• 内存扩充
• 内存共享
设备管理• 设备的分配
• 设备的管理和控制(设备驱动程序)
• 为用户使用设备提供统一的操作接口(只要指名设备,操作方式(读/写))
• 充分发挥设备和主机的并行工作能力(缓冲和虚拟技术)
文件管理• 文件的组织(可以有效地分配和回收文件的存贮空间,存取文件时准确地定位)
• 文件的保护和共享
• 文件的操作与用户的接口

1.4 操作系统分类

类别内容
批处理操作系统• 没有人机交互
• 自动地、按顺序逐个运行各个程序。
分时操作系统• 把处理机的时间分成若干小的时间片,把每个时间片轮流分配给各个程序。
• 可交互。
• 具有较强的交互会话能力
• 以人能就接受的程度来确定响应时间,通常是秒数量级;
实时操作系统• 一般是专用系统
• 应用程序是预先设计的,只能响应预先约定好的用户请求。
• 以控制过程或信息处理过程所能容忍的延迟来确定,通常是毫秒或微秒数量级。
其他操作系统通用操作系统:兼有实时、分时和批处理中的两种或三种处理能力
网络操作系统:实现网络通信与网络资源管理
分布式操作系统:由多个分散的计算机网络连接而成的统一的计算机系统
嵌入式操作系统:大多用于机电设备、仪器等上的专用控制方面,它大多采用微内核结构

这篇关于<Linux>(极简关键、省时省力)《Linux操作系统原理分析》(1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/375715

相关文章

慢sql提前分析预警和动态sql替换-Mybatis-SQL

《慢sql提前分析预警和动态sql替换-Mybatis-SQL》为防止慢SQL问题而开发的MyBatis组件,该组件能够在开发、测试阶段自动分析SQL语句,并在出现慢SQL问题时通过Ducc配置实现动... 目录背景解决思路开源方案调研设计方案详细设计使用方法1、引入依赖jar包2、配置组件XML3、核心配

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

windows和Linux使用命令行计算文件的MD5值

《windows和Linux使用命令行计算文件的MD5值》在Windows和Linux系统中,您可以使用命令行(终端或命令提示符)来计算文件的MD5值,文章介绍了在Windows和Linux/macO... 目录在Windows上:在linux或MACOS上:总结在Windows上:可以使用certuti

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

Java Spring 中 @PostConstruct 注解使用原理及常见场景

《JavaSpring中@PostConstruct注解使用原理及常见场景》在JavaSpring中,@PostConstruct注解是一个非常实用的功能,它允许开发者在Spring容器完全初... 目录一、@PostConstruct 注解概述二、@PostConstruct 注解的基本使用2.1 基本代

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Golang HashMap实现原理解析

《GolangHashMap实现原理解析》HashMap是一种基于哈希表实现的键值对存储结构,它通过哈希函数将键映射到数组的索引位置,支持高效的插入、查找和删除操作,:本文主要介绍GolangH... 目录HashMap是一种基于哈希表实现的键值对存储结构,它通过哈希函数将键映射到数组的索引位置,支持

Linux命令之firewalld的用法

《Linux命令之firewalld的用法》:本文主要介绍Linux命令之firewalld的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux命令之firewalld1、程序包2、启动firewalld3、配置文件4、firewalld规则定义的九大