当前位置: 首页 > news >正文

建了个网站百度上会有么seo搜索引擎优化教程

建了个网站百度上会有么,seo搜索引擎优化教程,在哪些网站可以做毕业设计,美食怎么做的小视频网站1.前言 文件 内容属性 文件分为被打开的文件(跟基础IO有关,在内存上)和没有被打开的文件(在磁盘上)。 在磁盘上找没有被打开的文件属于文件系统的工作 2.对硬件的理解 2.1 磁盘,服务器,机柜,机房 1.磁…

1.前言

文件 = 内容+属性

文件分为被打开的文件(跟基础IO有关,在内存上)和没有被打开的文件(在磁盘上)。

在磁盘上找没有被打开的文件属于文件系统的工作

2.对硬件的理解

    2.1 磁盘,服务器,机柜,机房

1.磁盘属于外设,有着容量大,价格低的,速度慢等特点属于机械设备。

2.服务器是专门用于处理网络请求、存储和传输数据的高性能计算机。它是互联网服务的核心设备,支撑着各种在线应用与服务的运行。

3.机柜是专为存储计算机及相关控制设备而设计的设备,它提供了一个物理环境来保护这些硬件免受灰尘、水汽等环境因素的侵害。同时,机柜通过标准化的安装架和内部布局,确保服务器等硬件设备能够有序排列,从而便于文件系统的管理和数据的存储与访问。

4.机房是存放服务器、存储设备及其它关键信息系统硬件的物理空间。机房确保了数据存储、备份与恢复所需的高可靠性硬件环境得以维护。

     2.2 磁盘的物理结构

    2.3 磁盘的存储结构 

扇区:磁盘存储数据的基本单位,512字节,块设备 

磁盘容量 = 磁头数*磁道数*每道扇区数*每扇区字节数

如何定位一个扇区?

 1.可以先定位磁头

 2.确定磁头要访问哪一个磁道

 3.定位一个扇区

磁盘的数据存储在扇区上,根据柱面,磁头,扇区这三个部分就可以定位数据了,这就是数据定位的方式之一:CHS寻址方式

(CHS寻址方式支持的磁盘容量大约8.4G)

fdisk -l 指令介绍:用于列出指定磁盘或所有磁盘上的分区表信息。

 2.4 磁盘的逻辑结构

       2.4.1 理解过程

把磁盘想象成卷在一起的磁带,把磁盘拉直后可以得的存储结构类似下图:

 

每一个扇区都有了相应的线性地址(即数组下标),这就叫做LBA

 

       2.4.2 具体过程 

柱面是一个逻辑上的概念,其实就是每一面由相同半径的磁道逻辑上构成柱面 

磁道的展开:

柱面的展开:

整个磁盘的展开:

 

由C/C++的基础可知,这些都可以看成是一维数组:

每一个扇区都有下标,我们称之为LBA地址。

2.4.3 CHS和LBA地址

CHS随着时代的发展变得没那么实用,但在旧的硬件或特定的应用场景还有一定程度的用处

LBA地址通常被现代操作系统和磁盘驱动程序使用,因为它们提供了更高效、更简单的磁盘访问方式

所以在大多数情况下磁盘使用者直接使用LBA地址,而CHS地址和LBA地址间的转化通常由磁盘控制器和操作系统协同完成的。

以下是相关的转换方式了解即可:

3.引入文件系统

    3.1 块的概念

操作系统在读取硬盘数据的时候,为了追求效率,会一次连续读取多个扇区,即八个扇区组成一个块,块是文件存取的最小单位,块的单位一般是4KB.

块号=LBA/8;

LAB=块号*8+n(n是块内第几个扇区) 

    3.2 分区的概念

磁盘还可以被分成多个分区,按windows的观点来看就是一块磁盘被分为C,D,E盘,linux设备都是以文件的形式存在的,可以利用柱面的号码来进行分区(柱面是最小的分区单位) 

    3.3 inode的概念

在使用ls-l 命令的时候除了看见了文件的名字,还能看见文件元数据(属性)

每行的从左到右依次是:

模式,硬链接数,文件所有者,组,大小,最后修改时间,文件名 

