LinuxDown

LinuxDown.com
Linux系统下载网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

(Linux基础知识)Linux内核中的五大子系统CPU

2023年5月9日 115点热度

目录

Linux内核中的五大子系统

CPU:

①进程调度

②进程通讯

进程通讯的形式:管线(匿名管线、命令管线)、消息队列、信息、信号量、共享显存、socket(文件socket、网络socket)

③内存管理:显存

④网络插口:网路

⑤文件系统

共享显存:为了在多个进程之间交换讯号,内核专门留出一块显存区,可以由须要访问的进程将其映射到自己的私有地址空间(逻辑上觉得是自己的私有地址空间,其实物理上是内核预留出的显存空间)进程就可以直接读写这一块显存而不须要进行数据的拷贝永久免费linux服务器,因而大大提升了效率。

讯号量:是一个计数器(让分组好的一组先访问linux文件系统测试,另一个组后访问)(一个组形成日志,一个组消费日志)。用于多进程对共享数据的访问,讯号量的意图在于进程间的同步,为了获得共享显存。

文件系统知识点框架图如下所示:

1、文件系统的基本组成

文件系统是操作系统中负责管理持久数据的子系统,实际上,就是将用户的文件储存在c盘硬件中,虽然计算机断电了,c盘里的数据并不会遗失,所以文件系统就可以持久化的保存文件。

文件系统是管理文件和目录的一套机制(方式)。文件大小为2T,ext3:不超过2T;fat32:4G。

文件系统的基本数据单位是文件,它主要是对c盘里面的文件进行组织管理,组织的形式不同,产生的文件系统也会不同。

在Linux中,一切皆文件,除了普通的文件和目录,块设备、管道、socket等等,都是由文件系统管理的。在Linux中的文件系统会给每位文件分配两个数据结构:索引节点(indexnode)和目录项(directoryentry),它们都主要是被拿来记录文件的元信息和目录层次结构。

其中,目录也是文件,也是用索引节点惟一标示,和普通文件不同的是,普通文件在c盘上面保存着的是文件数据,而目录文件在c盘上面保存子目录或则文件。

1、目录和目录项分别指的是哪些?

目录是一个文件,它是被持久化的储存在c盘上面,而目录项是内核中的一个数据结构,缓存在显存上面。

假如查询目录都会频繁的从c盘读取,效率会很低,所以内核都会把早已读过的目录用目录项这个数据结构先缓存在显存上面,等到上次读取到相同的目录的时侯,就只须要从显存上面去读取,这样就大大提高了文件系统的效率。

2、文件数据是怎样储存在c盘空间的?

c盘读写的最小单位是磁道,磁道的大小只有512B的大小,怎么每次读写的时侯都是如此小的单位linux文件系统测试,会造成读写的效率十分低。

所以,文件系统就把多个磁道组成了一个逻辑块,每次读写的最下单位就是逻辑块(数据块),Linux中的逻辑块的每位块的大小为4KB,也就是一次性可以读取8个磁道,这将会大大提升了c盘的读写效率。

索引节点是储存在硬碟上的数据,为了加速文件的访问,一般会把索引节点加载到显存当中。

当c盘进行低格的时侯,会被分成三个储存区域,分别为超级块、索引节点、数据块区。

超级块:superblock,拿来储存文件系统的详尽信息,包括inode/block的总数、使用量、剩余量(块个数、块大小、空闲块等),以及文件系统的格式。

索引节点区:拿来储存索引节点。

数据块区:拿来储存文件或目录数据。

我们不可能把超级块和索引节点区全部加载到显存在,这样显存是撑不住的,所以只有当须要使用的时侯,才能将它加载进显存,它们加载步入显存的时机是不同的。

超级块:当文件系统挂载时步入显存当中;

索引节点区:当文件系统被访问时步入显存中。

2、常见文件系统的类型1、硬盘的文件系统:filesystem

xfs(主流)

ext4---centos6

ext3---centos5

2、网络文件系统

nfs:networkfilesystem

tfs:taobaofilesystem;天猫内部使用的专门拿来储存天猫的图片和文件的文件系统,分布式的

gfs:google储存搜索数据储存的文件系统。分布式

hdfs:Hadoopfilesystem

其中的ext4和xfs文件系统的区别:xfs的使用比ext4好。

xfs是一个全64-bit的文件系统,可以支持上百万T字节的储存空间。对于特大文件及小规格文件的支持都表现很出色,支持特大数目的目录。最大可支持的文件大小为263=9x1018=9exabytes,最大文件系统规格为18exabytes。

xfs支持大文件和大分区。读写文件速率快。

/boot:ext4:/boot分区原本就不大,文件都是小文件,启动的时侯,应当是ext4的驱动加载更推动速。

===扩充====

开机不自启服务

/etc/systemd/system/multi-user-target.wants把服务启动的配置联接文件删掉

