Linux操作系统及程序设计1_第1页
Linux操作系统及程序设计1_第2页
Linux操作系统及程序设计1_第3页
Linux操作系统及程序设计1_第4页
Linux操作系统及程序设计1_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、LinuxLinux操作系统操作系统及程序设计及程序设计教学目标:掌握Linux系统组成特点、常用命令和使用方法;深入了解和掌握Linux系统的内部结构、编译、调试和运行系统程序的方法;对Linux操作系统建立一个全面、系统的认识,进而初步掌握Linux程序设计方法,为进一步学习和应用打下基础。教学主要内容:Linux系统基本使用,shell及其编程,Linux文件系统,多进程与多线程程序设计,进程间通信教学时数:讲解辅助下的实验32学时第一讲第一讲Linux Linux 简介简介 初步掌握初步掌握LinuxLinux系统安装、实验环境构建和基系统安装、实验环境构建和基本特点。本特点。 Lin

2、ux概述Linux网络操作系统 1990年,Linus Torvalds在一台386 AT计算机上,根据Andrew S. Tanenbaum教授的MINIX开发的一个OS内核。两个进程交替运行,分别打印A和B增加驱动程序、文件系统Linux发展迅速发展迅速 Linux的应用发展方向 超级计算机系统 通用计算机系统 嵌入式计算机系统Linux与与Unix的关系的关系 POSIX标准(1990/1996)Portable Operating System Interface of UNIX UNIX标准之争的产物,描述了系统调用、编程接口API、Shell机制和基本命令集、实时性、信号量机制等设

3、计操作系统许多方面的规范。 自由软件 自由软件基金会(FSF Free Software Foundation) Richard M. Stallman FSF创始人自由软件是指其使用者对该软件有使用、复制、分发、研究、改写、再利用的自由。 自由是关乎权利,而非价格Free指“自由”,而不是“免费”Linux与自由软件和开源软件与自由软件和开源软件 自由权利 自由之一:不论目的为何,都有使用该软件的自由。 自由之二:有研究该软件如何工作的自由,并且可以改写软件,以符合使用者的需求。前提:可以获得该软件的源代码。 自由之三:有重新散布该软件的自由,所以每个人都可以通过分发自由软件来帮助他人。 自

4、由之四:有改进该软件的自由,并且公开发布软件的改进版本,使整个社群都可以受益。前提:获得该软件的源代码。一般在软件许可(License)中说明。 GNU项目 GNUs Not Unix (有点奇怪? 是什么意思呢?) GNU GPL GNU General Public License GNU读作g-noo GNU是一个类Unix操作系统 采用Linux作为内核 Richard Stallman专门写了一篇文章讲述来试图澄清Linux与GNU项目的关系:Linux and the GNU Project典型的桌面环境:GNOME,KDE 开源软件 Open Source 是一种软件开发方法 旨

5、在保证更好的质量、更高的可靠性、更大的灵活性、更低的费用,结束软件开发公司对使用者所进行的“掠夺” 。 开源也有自己的许可,其中重要的一条就是开源软件要公开源代码,这个许可尚处于讨论之中。Linux特点 类Unix(Unix-like)操作系统 其他类UNIX系统包括Solaris、Mac OS等 基于GPL(GNU Public License)的自由操作系统 第一个版本发行于1991年 主要用C语言编写,部分代码用汇编语言编写 “Linux”在不同语境下的内涵不同 Linux内核、Linux系统、Linux开发套件等 严格来说,Linux指由Linux Torvalds维护(及通过主要镜像

6、网站发布)的内核14Linux简介简介15Linux简介简介16Linux简介简介17 (the users) Shells and commands Compilers and interpreters System libraries System-call interface to the kernel Signals terminal handling character I/O system terminal drivers File system swapping block I/O system disk and tape driver CPU scheduling page r