除了ls -l获取文件的信息外还有stat命令能够看到更多的信息

用法:stat + 文件名

所谓的inode就是存储文件元信息的区域,中文译名为“索引节点”。

4.ext2 文件系统

    4.1 简单介绍

ext2文件系统将整个分区划分成多个同样大小的块组也就是Block Group(基本单位数为4KB),管理一个分区就能管理所有分区了,也就能管理所有磁盘文件

Linux中文件的内容和属性是分开存储的,内容存储在Data Blocks中,属性存储在inode Table中 

inode table 大小为4kb,故而会保留32个inode

为了区分不同的inode的,故而有inode编号,ls -li可以查看inode的编号,第一个就是

        4.2 位图(Bitmap)

      4.2.1 块位图(Block Bitmap)

 记录着Data Block中哪个数据块已经被占用,占用的置1,没占用的置0

      4.2.2 inode位图(inode Bitmap)

  每个bit表示一个inode是否空闲可用

      4.3 GDP(Group Descriptor Table)

块组描述符表,描述块组属性信息,整个分区分成多个块组就对应有多少个块组描述符,每个块组描述符存储一个块组的描述信息。

描述信息

1.块组内部结构的定位信息:

  • inode表(inode Table)的起始位置:指出在块组中从哪里开始是inode表。inode表存储了文件系统中所有文件的元数据(如文件类型、权限、大小、创建/修改/访问时间等)。
  • 数据块(Data Blocks)的起始位置:指出在块组中从哪里开始是数据块。数据块用于存储文件的数据内容。

2.块组资源的使用情况

  • 空闲inode的数量:记录当前块组中还有多少个inode未被使用。
  • 空闲数据块的数量:记录当前块组中还有多少个数据块未被占用。

     4.4 超级块(Super Block)

存放文件系统本身的结构信息,描述整个分区的文件系统信息。

  1. 文件系统的大小和块大小:超级块记录了整个文件系统的大小以及组成文件系统的基本单位——数据块的大小。

  2. inode表的信息:包括inode表的大小、位置以及空闲inode的数量等。inode是文件系统用于存储文件元数据(如文件名、文件大小、文件权限等)的数据结构,每个文件都有一个对应的inode。

  3. 块位图和空闲块列表:块位图记录了文件系统中各个数据块的占用情况,而空闲块列表则列出了当前可用的数据块。这些信息对于文件系统的空间管理和文件存储至关重要。

  4. 文件系统的状态信息:如最近一次的更新时间、文件系统的挂载次数等。这些信息有助于操作系统了解文件系统的当前状态,并进行相应的维护和管理。

  5. 其他关键参数:如标识文件系统类型的幻数、文件系统的修改标记等。这些参数对于操作系统的识别和访问文件系统至关重要

    4.5 i节点表(inode Table)

inode编号以分区为单位,整体划分,不可跨分区 

存放文件属性如大小,所有者之类的

当前分组所有inode属性的集合

    4.6 Data Block

Block号按照分区划分,不可跨分区

    4.7 目录,文件名和映射

在磁盘中没有目录的概念,只有文件属性+文件内容的概念,磁盘中的文件采用类似树形的结构保存的。

inode编号跟文件名有着映射的关系

   4.8 struct dentry

Linux中,在内核中维护树状路径结构的内核结构体叫做struct dentry

struct dentry {
atomic_t d_count;
unsigned int d_flags; /* protected by d_lock */
spinlock_t d_lock; /* per dentry lock */
struct inode * d_inode ; /* Where the name belongs to - NULL is
* negative */
/*
* The next three fields are touched by __d_lookup. Place them here
* so they all fit in a cache line.
*/
struct hlist_node d_hash ; /* lookup hash list */
struct dentry * d_parent ; /* parent directory */
struct qstr d_name ;
struct list_head d_lru ; /* LRU list */
/*
* d_child and d_rcu can share memory
*/
union {
struct list_head d_child ; /* child of parent list */
struct rcu_head d_rcu ;
} d_u;
struct list_head d_subdirs ; /* our children */
struct list_head d_alias ; /* inode alias list */
unsigned long d_time; /* used by d_revalidate */
struct dentry_operations * d_op ;
struct super_block * d_sb ; /* The root of the dentry tree */
void *d_fsdata; /* fs-specific data */
# ifdef CONFIG_PROFILING
struct dcookie_struct * d_cookie ; /* cookie, if any */
# endif
int d_mounted;
unsigned char d_iname[DNAME_INLINE_LEN_MIN]; /* small names */
};

