分页: 1 / 1

[教学]linux基础笔记

发表于 : 2006-11-03 10:54
kakald
这篇笔记不是应用,而是对linux操作系统的一些解释说明,希望让刚学会使用linux的人解除一些疑惑,而那些疑惑也是我刚学linux时很想了解的。

我的博客:http://kaka.lupaworld.com

linux操作系统的构成

内核,Shell,X-Window,应用程序

内核(Kernel)是整个操作系统的核心,管理着整个计算机系统的软件硬件资源。linux内核的源代码主要用C语言编写,只有部分与驱动相关的用汇编语言Assembly编写。

linux的内核并不能直接接受来自终端的用户命令,不能直接与用户进行交互。Shell是用户和内核之间的桥梁,它将用户的命令解释为内核能够接受的低级语言,并将结果显示出来。

linux内核--Shell--用户

X Window是Unix和linux等操作系统的图形化用户界面的标准。它不同于Windows,Windows是操作系统,图形界面出现故障,整个系统都不能正常工作;X Window只是一个程序,出现故障不会影响其它字符界面下运行的程序。


linux的基本原理

linux采用模块化结构,通过以下管理模块实现对整个系统中硬件资源和软件资源的管理。

CPU管理:
linux是多用户多任务的操作系统,主要采用分时方式管理CPU运行时间。

存储管理:
linux采用虚拟存储技术,利用硬盘的空间来扩充内存空间,从而为程序的执行提供足够空间。

文件管理:
外存上所记录的信息均以文件的形式存在,操作系统对文件的管理依靠文件系统来实现。文件系统对文件位置与空间大小进行分配,实施文件的读写操作,并提供文件的保护与共享。主要采用ext3文件系统。

采用虚拟文件系统(Virtual File System)技术,linux可以支持多种文件系统。虚拟文件系统是操作系统和真正文件系统之间的接口,它将各种不同文件系统的信息进行转化,形成统一格式后交给linux操作系统处理,并将处理结果还原为原来的文件系统格式。linux将文件系统通过挂载操作将其放置于某个目录,从而让不同的文件系统结合成为一个整体,可以方便地和其他操作系统共享数据。

设备管理:
linux把所有外部设备按其数据交换的特性分为三类,无论哪个类型的设备,linux都把它统一当作文件来处理,可以像使用文件一样来使用这些设备。
1. 字符设备是以字符为单位进行输入输出的设备,如打印机,显示终端。
2. 块设备是以数据块为单位进行输入输出的设备,如磁盘、光盘等。
3. 网络设备是以数据包为单位进行数据交换的设备,如以太网卡。



X Window的基本原理

X Window和Windows都提供图形化用户界面,在使用上也极其相似,但在结构上两者完全不同。X Window本身不是操作系统,而是一种可运行于多种操作系统,采用客户机/服务器模式的应用程序。X Window主要由三部分组成:X Server, X Client, X Protocol。

X Server是X Window系统的主要部分,负责接受来自输入设备的信息,并控制屏幕的显示。X Server响应X Client的显示请求,建立窗口,并在窗口中显示图形和文字。每一套显示设备只对应惟一的一个X Server。

X Client:运行于图形化用户界面的应用程序都是X Client。用户的输入信息由X Server接受后,会传递给X client。X Client根据用户的需求运行后,再发出相应的请求给X Server,最后由X Server负责显示执行结果。

X protocol是X Server和X Client之间传递信息所用的协议。



磁盘分区

磁盘的分区分为主分区和扩展分区。一个硬盘上最多只能有四个主分区,其中一个主分区可以用一个扩展分区来替换,也就是说主分区可以有1~4个,扩展分区可以有0~1个,而扩展分区可以划分出若干个逻辑分区。

目前常用的硬盘主要有两类:IDE接口硬盘和SCSI接口硬盘。linux的所有设备均表示为/dev目录中的一个文件,如
* IDE0接口上的主盘:/dev/hda
* IDE0接口上的从盘:/dev/hdb
* SCSI接口上的主盘:/dev/sda
* SCSI接口上的从盘:/dev/sdb
* IDE0接口上主盘的第1个主分区:/dev/hda1
* IDE0接口上从盘的第1个逻辑分区:/dev/hda5

