开源协定:
GPL LGPL,Apache,BSD
BSD:
1.如果二次发布的产品中包含源代码,则再源代码中必须带有原来的代码中的BSD协定;
2.如果二次发布的产品是二进制格式的库或程序,则需要在发不动文档或版权声明中说明包含原来的代码中的BSD协议;
3.不可以用开元代码的作者或组织,以及原来的产品名字做市场推广;
Apache:
代码共产主义运动:
开源:集市式开发模式
闭源:教堂式开发模式
Linux:应用程序,kerel
源码
二进制格式
发行版:Debian 、Slackware、 RedHat
Aechelinux、LFS
CentOS
程序:指令+数据
库:不能独立运行,只能被程序调用运行,二进制模式(无执行入口)
shell是人机交互接口,没有shell程序也可以运行;
so:shared object
共享:
标准库:Linux系统必须提供的,可被程序调用的库
glibc
运行程序:
系统开机之后自动加载并运行程序;与终端无关
交互式启动的程序:与终端相关
CPU:4组令集
总线:
地址总线:寻址
数据总线:数据传输
控制总线:发送控制信号
文件系统:程序,用于负责组织数据以能够实现使命存取;
通常有OS实现;
元数据(metadata):属性信息
数据:文件数据内容
对分区格式化:在分区上创建文件系统 目录:路径列表
OS的功能:
进程管理
文件系统
网络功能
内存管理
IO管理
驱动程序
安全功能
Linuxt
terminal:终端
在终端上启动一个shell程序
shell的类别:
GUI:GNome, KDE, Xface
CLI:bashi, sh, zsh, ksh, tcsh, dash ,csh
交互式接口:通常可以定制其工作环境
通过“环境变量”实现;
变量:命名的内存空间
bash环境变量:PS1, SHELL, HOME
命令的通用语法格式:
COMMAND(命令) OPTION ARGUMENTS(参数)
COMMAND:
发起一个命令:请求内核将某个二进制程序运行为一个进程;
命令必须遵循特定格式:ELF(Linux)
命令本身是一个可执行程序文件:二进制格式
命令有两类:
由shell程序自带:内建命令
独立可执行程序文件:外部命令
通过环境变量PATH定义其查找路径
查看命令的类型:type
执行过的外部命令查找结果的缓存及命中次数查看:hash
OPTIONS:
制定命令的运行特性
很多程序的选项可通过其配置文件进行定义;
配置文件:定义了程序运行特性的诸多参数及值的文本文件(偶尔有XML格式的文件);
选项有两种表现形式:
-C:短格式选项,-1,-R
大多同时使用的多个短格式选项可合并:-1 -R = -1R
–string:长格式选项,–help
注意:多个选项间以空白分隔;合并使用的段选项间不能有空白
ARGUMENTS(参数):
命令的作用对象:命令对什么生效;
参数:不同的命令使用参数的格式,使用参数的方法都不尽相同;
注意:多个参数间通常需要空白分隔;
文件系统:
1、间隔区分字符大小写:file, File
2、文件名可以使用除“/”意外的任意字符,但不建议使用特殊字符;
3、文件名长度不能超过255个字符;
路径:
相对路径:从当前位置开始
a/b/c,·/a/b/c
“ · ”:当前目录
“··”:上一级目录,即当前目录的父目录;
绝对路径:从根开始,/
/etc/sysconfig/network-scripts/
原创文章,作者:wuxiaotian,如若转载,请注明出处:http://www.178linux.com/29710