1.每个文件都有对应的dentry结构,包括普通文件,这样被打开的文件,就可以在内存中形成整个树形结构

2.整个树形节点也同时隶属于Hash,方便快速查找

3.树形结构整体构成了Linux的路径缓存结构,打开访问任何文件,都得先在这颗树下根据路径进行查找,找到就返回属性inode和内容,没找到就从磁盘加载路径,添加dentry结构,缓存新路径

    4.9 挂载分区

      4.9.1 挂载的概念

定义:磁盘分区后,分区与目录连接在一起,方便用户对该分区进行访问和操作

作用:通过挂载,Linux系统能够识别和使用磁盘上的分区,从而实现对文件和数据的存储,读取和管理

     4.9.2 挂载的步骤

  1. 查看磁盘和分区:使用lsblkfdisk -l命令查看当前的磁盘和分区情况。
  2. 创建分区:使用分区工具(如fdiskgdisk)创建新的分区。对于MBR分区表,使用fdisk;对于GPT分区表,使用gdisk
  3. 格式化分区:创建分区后,需要对其进行格式化以创建文件系统。例如,使用mkfs命令创建ext4文件系统。
  4. 挂载分区:使用mount命令将分区挂载到指定的目录(挂载点)。例如,将/dev/sda1分区挂载到/mnt目录

      4.9.3 重要用处 

根据对挂载分区知识的了解,可以通过访问目标文件的“路径前缀”准确判断文件在哪一个分区

    5.软硬链接

      5.1 硬链接

创建格式: ln 原文件 目标文件

例:名为a.txt的文件,想让他生成一个b.txt的硬链接

硬链接本质上不是一个独立的文件,因为它没有独立的inode

本质上是一组新的文件名和目标文件inode number的映射关系

作用:对文件进行备份

(.代表当前目录,..代表上一目录)

硬链接只能给普通文件建立而不能给目录建立

         5.2 软链接

创建格式:ln-s 原文件或目录  目标文件或目录

软文件本质是一个独立的文件

作用:保存目标文件的路径(相当于windows下的快捷方式) 

http://www.mmbaike.com/news/26142.html

相关文章:

  • 如何做ps4游戏视频网站公司网站设计
  • b2c网站制作需要多少钱最火网站排名
  • 如何做静态网站百度一下搜索网页
  • 网站建设总结长沙网动网络科技有限公司
  • wordpress 存档页面长春seo代理
  • ps网站专题怎么做网站优化包括
  • 安卓开发流程seo管理与优化期末试题
  • 教修图的网站泰安网站制作推广
  • wordpress 大小搜索引擎优化的方式有哪些
  • 做章网站网站排名优化技巧
  • 做网站参考文献微博今日热搜榜
  • 网站备案背景布百度指数里的资讯指数是什么
  • 怎样写网站描述淘宝推广引流方法有哪些
  • 武汉做网站公司有哪些网站新网站seo外包
  • 使用阿里云做镜像网站蒙牛牛奶推广软文
  • 做茶叶网站的公司软文推广的100个范例
  • 网站可以给pdf做笔记seo优化技术排名
  • 网站做哪块简单排行榜软件
  • wordpress 国内不使用方法成都seo网站qq
  • excel小程序商店seo排名推广
  • 淘宝建设网站的目的是什么意思一个自己的网站
  • 网站建设作为怎么推广自己的网站
  • 链接关系 网站层次结构国家高新技术企业
  • 网站后台模板 jquery百度搜索网页版入口
  • 网站建设合同拟写电商热门关键词
  • 郑州家居网站建设服务公司沈阳seo排名外包
  • wordpress 域名映射百度信息流优化
  • 工业设计网站排行榜前十名有哪些宁波seo推广推荐公司
  • 全国住房与城乡建设部网站营销型网站名词解释
  • 深圳建设信息网站官网网络媒体推广报价