一、计算机概览
一、计算机概览
**阿兰·麦席森·图灵 Alan Mathison Turing ,6月23日生于英国伦敦。是英国著名的数学家和逻辑学家,被称为计算机科学之父、人工智能之父,是计算机逻辑的奠基者,提出了“图灵机”和“图灵测试”等重要概念,人们为纪念其在计算机领域的卓越贡献而设立“图灵奖”。**
1、计算机五大组成部分
运算器:负责数学、逻辑的运算;
控制器:大脑cpu;
储存器:内存(处理速度极快、断电数据丢失、只可临时储存)外存(磁盘,断电数据也在,速度慢);
输入设备:又称I(input)设备,如键盘、鼠标等;
输出设备:又称O(onput)设备,如音响、打印机、传真机、屏幕等;
2、三大核心硬件
cup、储存器、IO设备(输入输出)
3、操作系统
操作系统本身就是一个软件,来帮助人更好地控制硬件发挥他们的用处;
4、编程语言
编程语言就像人与人沟通是一个道理,只不过对方是机器,所以需要使用机器可以听得懂的语言,也就是编程语言;需要让他做什么,要一步一步有逻辑思维的告诉它,先干什么、后干什么。
为何要编程?
解放人力,替人做事。
控制体系:人------编程语言----计算机硬件
5、应用程序
应用程序是最上层控制系统的软件,其控制顺序顺序:应用程序——命令解释器(shell、cmd、python)——系统接口————内核(操作系统)——计算机硬件,如下图所示;
6、Linux目录结构
目录
说明
/
处于Linux系统树形结构的顶端,它是Linux文件系统的入口,所有的目录、文件、设备都在/之下
/bin
Bin是Binary的缩写。常用的二进制命令目录。比如ls、cp、mkdir、cut等;和/usr/bin类似,一些用户级gun工具
/boot
存放系统启动相关的文件,例如:kernel.grub(引导装载程序)
/dev
dev是Device的缩写。设备文件目录,比如声卡、磁盘。在Linux中一切都被看做文件,包括终端设备、磁盘等等
设备文件:/dev/sda,/dev/sda1./dev/tty1,/dev/tty2,/dev/pts/1, /dev/zero,/dev/null,/dev/cdrom
/etc
常用系统或二进制安装包配置文件默认路径和服务器启动命令目录
passwd 用户信息文件
shadow 用户密码文件
group 存储用户组信息
fstab 系统开机自动挂载分区列表
hosts 设定用户自己的IP与主机名对应信息
/home
普通用户默认的家目录
/lib
库文件存放目录,函数库目录
/lost+found
只在CentOS6中有
默认为空,被FSCK(file system check用来检查和维护不一致的文件系统。若系统掉电或磁盘发生问题, 可利用fsck命令对文件系统进行检查)用来放置零散文件(没有名称的文件)当系统非法关机后,这里就会存放一些文件。
在 centos6 版本下,每个分区的挂载点下会有些目录
/mnt
/media
一般用来临时挂载存储设备的挂载目录,比如cdrom、U盘等目录
/opt
表示的是可选择的意思,有些软件包也会被安装在这里
/proc
操作系统运行时,进程(正在运行中的程序)信息及内核信息(比如CPU、硬盘分区、内存信息等)存放在这里。/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统。因此,这个目录是一个虚拟目录,它是系统内存的映射,我们可以通过直接访问这个文件来获取系统信息。也就是说,这个目录的内存不再硬盘上而是在内存里。
查看CPU信息
cat /proc/cpuinfo
/sys
系统目录,存放硬件信息的相关文件
/run
运行目录,存放的是系统运行时的数据,比如进程的PID文件
/srv
服务目录,存放的是我们本地服务的相关文件
/sbin
大多数涉及系统管理的命令都存放在该目录中,它是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,凡是目录sbin中包含的命令都是root权限才能执行的。
/tmp
用于存放临时文件,又是用户运行程序的时候会产生一些临时文件。/tmp就是用来存放临时文件的。/var/tmp目录和该目录的作用是类似的,不能存放重要数据,它的权限比较特殊。
[xf@xuexi ~]$ ls -ld /tmp
drwxrwxrwt. 27 root root 4096 12月 23 19:18 /tmp
t粘滞位(sticky bit)目录的sticky位表示这个目录里的文件只能被owner和root删除
/var
系统运行和软件运行时产生的日志信息,该目录的内容是经常变动的,存放的是一些变化的文件。比如 /var/log目录用来存放系统日志,还有/var/mail、/var/spool/cron
/usr
存放应用程序和文件
/usr/bin 普通用户使用的应用程序
/usr/sbin 管理员使用的应用程序
/usr/lib 库文件Glibc(32位)
/usr/lib64 库文件Glibc
/lib
/lib64
都在/usr/目录下
这个目录里存放着系统最基本的动态链接共享库,白喊许多倍/bin和/sbin中的程序使用的库文件,目录/usr/lib中含有更多用于用户程序的库文件。作用类似于windows里的dll文件,几乎所有的应用程序都需要用到这些共享库
注:lib***.a是静态库
Lib***.so是动态库
静态库在编译时被加载到二进制文件中
动态库在运行时加载到进程的内存空间中
简单的说:这些库视为了让你的程序能过正常编译运行的