常用指令
查看当前进程 ps
执行退出 exit
查看当前路径 pwd
列出目录和文件 ls
创建目录 mkdr (-p逐级创建)
创建文件
echo是输出,本身与创建文件无关,注意>,>>的用法
查看文件
切换目录 cd
复制文件 cp
移动文件 mv
删除文件 rm
查找文件内容 grep
查找文件 find -name
编译
预处理 gcc -E *.c -o *.i
编译 gcc -S *.i -o *.s
汇编 gcc -c *.s -o *.o
链接 gcc *.o -o *
启动调试
uboot
bootloader
bootloader在系统上电时开始执行,初始化硬件设备、准备好软件环境,然后调用操作系统内核
uboot在初始化硬件环境后,会将当前环境信息传给内核
内核空间和用户空间
内核是操作系统的核心,可以访问受保护的内存空间以及拥有底层硬件设备的所有权限。而用户没有这些权限。
具体的实现方式是由操作系统将虚拟地址空间分为两部分,一部分为内核空间,一部分为用户空间。
内核态和用户态:进程运行在内核空间时处于内核态,运行在用户空间处于用户态,那么进程从用户态切换到内核态就需要保存用户态所有的环境,所以切换很消耗资源。
内核和用户通信方式
open()函数系统调用过程
1、用户进程调用open函数
2、执行open指令并触发trap异常
3、内核态执行open操作
4、返回用户态并恢复上下文
5、用户进程接收返回值
6、关闭文件描述符