手机建网站制作,合肥做网站好的公司哪家好,网页设计推荐,广州网站建设信科公司一、背景
1.没有被打开的文件都在磁盘上 --- 磁盘级文件
2.对磁盘级别的文件#xff0c;我们的侧重点
单个文件角度 -- 这个文件在哪里#xff0c;有多大#xff0c;其他属性是什么#xff1f;
站在系统角度 -- 一共有多少文件#xff1f;各自属性在哪里#xff1f…一、背景
1.没有被打开的文件都在磁盘上 --- 磁盘级文件
2.对磁盘级别的文件我们的侧重点
单个文件角度 -- 这个文件在哪里有多大其他属性是什么
站在系统角度 -- 一共有多少文件各自属性在哪里如何快速找到可以存储多少个文件如何快速找到指定文件如何对此磁盘文件进行分门别类的存储用来支持更好的存取
3.磁盘文件
磁盘是一个外设 还是计算机上唯一的一个机械设备
4.磁盘结构
磁盘盘片、磁头、伺服系统、音圈马达....
5.磁盘的存储结构
如何找到一个扇区 CHS寻址 1.在哪一个面上 2.在哪一个磁道上柱面 3.在哪一个扇区上
我们有了CHS能找到任意一个扇区那么所有的扇区我们就都能找到了。 二、inode
如何找到文件找到了inode编号 - 分区特定的Bg - inode - 文件属性 - 文件内容
linux中inode属性里面没有文件名这种说法。
知识提及
1.一个目录下可以保存很多文件但是这些文件没有重复的文件名
2.目录是文件 - 目录需要自己的inode有自己的Data block data block存 文件名和inode的映射关系。文件名和inode 互为key值 创建文件系统做了什么 删除文件系统做了什么 查看文件系统做了什么 inode是固定的datablock是固定的 三、软硬链接 unlink 解除链接相当于删除 软硬链接有什么本质区别有无独立的inode。
软链接有自己独立的inode - 软连接是一个独立的文件
硬链接无自己独立的inode - 硬链接不是一个独立的文件 1.软链接 1 特性软连接的文件内容是指向的文件对应的路径 2 应用相当于快捷方式
2.硬链接 1 特性创建硬链接不意味创建新文件。就是在指定的目录下建立了 文件名 和 指定inode 的映射关系。
默认创建目录引用计数硬链接为什么是呢 是因为 自己目录名inode 自己目录内部. idnoe 。都有对应。 acm 文件的三个时间
Access 最后访问时间
Modify 文件内容最后修改时间
Change 属性最后修改时间 四、动静态库 1.如何编写库编写库的角度
1 静态库.a
1 编写静态库 这是头文件都没有使用了共享库为了省事所以添加了-shared选项就能编译通过形成可执行文件。 这个libhello.a就是静态库
注argnu归档文件r替换 ccreate库名前面必须是lib静态库后缀必须是.a
那么如何发布库呢这是Makefile
2 发布静态库 形成了hello的目录文件内容如下图 接下来就可以把这个静态库发布给别人了
头文件gcc的默认搜索路径是 /usr/include
库文件的默认搜索路径是 /lib64 方法一拷贝到系统路径下。但是不太建议第三方库拷贝到系统默认路径下会造成污染 自己所写的库是第三方库要标注这个第三方库才能编译通过 我们拷贝库到系统的默认路径下就叫做库的安装。
方法二相对路径 -I(大i) 头文件搜索路径 -L 库文件搜索路径 -l(小L) 在特定的路径下使用哪一个库
2.动态库.so
1 制作动态库 由于库内容与静态库重合前面提及此处不在论。
2 发布动态库 如果只有静态库gcc只能采用静态库
如果动静态库同时存在gcc默认是采用动态库的 而我们想要使用静态库时只需编译时后面加上 -static就行。 3 给动态库导环境变量
1.内存级的导入环境变量 退出就会没有 LD_BIBRARY_PATH : 是导引库的环境变量
2.修改配置文件
是一个永久方案。 打开vim后把动态库文件的路径粘贴进去就行。
最后在 sudo ldconfig更新让配置的文件生效
解除的话删掉这个文件就好了然后再更新
3.软链接 解除软链接 4.写登录脚本
...(大部分都是去搞环境变量)
vim .bashrc
而.bashrc是通过.bash_profile中调用的这里面也可以导环境变量。