操作系统|day4.Linux、Linux内核、Linux负载、Linux文件存储

文章目录

Linux

Linux内核

定义

内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。

功能

  1. 内存管理

追踪记录有多少内存存储了什么以及存储在哪里

  1. 进程管理

确定哪些进程可以使用中央处理器(CPU)、何时使用以及持续多长时间

  1. 设备驱动程序

充当硬件与进程之间的调解程序/解释程序

  1. 系统调用和安全防护

从流程接受服务请求

  1. 内核态

内核态其实从本质上说就是内核,它是一种特殊的软件程序,控制计算机的硬件资源,例如协调CPU资源,分配内存资源,并且提供稳定的环境供应用程序运行。

系统调用:

系统调用是操作系统的最小功能单位。根据不同的应用场景,不同的Linux发行版本提供的系统调用数量也不尽相同,大致在240-350之间。这些系统调用组成了用户态跟内核态交互的基本接口。

  1. 用户态

用户态就是提供应用程序运行的空间,为了使应用程序访问到内核管理的资源例如CPU,内存,I/O。内核必须提供一组通用的访问接口,这些接口就叫系统调用。(用户态调用内核态的接口)

用户态到内核态切换

  1. 系统调用:

系统调用本身就是中断,但是是软件中断,跟硬中断不同。

  1. 异常

如果当前进程运行在用户态,如果这个时候发生了异常事件,就会触发切换。例如:缺页异常(中断)。

  1. 外设中断

当外设完成用户的请求时,会向CPU发送中断信号。

总的来说都是中断

Linux负载

定义

负载(load)是linux机器的一个重要指标,直观了反应了机器当前的状态。

系统的负载采用的是指数移动平均

Linux文件存储

链接

分类
  1. 软链接

软链接相当于建立了一个新的快捷方式文件,该文件有自己的名称和inode以及物理存储的文件数据,文件数据里记录着如何跳转的设置数据,访问该快捷文件会被重新定向到原始文件,删除原始文件,软链文件失效;

  1. 硬链接

硬链接相当于为当前文件名对应的文件再建立了一个文件别名,别名对应的inode以及物理数据都是一样的,一旦建立,我们甚至根本无法区分谁是原始文件的原始名称,删除文件的其中一个名称,文件不会丢失,除非把所有的名称都删除。

图示

区别
  1. 软链接可以为文件和目录(哪怕是不存在的)创建链接;硬链接只能为文件创建链接。
  2. 软链接可以跨文件系统;硬链接必须是同一个文件系统
  3. 硬链接因为只是文件的一个别名,所以不重复占用内存;软链接因为只是一个访问文件的快捷方式文件,文件内只包含快捷指向信息,所以占用很小的内存。
  4. 软链接的文件权限和源文件可以不一样;硬链接文件权限肯定是一样的,因为他们本来就是一个文件的不同名称而已。
使用场景

一般比较重要的文件我们担心文件被误删除且传统复制备份方式占用double数量的空间会造成浪费,可以使用硬链做备份来解决;

软链接一般被用来设置可执行文件的快捷方式的路径。

inode: inode是文件系统中存储文件元信息的区域,中文叫节点索引,每个节点索引包含了文件的创建者,大小,日期等等。可以通过ls -i file 命令查看inode的值。

拷贝

  1. 浅拷贝

浅拷贝只是对指针的拷贝,拷贝后两个指针指向同一个内存空间;

  1. 深拷贝

深拷贝不断对指针进行拷贝,而且对指针指向的内容进行拷贝,经深拷贝后的指针是指向两个不同的地址空间。(相当于复制文件)

相关推荐
隔振消音专家8 分钟前
冷水机组振动传导影响及专业化减振适配治理方案
大数据·运维
Brilliantwxx10 分钟前
【Linux】 软件包管理器(yum)+ Vim使用
linux·运维·服务器·开发语言·编辑器·vim
skywalk816314 分钟前
在FreeBSD的Uubntu兼容环境下安装Reasonix
linux·运维·freebsd
^yi29 分钟前
【Linux系统编程】对操作系统的理解
linux·运维·服务器·操作系统·系统调用·os
Kina_C1 小时前
LVS-NAT 负载均衡实验从环境搭建到规则持久化
linux·运维·服务器·负载均衡·lvs
小肝一下1 小时前
7. 库制作与原理
linux·c语言·操作系统·bash·shell·动静态库
Android洋芋1 小时前
PrintFriendly网页文章转PDF插件工具及技术分析
运维·服务器·pdf·网页转pdf
Elastic 中国社区官方博客1 小时前
使用重新设计的 AutoOps 更快地进行 Elasticsearch 问题排查
大数据·运维·前端·人工智能·elasticsearch·搜索引擎·全文检索
RoboWizard1 小时前
金士顿高速闪存盘 单双接口适配多元存储需求
大数据·运维·人工智能·智能手机·云计算
hkj88082 小时前
Ubuntu 20.04 安装 OpenJDK 17
linux·运维·ubuntu