linux文件系统

文件系统是操作系统中与管理文件有关的所有软件和数据的集合。使用文件系统可以方便地组织和管理计算机中所有的文件,并为用户提供存取控制和操作方法。更为重要的是文件系统为用户提供的统一简洁的接口,方便用户使用各种硬件资源。

目前Windows通常采用FAT32或NTFS文件系统,而Linux中保存数据的磁盘分区通常采用ext3文件系统,而实现虚拟存储的Swap分区一定采用swap文件系统。

ext(Extended File System)文件系统系列是专为Linux设计的文件系统。它继承unix文件系统的主要特色,采用三级索引结构和目录树型结构,并将设备作为特别文件处理。

虚拟文件系统使linux支持msdos,vfat(fat32),sysV,nfs,iso9660。

文件系统的挂载

Linux中无论是硬盘还是软盘都必须经过挂载才能进行文件存取操作。所谓挂载就是将存储介质的内容映射到指定的目录中,此目录即为该设备的挂载点。对存储介质的访问变成对挂载点目录的访问。一个挂载点一次只能挂载一个设备。

通常硬盘上各个分区都会在Linux启动过程自动挂载到指定的目录,并在关机时自动卸载。而软盘等移动存储介质既可以在启动时自动挂载,也可以在需要时手动挂载。移动存储介质是否在启动时自动挂载,取决于/etc/fstab文件的内容。示例:

LABEL=/ / ext3 defaults 1 1
/dev/hda2 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0

/etc/fstab文件中每一行表示一个文件系统,而每个文件系统的信息用六个字段来表示,字段之间用空格分隔。从左到右字段信息分别为:

设备逻辑名:“LABEL=磁盘分区名”格式表示硬盘上的磁盘分区,通常分区名与挂载点目录保持一致。根分区一定挂载到根目录,否则无法启动计算机。none表示与存储设备无关的文件系统,由系统负责管理控制。/dev/cdrom表示光盘,而/dev/fd0表示软盘。

挂载点:指定每个文件系统在系统中的挂载位置,其中Swap分区不需要指定挂载点。

文件系统类型:指定每个文件系统采用的文件系统类型,如果设备为auto则表示按照文件系统本身的类型进行挂载。

命令选项:每个文件系统都可以设备多个命令选项,命令选项之间必须使用逗号分隔。

检查标记:只取两个值0和1。

检查顺序标记:可有三个取值:0,1,2。


常用基本目录

/ linux系统目录树的起点
bin 存放可执行命令
boot 存放系统启动时所需要的文件,包括引导装载程序
dev 存放所有的设备文件
etc 存放系统配置文件
home 包含普通用户的个人的主目录
lib 包含系统二进制文件所需的共享库
mnt 移动存储介质的挂载点目录
proc 存放系统中有关进程的运行信息,由内核在内存中产生
root 超级用户的主目录
sbin 和bin目录相似,存放系统管理命令,一般只有超级用户才能使用
tmp 公用的临时文件存放目录
usr 存放应用程序及其相关文件
var 存放系统中经常变化的文件,如系统日志文件等

发表于 : 2006-11-03 11:59
胡萝卜
总结的好,正解初学者迷津. 顶!

发表于 : 2006-11-03 12:16
zhuqin_83
简单,明了,容易看懂。

发表于 : 2006-11-03 12:39
aBiNg
* IDE0接口上的主盘:/dev/hda
* IDE0接口上的从盘:/dev/hdb
* IDE0接口上主盘的第1个主分区:/dev/hda1
* IDE0接口上从盘的第1个逻辑分区:/dev/hdb5
...

发表于 : 2006-11-04 16:52
lu0007
呵呵,这个说的好,下次有这样的文章要继续啊!
要努力噢 ,我看好你哟!