7、eplacement demand paging virtual memory Kernel interface to the hardware Terminal controllers terminals Device controllers disks and tapes Memory controllers physical memory 用户应用程序用户应用程序系统调用系统调用硬件资源管理接口硬件资源管理接口Shell,库函数,库函数内核实现内核实现Linux简介简介用户态用户态核心态核心态18Linux简介简介19Linux简介简介20Linux简介简介21Linux简介简介22用户

8、态用户态标准函数库标准函数库系统调用系统调用(POSIX标准标准)接口接口模块模块内核内核(进程管理、存储进程管理、存储管理、文件管理、管理、文件管理、设备管理、网络设备管理、网络管理管理)设备设备驱动驱动计算机硬件计算机硬件核心态核心态单内核单内核模块模块接口接口驱动驱动接口接口Linux简介简介23r.x.y第第1位数字位数字r为主版本号为主版本号 第第2位数字位数字x为说明版本类型的次版为说明版本类型的次版本号:本号: 偶数表示产品化版本偶数表示产品化版本 奇数表示实验版本奇数表示实验版本 第第3位数字位数字y为修改号,为修改号,表示错误修补的次数表示错误修补的次数 Linux简介简介2

9、4Linux简介简介25Linux简介简介2627Linux内核环境内核环境28Linux内核环境内核环境29Linux内核环境内核环境30Linux内核环境内核环境31Linux内核环境内核环境32Linux内核环境内核环境33Linux内核环境内核环境34Linux内核环境内核环境35Linux内核环境内核环境36Linux内核环境内核环境37Linux内核环境内核环境38Linux内核环境内核环境39Linux内核环境内核环境40u每个.c文件都有代码项41Linux内核环境内核环境u未压缩的文件是vmlinuz42Linux内核环境内核环境43Linux内核环境内核环境44Linux内

10、核环境内核环境u系统正常启动时不会读这个符号表;主要是为了内核引导出错时便于调试45Linux内核环境内核环境4647Linux内核环境内核环境 Linux网络操作系统的安装u安装基本需求 存储空间=700MB,一般桌面系统需3GB存储空间处理器:x86和x86_64内存:=64MBCD/DVD -ROM:执行光盘安装网卡:网络安装需要支持网络启动的网卡 分区与文件系统 磁盘与分区 文件与文件系统 支持Ext2、Ext3、vFat、NTFS、HPFS Linux的分区命名 a) IDE硬盘命名为hd,SCSI硬盘命名为sd; b) 第一个磁盘命名为a,第二个磁盘命名为b,其余依此类推; c)

11、磁盘上第一个主分区命名为1,第二个主分区命名为2,其余依此类推; d) 磁盘上第一个逻辑分区命名为5,第二个逻辑分区命名为6,其余依此类推; 例如:一台计算机中有一块例如:一台计算机中有一块IDE硬盘,分了三个硬盘,分了三个分区,两个主分区,一个逻辑分区,则这三个分区,两个主分区,一个逻辑分区,则这三个分区的命名分别为什么?分区的命名分别为什么?答:答:hda1、hda2、hda5。/binhome2home1bootvarwwwhtmlindex.htmldefault.cssLinux文件系统示例图文件系统示例图磁盘磁盘2磁盘磁盘1 Linux的安装方式 光盘或者USB设备安装 硬盘安装

12、网络安装安装过程略。 双系统安装方法 GRUB引导Windows Windows引导Linux GRUB引导多个Linux 2 Linux网络参数的配置 Linux系统中主要的网络参数有主机名、IP地址、子网掩码、网关、DNS服务器等。 网络参数可以通过对相关配置文件的配置来完成设置,也可以通过Linux的图形界面来配置。 实际上,Linux中几乎所有的配置都是通过配置文件来完成的,在图形界面下的配置其实也是对相关配置文件的配置。2.1 用命令行配置 在命令行状态下,网络参数的配置命令主要有ifconfig、ifup、ifdown等。下面举例说明这些命令在配置网络参数中的常见用法。(1)查看网

