冯诺依曼体系 1输入设备-》2存储器(内存)-》3运算器-》4控制器-》5输出设备
Linux常见环境变量:
(不同用户 相同环境变量名 但内容不同)
1. PATH 命令搜索路径
export PATH=$PATH:/2016_程序的路径
2. HOME用户主目录
3. HISTSIZE 历史命令
4. LOGNAME 当前用户的登录名
5. HOSTNAME 主机名称
6. SHELL 当前用户用的哪种Shell
7. LANG/LANGUGE 语言相关环境变量
8. MAIL
9. PS1
10. PS2 附属提示符>
1 echo
2 export设置一个新的环境变量
export HELLO="hello" (可以.引号)
3 env 显示所有的环境变量
4 set 显示本地定义的shell变量
5 unset
6 readonly 设置只读环境变量
Linux文件类型
1 普通文件 (regular file) [-]
① 纯文本档(ASCII)
② 二进制文件(binary 可执行文件)
③ 数据格式文件
2 目录(directory) [d]
3 连接文件(link) [l]
(软连接 相当于快捷方式)
(硬连接 )
4 设备和设备文件 (计算机中 一切皆文件)
块设备文件 即存储文件 如硬盘 软盘 [b]
字符设备文件 键盘鼠标 打印机[c]
5 套接字(sockets) [s]
6 管道(FIFO ,pipe) [p]
Linux扩展名
Linux没用扩展名 加扩展名 只是方便用户区别不同类型文件
bin 保存命令
home 用户名文件夹
Lost+found 临时文件 删除文件
mnt 挂载
proc 系统进程信息 cpu 内存相关的信息
sys 和proc重叠 反应软硬件信息 (sys 新版必须支持 proc老板历史原因)
dev
Lib 库文件
net网络
selinux 设置网络
var 日志 系统启动信息等
boot 内核启动相关的文件
root 超级用户 工作目录/root
tmp 临时文件
Shell的运行原理
一般用户不能直接操作核心(kernel) 必须通过壳 shell来沟通
Shell :命令行解释器
1 将使用者的命令翻译给核心(kernel)处理。
2 同时,将核心的处理结果翻译给使用者。
Shell不直接自己执行命令 而是用子进程去运行
子进程失败 不影响自己 因为一旦shell挂掉 用户就不能与内核沟通了
Shell如何运行程序
Shell用fork建立新进程,用execv函数簇在新进程中运行用户指定的程序,最后shell
用wait命令等待新进程结束。Wait系统调用的同时从内核取得推出状态或者信号序列以告知子进程是如何结束的。
Linux权限管理
1 文件访问者的分类(人)
a 文件和文件目录的所有者 u---user
b 文件和文件目录的所有者所在的组的用户:g---Group
c 其他用户 o---Others
2 文件访问权限的种类 (事物属性)
a 基本权限
i 读 (r/4)
ii 写 (w/2)
iii 执行(x/1)