Linux基础 | 青训营笔记

110 阅读2分钟

1. 进程调度

  1. 进程调度是指操作系统按某种策略或规则选择进程占用CPU进行运行的过程

  2. 进程调度原则

    • 一个CPU核同一时间只能运行一个进程
    • 每个进程有近乎相等的执行时间
    • 对于逻辑CPU而言进程调度使用轮询的方式进行,当轮询完成则回到第一个进程反复
    • 进程执行消耗时间和进程量成正比
  3. 进程的系统调用

    ​ 内核空间:系统内核运行的空间

    ​ 用户空间:应用程序运行的空间

2. 文件系统

  1. 文件系统负责管理持久化数据的子系统,负责把用户的文件存到磁盘硬件中。

  2. Linux 文件系统是采用树状的目录结构,最上层是/(根)目录

  3. 虚拟文件系统(VFS)

    • 对应用层提供一个标准的文件操作接口
    • 对文件系统提供一个标准的文件接入接口
  4. 查看文件系统类型

    df命令报告文件系统磁盘空间利用率

    liuqin@liuqin-virtual-machine:~$ df -T
    文件系统       类型        1K-块     已用    可用 已用% 挂载点
    udev           devtmpfs   964700        0  964700    0% /dev
    tmpfs          tmpfs      199488     1652  197836    1% /run
    /dev/sda5      ext4     19992176 11999156 6954428   64% /
    tmpfs          tmpfs      997436        0  997436    0% /dev/shm
    tmpfs          tmpfs        5120        4    5116    1% /run/lock
    tmpfs          tmpfs      997436        0  997436    0% /sys/fs/cgroup
    /dev/loop0     squashfs      128      128       0  100% /snap/bare/5
    /dev/loop1     squashfs    56960    56960       0  100% /snap/core18/2721
    /dev/loop3     squashfs    63488    63488       0  100% /snap/core20/1270
    /dev/loop2     squashfs    56832    56832       0  100% /snap/core18/2253
    /dev/loop5     squashfs   224256   224256       0  100% /snap/gnome-3-34-1804/77
    /dev/loop4     squashfs    64896    64896       0  100% /snap/core20/1852
    /dev/loop6     squashfs   223744   223744       0  100% /snap/gnome-3-34-1804/90
    /dev/loop7     squashfs   358144   358144       0  100% /snap/gnome-3-38-2004/137
    /dev/loop9     squashfs    66816    66816       0  100% /snap/gtk-common-themes/1519
    /dev/loop11    squashfs    93952    93952       0  100% /snap/gtk-common-themes/1535
    /dev/loop8     squashfs   253952   253952       0  100% /snap/gnome-3-38-2004/87
    /dev/loop10    squashfs    52224    52224       0  100% /snap/snap-store/547
    /dev/loop13    squashfs    51072    51072       0  100% /snap/snapd/18596
    /dev/loop12    squashfs    55552    55552       0  100% /snap/snap-store/558
    /dev/sda1      vfat       523248        4  523244    1% /boot/efi
    tmpfs          tmpfs      199484       24  199460    1% /run/user/1000
    /dev/sr0       iso9660   2999936  2999936       0  100% /media/liuqin/Ubuntu 20.04.3 LTS amd64
    

    mount命令是挂载文件系统用的,不带任何参数运行,会打印包含文件系统类型在内的磁盘分区的信息

    liuqin@liuqin-virtual-machine:~$ mount
    /dev/fuse on /run/user/1000/doc type fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
    tmpfs on /run/snapd/ns type tmpfs (rw,nosuid,nodev,noexec,relatime,size=199488k,mode=755,inode64)
    nsfs on /run/snapd/ns/snap-store.mnt type nsfs (rw)
    #只粘贴了一部分
    
  5. 文件基本操作

    练习:在用户liuqin文件夹下新建文件夹demo,在demo下创建新文件file.txt,用ls查看demo文件夹下的文件。

    liuqin@liuqin-virtual-machine:~$ mkdir demo
    liuqin@liuqin-virtual-machine:~$ cd demo
    liuqin@liuqin-virtual-machine:~/demo$ touch file.txt
    liuqin@liuqin-virtual-machine:~/demo$ ls
    file.txt
    

    文件操作基本命令

    1s  #查看文件夹下内容
    mkdir demo #创建文件夹
    mv demo /home #移动demo文件夹到/home
    rm -r demo  #删除demo文件夹
    touch file.txt  #创建空文件
    cp file.txt file_bak .txt  #复制文件