13、络运行情况在命令行直接输入命令:ifconfig 该命令在屏幕上显示当前系统中网络参数的配置情况,如下图所示。主要显示信息:主要显示信息: eth0:网络适配器(网卡)的网络接口,如果系统:网络适配器(网卡)的网络接口,如果系统中有多个网卡,则以中有多个网卡,则以eth1、eth2递增编号。递增编号。 Hwaddr:网卡的物理地址,是计算机中与网络硬件:网卡的物理地址,是计算机中与网络硬件相关的惟一地址。由于地址格式与所用介质的访问控相关的惟一地址。由于地址格式与所用介质的访问控制方法相关,又常称为制方法相关,又常称为MAC地址。地址。 inet:网卡的:网卡的IP地址。地址。 bcast:网

14、卡的广播地址。:网卡的广播地址。 mask:显示网卡的子网掩码。:显示网卡的子网掩码。 lo:回环地址,一般此接口的:回环地址,一般此接口的IP地址都是地址都是。(2)为网络接口)为网络接口eth0配置配置IP地址地址 假设为网卡假设为网卡eth0配置配置IP地址:地址:。 在命令行输入命令:在命令行输入命令:ifconfig eth0 或或ifconfig eth0 /24 注意:各参数必须用空格隔开。注意:各参数必须用空格隔开。(3)激活网络接口)激活网络接口eth0 在命令行输入命令:在命令行输入命令:i

15、fconfig eth0 up或或 ifup eth0(4)关闭网络接口)关闭网络接口eth0 在命令行输入命令:在命令行输入命令:ifconfig eth0 down或或 ifdown eth0 (5)将网络接口)将网络接口eth0设置为动态获取设置为动态获取IP地址地址 命令:命令:ifconfig eth0 dynamic(6)为系统添加缺省网关)为系统添加缺省网关54 命令:命令:route add default gw 542.2 直接修改配置文件直接修改配置文件通过命令可以快捷地进行网络参数的配置,通过命令可以快捷地进行网络参数的配置,但

16、系统重新启动后,所设置的网络参数将丢失。但系统重新启动后,所设置的网络参数将丢失。直接修改配置文件可以解决该问题。所有的配直接修改配置文件可以解决该问题。所有的配置文件都在置文件都在/etc目录下。以下是几个主要配置目录下。以下是几个主要配置文件。文件。(1)文件)文件/etc/sysconfig/network内容如下:内容如下:NETWORKING=yesHOSTNAME=localhost.localdomain说明说明 NETWORKING:定义在系统启动时是否启:定义在系统启动时是否启动网络,如果不希望启动则设定为动网络,如果不希望启动则设定为no。 HOSTNAME:定义主机的名称

17、。:定义主机的名称。(2)文件)文件/etc/sysconfig/network-scripts/ifcfg-eth0,内容如下:内容如下:DEVICE=eth0BOOTPROTO=noneONBOOT=yesUSERCTL=noPEERDNS=noTYPE=EthernetIPADDR=NETMASK=GATEWAY=54NETWORK=BROADCAST=55说明说明 DEVICE:定义本文件所对应的网络接口。:定义本文件所对应的网络接口。 BOOTPROTO:定义系统启动时此

18、本网络接口是否:定义系统启动时此本网络接口是否使用使用bootp协议,即是否动态获得协议,即是否动态获得IP地址。如果希望动地址。如果希望动态获得态获得IP地址则设为地址则设为“BOOTPROTO=dhcp”。 ONBOOT:定义系统启动时是否启动此网络接口。:定义系统启动时是否启动此网络接口。 USERCTL:定义用户是否可以启动本接口。如果设:定义用户是否可以启动本接口。如果设为为“yes”,则所有用户都可以启动或禁用此接口,如果,则所有用户都可以启动或禁用此接口,如果设为设为“no”则只有则只有root用户才可以启动或者禁用此接口。用户才可以启动或者禁用此接口。 PEERDNS:是否设置