systemctldisablefirewalld关掉防火墙

设置开机自启:

systemctlenablefirewalld

[root@localhost ~]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.

lsof-i:80查看端口占用情况

lsof-p1055查看当前进程打开了什么文件

lsof列列举当前系统所有的打开文件

查看cpu内核参数:cat/proc/cpuinfo

======

3、交换分区的文件系统:swap

[root@sc-fs software]# cat /proc/swaps
Filename				Type		Size	Used	Priority
/dev/dm-1                               partition	2097148	0	-2
[root@sc-fs software]# swapoff -a
[root@sc-fs software]# cat /proc/swaps
Filename				Type		Size	Used	Priority
[root@sc-fs software]# swapon -a
[root@sc-fs software]# cat /proc/swaps
Filename				Type		Size	Used	Priority
/dev/dm-1                               partition	2097148	0	-2

扩充和降低swap分区的大小:

[root@sc-fs software]# swapon /dev/sdd2
[root@sc-fs software]# cat /proc/swaps
Filename				Type		Size	Used	Priority
/dev/dm-1                               partition	2097148	0	-2
/dev/sdd2                               partition	10485756	0	-3
[root@sc-fs software]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1829         133        1424          10         271        1518
Swap:         12287           0       12287
[root@sc-fs software]# swapoff /dev/sdd2
[root@sc-fs software]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1829         126        1431          10         271        1525
Swap:          2047           0        2047

Linux文件系统精典分区方案:

1、标准分区:centos8精典方案:

/剩下的空间全备给根分区

/bootLinux上面储存的是启动、驱动以及grub文件。1000M左右--拿来储存启动系统所须要的文件,相当于Windows里的硬碟。

/swap交换分区,当化学显存不足(化学显存的2倍)的时侯,启动c盘上的交换分区来做显存使用(拿来临时储存数据)。通常不建议开启,由于会造成程序速率变慢。swap还存在c盘里面,把它错当成显存来使用。当显存不足的时侯,都会开启一片空间:swap,将c盘当作显存使用,swap速率会变慢。

/home单独的分区。

/lib上面储存好多库,好多服务的库。

/proc上面储存好多运行的进程、系统程序(proc/sys/vm:管理显存的),以进程号作为目录名

2、自定义方案:

/xfs剩下的空间

linux系统解压zip文件_linux系统解压rar文件_linux文件系统测试

/bootext41G不须要非常大的空间

swapswap化学显存的2倍

/mysql_datexfs200G专门储存数据库的数据的分区

①设置swap,哪些时侯触发swap分区的使用:当化学显存只剩30%的时侯才会启动swap交换分区

[root@localhost ~]# cd /proc/sys/vm    正在运行的sys系统vm与内存相关virtual memory虚拟内存
 [root@localhost vm]# cat swappiness  
30                             #当物理内存只剩30%的时候就会启动swap交换分区

更改设置为当化学显存耗尽的时侯启动交换分区。

[root@localhost vm]#  cat  swappiness#当物理内存用尽的时候启动交换分区
0  
[root@localhost dev]# cat /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).

/etc.sysctl.conf:储存的是内核参数。

[root@localhost etc]# cd /proc/sys
[root@localhost sys]# ls
abi  crypto  debug  dev  fs  kernel  net  user  vm

假如要更改上面的参数,就步入/etc/sysctl.conf文件加入以下:

net.ipv4.ip_forward = 10 路由转发  根据路径修改(修改的是/etc/prpc/sys/net/ipv4下的ip_forward)
vm.swappiness =10
[root@localhost vm]# sysctl -p   #####使修改的参数生效
net.ipv4.ip_forward = 10
vm.swappiness = 10
[root@localhost vm]# cat swappiness   ###查看是否生效
10

临时关掉:c盘被自动挂载以后都必须把挂载信息写入/etc/fstab这个文件中,否则上次开机启动时依然须要重新挂载。

[root@localhost vm]# cat /etc/fstab
[root@localhost vm]# free -m # swap处于开启状态
total used free shared buff/cache available
Mem: 972 196 583 7 192 601
Swap: 2047 0 2047

[root@localhost vm]# cat /etc/fstab
............
/dev/mapper/centos-root / xfs defaults 0 0
UUID=0615b8e8-3e85-45eb-9b7d-4f7e08a00eac /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
UUID=e0b23637-b723-4680-8d8c-a6f4238095e8 /mount xfs defaults 0 0
UUID=f9acf10e-e259-4995-8526-93270f658d96 /mount1 xfs defaults 0 0
UUID=8ecd11ac-a55e-4709-9a0d-19da5207f1bb /mount2 xfs defaults 0 0
UUID=7d44e927-00d2-43b6-823a-89d9e6e30478 /mount1/hyrz ext4 defaults 0 0
UUID=96da6031-ac65-4754-8453-56c8d4c21959 /mount2/hzw ext4 defaults 0 0

