linux基础介绍3-24

系统介绍:

《穿越计算机的迷雾》

《量子物理史话》

编程语言:

微码编程接口:汇编语言


问题空间:1000+1000

编程语言

解空间:


操作界面:输入设备

键盘,


输入设备-->硬件-->程序(运行,处理操作)-->输出


程序:指令+数据

指令集


冯 诺依曼:5大部件

CPU:运算和控制

内存:

进程:活动状态的程序,执行中的程序


Multics,

MULTIiplexed Information and Computing Service 



ken thompson, dennis ritchie

文件系统


DEC:

PDP-7,


Unics:  

Uniplexed  Information and Computing Service 


Unix, nroff


Unix:汇编语言,B语言写程序 

C语言:兼具低级语言特性的高级语言


Unix的历史教训:

别和低价灵活的方案较劲;

越开源越繁荣;


Uinx的哲学基础:

让每个程序只做好一件事;如果有新任务,那么就新启一个程序,而不要在原程序中增加功能;

假定每个程序的输出,都会做为另一个程序的输入;输出中不要有无谓信息干扰;不要交互式输入;

尽可能早地将设计和编译的程序投入试用,哪怕是系统级的程序也不例外;

使用工具而不是人力来减轻负担;


简而言之:一个程序只做一件事,并做好;程序间要能互相协作;程序要能处理文本流;


OS的功用:

1、将硬件规格抽象为系统调用(System Call);

2、进程管理;

3、文件系统;

4、硬件驱动;

5、网络协议栈;

6、安全功能;

7、内存管理;


shell:用户接口

CLI:命令行接口,Command Line Interface

sh, bash, ksh, zsh, csh, tcsh

GUI:图形用户接口,Graphic User Interface

Gnome

KDE

Xfce


源代码 --> 编译(编译器) --> 目标代码


Linux发行版:

RHEL

Fedora

CentOS

slackware

S.u.S.E

OpenSUSE

Debian

Ubuntu



Linux

https://www.kernel.org/

3.19.2

version:

major: 主版本号

minor: 次版本号

release:发行号,修正号

系统运行:

用户模式

系统模式(内核模式)


库:

提供共享功能模式

减少程序体积

dll: dynamic link labrary

so: shared object


API:Application Programming Interface,应用编程接口

IEEE: POS(Portable Operating System)--> POSIX


ABI:Application Binary Interface



CPU架构类型:

x86: intel, amd, 32bits

x64: amd64

pc server

arm: 32bits, 64bits

power

powerpc

sparc, unlrasparc

m68000, m68k

alpha

Linux的哲学思想:

一切皆文件(包括硬件);

由众多目的单一的小程序组成;

组合小程序完成复杂任务;

尽量避免跟用户交互;为了方便脚本编程实现程序自动化运行;

使用文本文件保存程序的配置数据;

终端类型:

物理终端,控制台:/dev/console

虚拟终端:/dev/tty# (1-6)

Ctrl+Alt+F#

伪终端:/dev/pts/#

ssh或telnet远程连接打开的终端,图形界面下的终端

串行终端:/dev/ttyS#



第一次启动图形服务:

startx &, Ctrl+Alt+F7

startx -- :1 &, Ctrl+Alt+F8

用户工作环境:

CLI:提供命令提示符

管理员:#

普通用户:$

GUI:提供桌面环境


shell的工作环境的定制:

变量:变量名,值

变量赋值

VAR_NAME=VALUE


PS1: 定义命令提示符

\u: 自动替换为当前用户的用户名

\h: 当前主机的主机名

\H:当前主机的完整主机名,FQDN

\w: 当前工作路径,绝对路径

\W:当前工作路径,相对路径

\$: 指定命令提示符


定义方法:export PS1=‘‘

 export PS1=‘\033[3#m    \033[0m‘

技术分享

知识框架:

Linux基础知识、系统管理

bash shell编程

Linux服务及安全

openssl, web, file service (vsftpd, samba, nfs), dhcp, dns

MySQL数据库

Linux集群:LB, HA

lvs, haproxy, nginx

heartbeat, corosync, keepalived

分布式应用:

mogilefs

mongodb

缓存系统:

memcached

varnish

虚拟化:xen, kvm

云:openstack

监控和自动化:zabbix, cobbler, puppet, ansbile

大数据:hadoop


Linux的文件系统:

一切皆文件

遍历


层级格式:

/ -->

etc, usr, var, home

pam, sysconfig

networking


/etc/sysconfig/networking


两类数据:

元数据(metadata):索引

数据(data):文件内容


路径分隔符:/

/usr/local


相对路径:从当前位置开始定位的路径表示形式

绝对路径:从根开始定位的路径表示形式

Linux文件名:

1、严格区分大小写字符

file, File, FiLe, FILE

2、文件名可以使用除了/以外的任意字符


登录以后:

家目录,主目录:/root, /home/USERNAME

工作目录(working directory),当前目录:pwd命令可显示


本文出自 “Mark” 博客,请务必保留此出处http://sr1006.blog.51cto.com/3432122/1624358

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。