计算机五大单元:(冯诺依曼体系结构)
一、常见指令
1).常见的环境变量:PATH(搜索路径)、HOME(用户主工作目录)、HISTSIZE(历史记录)、SHELL(当前脚本)
2).修改查看环境变量:echo、env、set/unset
3).六种文件类型:普通文件、目录、连接文件、设备和设备文件、套接字、管道
4).shell命令行解释器作用:(1)解析用户指令给内核(2)提供一个可单独配置的使用shell资源配置文件的用户环境(3)搜索命令
5).常用指令与命令参数含义及使用:ls各项指令、cd命令、date指令、Cal指令、touch、mkdir、rmdir/rm、cp、mv、basename、more/cat、head、file、find、pwd、kill
二、权限管理
1)、文件访问者:u(文件所有者)、g(所有者所在组)、o(其它用户)
2)、访问权限:
a(基本权限):r(读)、w(写)、e(执行)
b(特殊权限):suid、sgid
3).文件权限表示方法:字符、8进制值
4).文件权限设置:chmod、chown、chgrp、umask
三、环境搭建工具
vim编辑器:
1).三种基本状态及三种状态间切换以及每个模式功能键:命令行模式、底行模式、插入模式(i、esc进行切换)
2).vim操作:打开、关闭、查看、查询、插、删除、替换、撤销、复制等
3).vim配置:设字体、语法高亮、行号、缩进空格等
gcc编译器:
过程:预处理(宏处理、文件包涵、条件编译)->编译(生成汇编)->汇编(生成机器语言)->链接(可执行文件)
gdb调试器:
调试过程即各调试选项作用
ctags:linux查看代码
Makefile(可自动化编译):
1).使用make命令工具解释Makele中指令
2).需编写文件依赖关系编译和链接程序
3).make clean命令以清除所有目标文件,以便重编译。
四、进程
1).进程概念
2).进程描述(PCB)
3).进程标识符(PID、PPID):唯一
4).进程在内存中的映像(在内核中存放可执行文件)
5).进程状态:R(运行)、S(睡眠)、D、T、X、Z(僵尸状态)
6).进程优先级:越小越先执行
7).进程创建方式fork()、vfork()、execve()以及区别
8).进程终止方式
9).进程等待(父等待子退出阻塞式、非阻塞式)
10).进程间程序替换:六种exec函数
11).进程间五种通信方式:匿名管道、命名管道、(System V版本)消息队列、信号量、共享内存以及各自适用场景
五:多线程编程
1).线程概念以及线程与进程区别与联系
2).线程创建
3).线程等待
4).线程终止
5).线程分离
6).线程同步与互斥:mutex互斥量、cindition条件变量、(POSIX版本)信号量
例:生产者与消费者模型、读者写者模型(读写锁)
7).死锁的产生与避免
六:LINUX信号
1).信号、信号递达、信号未决概念
2).产生信号:3种方式
3).信号在内核中的表示以及获取和修改信号集中某个信号(block表、pending表、handler表)
4).信号的捕捉
5).可重入函数与线程安全
6).竞态条件
七:终端、作业、守护进程
1).进程组、作业、会话、终端基本概念以及相关操作
2).守护进程概念以及与其它进程区别
3).守护进程创建过程