1.Linux系统特性:开放性,多用户,多任务,良好的用户界面(Linux的传统界面是基于文本的命令行界面,即shell,有很强的程序设计能力,用户可方便的用它编制程序,从而为用户扩充系统功能提供更高级的手段。
Linux特点:开源 免费 稳定,具有设备独立性,丰富的网络功能,可靠地网络安全,良好的可移植性。
2.Linux分为内核和shell,内核是操作系统的核心,功能:虚拟内存,多任务,共享库,需求加载,可执行程序和TCP/IP网络功能。
shell:命令行解释器,对命令进行识别和分析。外壳开发shell(界面程序)和windows窗口功能一样。bash解释器是shell的一种
shell外壳程序功能:
1.读取并识别命令
2.调操作系统提供的接口
3.接口返回命令
Linux命令分为:
a.shell内部命令,这些命令在shell启动时载入内存,像是操作系统本身所具有的命令一样,如:cd,mkdir,rm.
b.shell外部命令,linux中大部分命令属于shell外部命令,每一个shell外部命令都有一个独立的可执行程序(实用工具程序)
3.冯诺依曼思想中,计算机分为:输入设备,存储器,运算器,控制器,输出器。运算器和控制器统称为中央处理器,即cpu。
4.存储器:内存-缓存(cache)-寄存器
永久性存储介质:断电还在
掉电易失性存储介质:内存,缓存,寄存器
5.在Linux中,文件:设备,显示器,一切皆文件设计思路(软件层实现虚拟)
文件类型:普通文件(-),目录文件(内容和其他文件不同,d),链接文件(l),设备文件(字符:打印机,键盘;块:磁盘),管道,套接字(socket),其中管道和套接字是进程通信的两种机制。
以.开头的文件为隐藏文件(相对的)。
文件属性(属性和类型有关):
读
写
执行
6.进入目录和读权限无关,和执行权限有关。
目录权限:执行权限(cd),读文件夹内容,写(新创建文件夹内容)
7.CPU功能:取指令,读指令(分析是逻辑指令还是运算指令),执行指令。
8.如果有任务,shell不会自己执行,会创建子进程完成任务,父进程专注命令行,子进程会告诉父进程是否执行成功。
9.操作系统(内核):管理计算机资源,主要设备管理,文件管理,存储管理,进程管理。
10.Linux内存空间:由低地址到高地址分别是:代码段,已初始化变量区,全局变量和静态变量区,为初始化变量区,堆,共享映射区,栈,命令行参数,环境变量。
11.vim编辑器:比其他许多文本编辑器启动得更快,并且占内存更少
vim模式多,主要有命令模式,插入模式(编辑模式),低行模式,还有替换模式,视图模式
1.command命令模式
2.插入模式
3.低行模式
12.vim中不管当前处于什么模式,按下ESC键都会切换命令模式,对文件编辑后,如果想关闭回到命令模式,有以下几种退出方式:q直接退出,若文件发生改变,vim会提示并不允许退出
q!强行退出,如果文件改变不会保存
wq或x保存并退出
wq!或x!强行保存并退出,一般用于编辑文件是只读情况下,但被编辑文件的拥有者必须是当前用户改变。
命令模式下指令:yy复制 pp粘贴 dd剪切
低行模式打开多个窗口(:vs test3.c(可不存在,就新建)) crl+ww,或ctrl+w,l/h可切换
低行模式下:!man strerror查询strerror所在库函数及函数原型,此状态下q退出。