使用swapoff命令;进行关掉swap交换分区。

[root@localhost vm]# swapoff /dev/mapper/centos-swap
[root@localhost vm]# free -m 查看是否被关闭
total used free shared buff/cache available
Mem: 972 195 584 7 192 602
Swap: 0 0 0

swapon-a:开启swap

[root@localhost vm]# swapon -a   
[root@localhost vm]# free -m
              total        used        free      shared  buff/cache   available
Mem:            972         196         583           7         192         601
Swap:          2047           0        2047

永久关掉:可以更改配置文件:/etc/fstab,将上面的/dev/mapper/centos

swapswapswapdefaults00:swap行注释掉。

[root@localhost vm]# vim /etc/fstab
[root@localhost vm]# free -m   查看是否被关闭
              total        used        free      shared  buff/cache   available
Mem:            972         194         584           7         192         602
Swap:             0           0           0

4、临时文件系统:tmpfs:显存5、iso9660:光碟中

须要提早将光碟装入到硬盘当中。

6、虚拟的文件系统层VFS1、什么是虚拟文件系统VFS

文件系统的种类好多,而操作系统为了实现对用户提供一个统一的插口,于是在用户层与为文件系统层引入了中间层,这个中间层就被称为虚拟文件系统。

VFS定义了一组所有文件系统都支持的数据结构和标准插口,这样程序员不须要了解文件系统的工作原理,只须要了解VFS提供的统一插口就可。

虚拟文件系统在文件系统挂载以后,将文件系统的一些元数据加载到显存中,虚拟文件系统只存在于显存中,VFS作用就是屏蔽给各种文件系统的差别,给用户、应用程序一个统一的插口。

2、虚拟文件系统使用的方法?

VFS描述文件系统使用的是超级块和inode的形式。

在文件系统挂载以后,将文件系统Linux可以同时支持多种文件系统。我们接触到的虚拟文件系统,VFS。虚拟文件系统有的超级块真实文件也有,只是有差别。

在Linux文件系统中,用户空间、系统调用、虚拟机文件系统、缓存、文件系统以及储存之间的关系为:

3、VFS主要定义了四种对象类型

1、超级块对象:superblock

2、记录文件系统的总体信息:inode数目、block数目

3、索引节点:inode,上面包含了文件的元信息、字节数、所属主和组、权限、修改、创建时间、block的位置、文件对象file、目录项对象dentry、filenameinode号。

c盘文件系统低格之初,都会将c盘大体上分为两个部份,一个储存inode索引的,一个储存数据的inode实在文件系统初始化之初就早已存在的。

先去调用虚拟文件中的superblock,记录了文件系统中的superblock,之后导出到真实的文件系统中,ext4和xfs两种文件类型中都有自己的superblock。

Superblock backups stored on blocks:   #3#backups   superblock的备份
	32768, 98304, 163840, 229376, 294912
[root@localhost vm]# dumpe2fs /dev/sdc4

c盘进行低格以后分为两个区:一块储存文件元数据的:inode;一块储存真正的数据:block。

查看超级块内容:

查看ext4文件系统信息:

[root@nginx-filebeat-01 ~]# dumpe2fs /dev/sdb2|more

查看xfs文件系统信息:

[root@nginx-filebeat-01 ~]# xfs_info /data

查看文件信息:stata.tx

4、磁盘、硬盘解读

linux系统解压zip文件_linux文件系统测试_linux系统解压rar文件

diskc盘,c盘和硬碟有哪些区别?还有硬盘、移动硬碟?

1、主体不同:

①磁盘:借助磁记录技术储存数据的储存器。

②硬盘:是计算机最主要的储存设备。

2、范围不同:

①磁盘:是计算机主要的储存介质,包括软驱和硬碟。

②硬盘:属于c盘的一种,采用温彻斯特式结构。

3、发展不同:

①磁盘:软驱早已被淘汰,c盘也正在别固态硬碟所替代。

②发展为固态硬碟跟机械硬碟相结合。

硬碟的分类:

固态硬碟:类似于c盘、ssd固态硬碟(价钱贵)、读写速率快、本质是半导体储存、抗震、大容量小。

ssd固态硬碟就是把磁储存改为集成电路储存。集成电路储存即固态储存靠的是电路的扫描和开关作用将信息读出和写入,不存在机械动作。固态硬碟内主体虽然就是一块PCB板,而这块PCB板上最基本的配件就是控制芯片,缓存芯片和用于储存数据的闪存芯片。

机械硬碟:(类似于唱片机、触摸是振动的)、机械运转、价格实惠、本质是电磁储存、怕摔、大容量大。读写速率高于固态硬碟。

