目录

haproxy的内存管理中,通过pool_head->free_list,存储空闲内存块,free_list是个二级指针,却把空闲内存块都串了起来,没有用next,pre之类的指针。怎么实现的?着实思考了半个小时才明白。
pool_head结构:

软件操作命令

  1. 软件包管理器: yum
  2. 安装软件: yum install xxx
  3. 卸载软件: yum remove xxx
  4. 搜索软件: yum serach xxx
  5. 清理缓存: yum clear packages
  6. 列出已安装: yum list
  7. 软件包: yum info xxx
  • iptables相关
  • 单进程最大打开文件数限制
  • 内核TCP参数方面
  • 内核其他TCP参数说明
struct pool_head {
    void **free_list;   /* 空闲链表 */
    struct list list;   /* 双向链表,链接每种类型的内存池 */
    unsigned int used;  /* 使用了多少内存块 */
    unsigned int allocated; /* 分配了多少内存块 */
    unsigned int limit; /* 内存块上限 */
    unsigned int minavail;  /* 最少保留几个,回收时不会全部回收 */
    unsigned int size;  /* 内存块大小 */
    unsigned int flags; /* 能否共享,类型不同,但大小相同的,能否共享一个pool_head */
    unsigned int users; /* 内存池有几个使用者 */
    char name[12];      /* 内存池名称 */
};

服务器硬件资源和磁盘操作

  1. 内存: free -m
  2. 硬盘: df -h
  3. 负载: w/top(按q退出)
  4. 查看CPU: cat /proc/cpuinfo

可知,free_list是个二级指针,二级指针是指向指针的指针,对二级指针进行*操作,会得到一级指针指向的地址。

文件和文件夹操作命令

  1. 常见目录
根目录 家目录 临时目录 配置目录 用户程序目录
/ /home /tmp /etc /usr
  1. 文件操作基本命令
命令 解释 常见操作
ls 查看目录下的文件 ls -al
touch 新建文件 touch imooc
mkdir 新建文件夹 mkdir imooc_dir
cd 进入目录 cd /tmp
rm 删除文件和目录 rm -rf imooc
cp 复制 cp ./imooc.log /tmp/imooc.log2
mv 移动 mv ./imooc.log /tmp
pwd 显示路径
ps 用来显示当前进程的状态 ps -A 、 ps -ef|grep ssh
  1. 文件的权限
权限 数字
r 4
w 2
x 1

更改文件权限:chmod xxx < file-name >,
例如:chmod 754 imooc

  1. 文件搜索、查找、读取

    命令 解释
    tail 从文件尾部开始读取
    head 从文件头部开始读取
    cat 读取整个文件
    more 分页读取
    less 可控分页
    grep 搜索关键字 grep -n “关键字” imooc.py
    find 查找文件 find .find . -name "*ooc"
    wc 统计个数 cat imooc.py | wc -l

    http://www.runoob.com/linux/linux-comm-find.html

  2. 文件解压缩

    说明 .tar .tar.gz
    压缩 tar -cvf imooc.tar imooc(要压缩的文件) tar -czvf imooc.tar.gz imooc
    查看压缩包文件 tar -tvf imooc.tar tar -tzvf imooc.tar.gz
    解压 tar -xvf imooc.tar tar -xzvf imooc.tar.gz
  • c: –create 新建一个压缩文档,即打包
  • x: –extract,–get解压文件
  • -t: –list,查看压缩文档里的所有内容
  • v:显示操作过程!这个参数很常用
  • f:使用文档名,注意,在f之后要立即接文档名,不要再加其他参数!
  • z:是否同时具有gzip的属性?

发表评论

电子邮件地址不会被公开。 必填项已用*标注