19、:是否设置PEERDNS,一般不需要设置。,一般不需要设置。 TYPE:定义此网络接口的格式,这里为以太网格式。:定义此网络接口的格式,这里为以太网格式。(余下的较直观。)(3)文件)文件/etc/resolv.conf内容如下:内容如下:search nameserver nameserver 52定义定义DNS服务器服务器注意:对配置文件的修改要借助编辑器注意:对配置文件的修改要借助编辑器2.3 在图形界面下配置网络参数在图形界面下配置网络参数选择选择“主菜单主菜单系统设置系统设置网络网络”选项,弹选项,弹出出“网络配置网络配置”对话框进行配置。

20、这里配置的参对话框进行配置。这里配置的参数实际上是直接对以上介绍的配置文件进行修改。数实际上是直接对以上介绍的配置文件进行修改。因此,从本质上来说,对文件的配置与图形下的因此,从本质上来说,对文件的配置与图形下的配置相同。配置相同。注意:无论用哪种方法配置网络参数,都应重新注意:无论用哪种方法配置网络参数,都应重新启动网络服务,以使得所做的改动生效。在图形启动网络服务,以使得所做的改动生效。在图形界面中可以选择界面中可以选择“主菜单主菜单系统设置系统设置服务器设服务器设置置服务服务”选项,也可以用命令选项,也可以用命令/etc/rc.d/init.d/network restart/etc/r

21、c.d/init.d/network restartVMware中Linux的网络配置1. VMware中网络的三种工作模式 VMWare中网络提供了三种工作模式,分别是: bridged(桥接模式桥接模式) host-only(主机模式主机模式) NAT(网络地址转换模式网络地址转换模式) 要合理应用它们,应该先了解一下这三种工作模式。 bridged(桥接模式桥接模式) 在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。 在桥接模式下,需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进

22、行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。使用桥接模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。 如果想利用VMWare在局域网内新建一个虚拟服务器,为局域网用户提供网络服务,就应该选择桥接模式。 host-only(主机模式主机模式) 在某些特殊的网络调试环境中,要求将真实环境和虚拟在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时就可采用环境隔离开,这时就可采用host-only模式。在模式。在host-only模模式中,所有的虚拟系统是可以相互通信

23、的,但虚拟系统和真式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。实的网络是被隔离开的。 提示提示: 在在host-only模式下,虚拟系统和宿主机器系统是可以模式下,虚拟系统和宿主机器系统是可以相互通信的,相当于这两台机器通过双绞线互连。在相互通信的,相当于这两台机器通过双绞线互连。在host-only模式下,虚拟系统的模式下,虚拟系统的TCP/IP配置信息配置信息(如如IP地址、网关地址、网关地址、地址、DNS服务器等服务器等),都是由,都是由VMnet1(host-only)虚拟网络虚拟网络的的DHCP服务器来动态分配的。服务器来动态分配的。 如果想利用如果想利

24、用VMWare创建一个与网内其他机器相隔离的创建一个与网内其他机器相隔离的虚拟系统,进行某些特殊的网络调试工作,可以选择虚拟系统,进行某些特殊的网络调试工作,可以选择host-only模式。模式。 NAT(网络地址转换模式网络地址转换模式) 使用使用NAT模式,就是让虚拟系统借助模式,就是让虚拟系统借助NAT(网络地址转网络地址转换换)功能,通过宿主机器所在的网络来访问公网。功能,通过宿主机器所在的网络来访问公网。NAT模式下模式下的虚拟系统的的虚拟系统的TCP/IP配置信息是由配置信息是由VMnet8(NAT)虚拟网络的虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚拟系统也服务器提供的,无法进行手工修改,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。就无法和本局域网中的其他真实主机进行通讯。 采用采用NAT模式最大的优势是虚拟系统接入互联网非常简模式最大的优势是虚拟系统接入互联网非常简单,不需要进行任何其他的配置,只需要宿主机器能访问互单,不需要进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论