硬碟是c盘中的一种,软驱也是c盘。c盘就是通过磁性进行读写功能的设备,断电后保存的文件不会遗失。显存也可以存储,但储存的载体和c盘不同,断电后就不能保存数据。

U盘也可以存储数据但也和c盘不同。

插口:硬碟插口是硬碟与主机系统之间的联接部件,作用就是在硬碟缓存和主机显存之间传输数据。不同硬件插口决定着硬件与计算机之间的联接速率,在整个系统中,硬碟插口的好坏直接影响着程序运行快慢和系统性能的优劣。

插口的分类:

c盘的化学概念:c盘的结构

逻辑上的概念:

5、磁盘的分区管理

1、主分区:可以引导操作系统linux格式化命令,基本c盘上可以构建一到四个主分区。

2、扩展分区:假如须要超过4个小时分区,就可以将剩余空间作为一个扩充分区。扩充分区会占用一个主分区的位置。

3、逻辑分区:扩充分区不能直接储存文件:须要再界定逻辑分区使用。

Linux上将硬碟、分区等设备都表示为文件。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: linux系统 信息存储 数据库分区 硬盘存储 硬盘类型
最后更新:2023年5月9日

Linux系统下载网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux系统下载网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
可用性对比Banshee的应用起来非常简单,你知道吗 解决Linux CPU高负载,8招搞定! 《鸡你太美》都没有对应歌词…… Linux设备驱动开发详解4:8个问题解决方案 嵌入式Linux系统的构建和管理方式发生了什么? 哪些电脑可安装Linux?十大特点解析! Linux服务器的优势是什么? 什么是分区讲解系统?安装linux系统的主要步骤对应的知识点 RedHat磁盘分区指南:规划磁盘信息 Linux操作系统的安装方法(42页珍藏版) Linux硬盘对拷技巧:详解与注意事项 编程语言驱动AI走出20世纪90年代的人工智能冬季 嵌入式Linux系统的开发环境是什么样的?? Linux编写.sh文件的技巧 linux支持asp吗 Linux是否支持ASP? Linux操作系统是个什么东西?喉咙的技术? Linux配置Go环境变量,8步搞定! 微软向20万名开发者集中展示人工智能 linux mysql 启动 Linux下MySQL启动与常见问题 基于POSIX和Unix的多线程和多cpu的操作系统
Linux文件自动补齐技巧可用性对比Banshee的应用起来非常简单,你知道吗轻松管理MySQL,这8个Linux工具必备Linux基础——远程访问及控制(OpenSSH服务端)Linux系统移植,嵌入式必备!最小化安装“图形化界面”有什么区别?(Linux基础知识)Linux内核中的五大子系统CPU玩转Linux用户空间MTD,享受高效闪存系统Linux搜索文件夹,快速找到你需要的!java编译后的文件加密保护防止反编译的工具Linux查看SSL版本,轻松掌握Linux基础知识:LINUX软件配置文件常见格式及应用程序发掘Linux系统潜力,提高生产力centos教程:解决CentOS7没有图形化界面,以及怎么安装魅族为何要推出Ubuntu手机?Linux日志监控软件,构建完善系统Linux安装必备:分区知识详解什么是GPG?GPG(GNUPrivacyGuard)使用非对称加密算法Linux如何指定复制文件?常用的Linux文件系统相关命令--清理文件的命令
(通讯技术)Linux内核使用命令makemenuconfig进入内核配置界面 轻松安装Redhat Linux 6.5:详细步骤分享 探究Linux系统各版本,从多角度分析! 深入了解Linux内核底层奥秘,掌握查看技巧 Redhat启动界面问题解决,畅享系统体验! 掌握 Linux 服务器监控,8个细节详解,不容错过! 轻松下载suse linux系统:最全命令大揭秘! Linux支持的文件系统类型及详细介绍 Linux服务器的优势是什么? Linux LVM扩容:简单易学 轻松掌握Linux系统基本命令大全,10个常用命令助你驾驭命令行 监控u盘格式化成什么格式好?和NTFS格式 linux怎么支持exfat格式Linux系统默认使用格式的各种硬盘 VMware10安装Linux,打造高效开发环境! 轻松掌握Linux系统版本号查询技巧 Linux文件系统变只读?解决方法在此! 企业Linux安全运维:10大分析实战经验 安全Linux首选:探秘安全狗Linux的优势和应用场景 Linux操作系统中最通用的全屏幕文本编辑器 Linux文件授权:让用户拥有更多权限
标签聚合
sudo 软件 命令模式 操作 文件目录 虚拟机 linux服务器 centos linux系统 电脑
书籍
课程
技术群
技术干货大合集↓
  • 2023年6月 / 16篇
  • 2023年5月 / 124篇
  • 2023年4月 / 115篇
  • 2023年3月 / 265篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 LinuxDown.com ALL RIGHTS RESERVED.

京ICP备14023444号-2