LVM原理及详细操作

LVM原理及详细操作
LVM原理及详细操作

LVM

LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。首

先我们讨论以下几个LVM术语:

*物理存储介质(The physical media)

这里指系统的存储设备:硬盘,是存储系统最低层的存储单元。

*物理卷(physical volume)

物理卷就是指硬盘分区或从逻辑上与磁盘分区具有同样功能的设备

(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

*卷组(Volume Group)

LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建一个或多个“LVM分区”(逻辑卷),LVM卷组由一个或多个物理卷组成。

*逻辑卷(logical volume)

LVM的逻辑卷类似于非LVM系统中的硬盘分区,在逻辑卷之上可以建立文件系统(比如/home或者/usr等)。

*PE(physical extent)

每一个物理卷被划分为称为PE(PhysicalExtents)的基本单元,具有

唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。

*LE(logical extent)

逻辑卷也被划分为被称为LE(LogicalExtents)的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。

首先可以看到,物理卷(PV)被由大小等同的基本单元PE组成。

一个卷组由一个或多个物理卷组成。

从上图可以看到,PE和LE有着一一对应的关系。逻辑卷建立在卷组上。逻辑卷就相当于非LVM系统的磁盘分区,可以在其上创建文件系统。

下图是磁盘分区、卷组、逻辑卷和文件系统之间的逻辑关系的示意图:和非LVM系统将包含分区信息的元数据保存在位于分区的起始位置的

分区表中一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷起始

处的VGDA(卷组描述符区域)中。VGDA包括以下内容:PV描述符、VG描

述符、LV描述符、和一些PE描述符。

系统启动LVM时激活VG,并将VGDA加载至内存,来识别LV的实际物理存储位置。当系统进行I/O操作时,就会根据VGDA建立的映射机制来访

问实际的物理位置。

LVM操作:

//查看物理磁盘状态

(none):/home/liuzq/Desktop # fdisk -l

Disk /dev/sda: 107.3 GB, 107374182400 bytes

255 heads, 63 sectors/track, 13054 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x000cd6a5

Device Boot Start End Blocks Id System

/dev/sda1 1 143 1148616 82 Linux swap / Solaris

/dev/sda2 * 144 13054 103707607+ 83 Linux

Disk /dev/sdb: 107.3 GB, 107374182400 bytes

255 heads, 63 sectors/track, 13054 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x00000000

Disk /dev/sdb doesn't contain a valid partition table

//使用fdisk对/dev/sdb分区

(none):/home/liuzq/Desktop # fdisk /dev/sdb

Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel with disk identifier 0xe5260b42.

Changes will remain in memory only, until you decide to write them.

After that, of course, the previous content won't be recoverable.

The number of cylinders for this disk is set to 13054.

There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with:

1) software that runs at boot time (e.g., old versions of LILO)

2) booting and partitioning software from other OSs

(e.g., DOS FDISK, OS/2 FDISK)

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

//创建新分区

Command (m for help): new

Command action

e extended

p primary partition (1-4)

//设置成主分区

p

Partition number (1-4): 1

First cylinder (1-13054, default 1):

Using default value 1

Last cylinder, +cylinders or +size{K,M,G} (1-13054, default 13054):

Using default value 13054

Command (m for help): m

Command action

a toggle a bootable flag

b edit bsd disklabel

c toggle the dos compatibility flag

d delet

e a partition

l list known partition types

m print this menu

n add a new partition

o create a new empty DOS partition table

p print the partition table

q quit without saving changes

s create a new empty Sun disklabel

t change a partition's system id

u change display/entry units

v verify the partition table

w write table to disk and exit

x extra functionality (experts only)

//继续下一步操作之前 先确认对相应分区的修改正确无误。如果一切妥当 则写入新分区表

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

//查看分区后的物理磁盘

(none):/home/liuzq/Desktop # fdisk -l

Disk /dev/sda: 107.3 GB, 107374182400 bytes

255 heads, 63 sectors/track, 13054 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0x000cd6a5

Device Boot Start End Blocks Id System

/dev/sda1 1 143 1148616 82 Linux swap / Solaris

/dev/sda2 * 144 13054 103707607+ 83 Linux

Disk /dev/sdb: 107.3 GB, 107374182400 bytes

255 heads, 63 sectors/track, 13054 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Disk identifier: 0xe5260b42

Device Boot Start End Blocks Id System

/dev/sdb1 1 13054 104856223+ 83 Linux

//进入LVM模式

(none):/home/liuzq/Desktop # lvm

//查看LVM磁盘状态----目前没有任何LVM磁盘信息

lvm> lvmdiskscan

/dev/sda1 [ 1.10 GB]

/dev/root [ 98.90 GB]

/dev/sdb1 [ 100.00 GB]

1 disk

2 partitions

0 LVM physical volume whole disks

0 LVM physical volumes

//查看LVM的配置文件

lvm> dumpconfig

devices {

dir="/dev"

scan="/dev"

filter=["r|/dev/.*/by-path/.*|", "r|/dev/.*/by-id/.*|", "a/.*/"]

cache="/etc/lvm/.cache"

write_cache_state=1

sysfs_scan=1

md_component_detection=1

}

dmeventd {

mirror_library="libdevmapper-event-lvm2mirror.so.2.02"

snapshot_library="libdevmapper-event-lvm2snapshot.so.2.02"

}

activation {

missing_stripe_filler="/dev/ioerror"

mirror_region_size=512

reserved_stack=256

reserved_memory=8192

process_priority=-18

}

global {

umask=63

test=0

activation=1

proc="/proc"

locking_type=1

locking_dir="/var/lock/lvm"

}

shell {

history_size=100

}

backup {

backup=1

backup_dir="/etc/lvm/backup"

archive=1

archive_dir="/etc/lvm/archive"

retain_min=10

retain_days=30

}

log {

verbose=0

syslog=1

overwrite=0

level=0

indent=1

command_names=0

prefix=" "

}

//创建PV

lvm> pvcreate /dev/sdb1

No physical volume label read from /dev/sdb1

Physical volume "/dev/sdb1" successfully created

//查看PV状态

lvm> pvdisplay

"/dev/sdb1" is a new physical volume of "100.00 GB"

--- NEW Physical volume ---

PV Name /dev/sdb1

VG Name

PV Size 100.00 GB

Allocatable NO

PE Size (KByte) 0

Total PE 0

Free PE 0

Allocated PE 0

PV UUID 7daSq9-7KXU-Lvil-SUHc-ELrI-fyX7-FM9Bfy

//再次查看LVM磁盘状态

lvm> lvmdiskscan

/dev/sda1 [ 1.10 GB]

/dev/root [ 98.90 GB]

/dev/sdb1 [ 100.00 GB] LVM physical volume

1 disk

1 partition

0 LVM physical volume whole disks

1 LVM physical volume

//创建VG

lvm> vgcreate vg_test /dev/sdb1

Volume group "vg_test" successfully created

//查看VG状态

lvm> vgdisplay

--- Volume group ---

VG Name vg_test

System ID

Format lvm2

Metadata Areas 1

Metadata Sequence No 1

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 0

Open LV 0

Max PV 0

Cur PV 1

Act PV 1

VG Size 100.00 GB

PE Size 4.00 MB

Total PE 25599

Alloc PE / Size 0 / 0

Free PE / Size 25599 / 100.00 GB

VG UUID oSUogC-mV2F-b7Dg-5sFa-tztZ-NDh4-fpL6zu

//查看所有VG

lvm> vgs

VG #PV #LV #SN Attr VSize VFree

vg_test 1 0 0 wz--n- 100.00G 100.00G

//创建LV

lvm> lvcreate --size 10G --name lvm_u1 vg_test

Logical volume "lvm_u1" created

//查看LV状态

lvm> lvs

LV VG Attr LSize Origin Snap% Move Log Copy%

Convert

lvm_u1 vg_test -wi-a- 10.00G

lvm> vgs

VG #PV #LV #SN Attr VSize VFree

vg_test 1 1 0 wz--n- 100.00G 90.00G

//退出LVM配置模式

lvm> exit

Exiting.

//ext3格式化逻辑卷

(none):/home/liuzq/Desktop # mkfs -t ext3 -j /dev/vg_test/lvm_u1

mke2fs 1.41.1 (01-Sep-2008)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

655360 inodes, 2621440 blocks

131072 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=2684354560

80 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done

Creating journal (32768 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 26 mounts or

180 days, whichever comes first. Use tune2fs -c or -i to override.

//使用LVM

// 首先创建挂载点

(none):/home/liuzq/Desktop # mkdir /mnt/u1

//挂载卷

(none):/home/liuzq/Desktop # mount /dev/vg_test/lvm_u1 /mnt/u1/

//检查磁盘空间

(none):/home/liuzq/Desktop # df -m /mnt/u1/

Filesystem 1M-blocks Used Available Use% Mounted on

/dev/mapper/vg_test-lvm_u1

10080 151 9417 2% /mnt/u1

(none):/home/liuzq/Desktop # ls /mnt/u1/

lost+found

(none):/home/liuzq/Desktop # ll /boot/

total 14056

-rw------- 1 root root 512 2012-12-20 09:15 backup_mbr lrwxrwxrwx 1 root root 1 2012-12-20 09:00 boot -> .

-rw-r--r-- 1 root root 1236 2009-02-24 06:40 boot.readme -rw-r--r-- 1 root root 90137 2009-02-28 03:09 config-2.6.27.19-5-default

drwxr-xr-x 2 root root 568 2012-12-20 09:15 grub

lrwxrwxrwx 1 root root 26 2012-12-20 09:21 initrd -> initrd-2.6.27.19-5-default

-rw-r--r-- 1 root root 6199394 2012-12-20 09:21 initrd-2.6.27.19-5-default

-rw-r--r-- 1 root root 435200 2012-12-20 09:15 message

-rw-r--r-- 1 root root 141206 2009-02-28 03:13 symsets-2.6.27.19-5-default.tar.gz

-rw-r--r-- 1 root root 404804 2009-02-28 03:12 symtypes-2.6.27.19-5-default.gz

-rw-r--r-- 1 root root 119580 2009-02-28 03:10 symvers-2.6.27.19-5-default.gz

-rw-r--r-- 1 root root 1419451 2009-02-28 03:01 System.map-2.6.27.19-5-default

-rw-r--r-- 1 root root 3004323 2009-02-28 03:09 vmlinux-2.6.27.19-5-default.gz

lrwxrwxrwx 1 root root 27 2012-12-20 09:06 vmlinuz -> vmlinuz-2.6.27.19-5-default

-rw-r--r-- 1 root root 2537184 2009-02-28 03:01 vmlinuz-2.6.27.19-5-default

//在新建文件系统里复制一个大文件 例如 在/boot目录里挑个内核文件 复制到/mnt/u1

(none):/home/liuzq/Desktop # cp /boot/vmlinux-2.6.27.19-5-default.gz /mnt/u1/

//对复制过来的文件运行md5sum 并保存校验值 留待后用

(none):/home/liuzq/Desktop # md5sum /mnt/u1/vmlinux-2.6.27.19-5-default.gz

71603654a26edc4faa85054cbe2900be

/mnt/u1/vmlinux-2.6.27.19-5-default.gz

(none):/home/liuzq/Desktop # ll /mnt/u1/

total 2956

drwx------ 2 root root 16384 2013-01-05 01:43 lost+found

-rw-r--r-- 1 root root 3004323 2013-01-05 01:51

vmlinux-2.6.27.19-5-default.gz

//扩大LVM卷

假定空间不够用 准备向LVM卷增加更多空间。首先 卸载该卷 并使用lvresize命令调整卷大小。然后 还必须用e2fsck检查整个文件系统 并运行resize2fs调整该卷上ext3文件系统的大小

//卸载

(none):/home/liuzq/Desktop # umount /mnt/u1/

//调整卷大小

(none):/home/liuzq/Desktop # lvresize --size 20G /dev/vg_test/lvm_u1

Extending logical volume lvm_u1 to 20.00 GB

Logical volume lvm_u1 successfully resized

//检查文件系统

(none):/home/liuzq/Desktop # e2fsck -f /dev/vg_test/lvm_u1 e2fsck 1.41.1 (01-Sep-2008)

Pass 1: Checking inodes, blocks, and sizes

Pass 2: Checking directory structure

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

/dev/vg_test/lvm_u1: 12/655360 files (0.0% non-contiguous), 80431/2621440 blocks

//调整文件系统大小

(none):/home/liuzq/Desktop # resize2fs /dev/vg_test/lvm_u1 20G resize2fs 1.41.1 (01-Sep-2008)

Resizing the filesystem on /dev/vg_test/lvm_u1 to 5242880 (4k) blocks.

The filesystem on /dev/vg_test/lvm_u1 is now 5242880 blocks long.

在上面的例子中 卷和文件系统的大小都调整为20G。下面重新挂载卷 检查磁盘空间和之前计算的md5sum

//重新挂载

(none):/home/liuzq/Desktop # mount /dev/vg_test/lvm_u1 /mnt/u1

(none):/home/liuzq/Desktop # df -m /mnt/u1/

Filesystem 1M-blocks Used Available Use%

Mounted on

/dev/mapper/vg_test-lvm_u1

20159 159 18977 1%

/mnt/u1

(none):/home/liuzq/Desktop # ll /mnt/u1/

total 2956

drwx------ 2 root root 16384 2013-01-05 01:43 lost+found

-rw-r--r-- 1 root root 3004323 2013-01-05 01:51

vmlinux-2.6.27.19-5-default.gz

(none):/home/liuzq/Desktop # md5sum

/mnt/u1/vmlinux-2.6.27.19-5-default.gz

71603654a26edc4faa85054cbe2900be

/mnt/u1/vmlinux-2.6.27.19-5-default.gz

(none):/home/liuzq/Desktop # lvm

lvm> lvs

LV VG Attr LSize Origin Snap% Move Log Copy%

Convert

lvm_u1 vg_test -wi-ao 20.00G

lvm> vgs

VG #PV #LV #SN Attr VSize VFree

vg_test 1 1 0 wz--n- 100.00G 80.00G

lvm> lvdisplay

--- Logical volume ---

LV Name /dev/vg_test/lvm_u1

VG Name vg_test

LV UUID hO9SlO-6t9u-nHfE-tm0V-SQPC-827D-1EksZT

LV Write Access read/write

LV Status available

# open 1

LV Size 20.00 GB

Current LE 5120

Segments 1

Allocation inherit

Read ahead sectors auto

- currently set to 256

Block device 253:0

lvm> exit

Exiting.

(none):/home/liuzq/Desktop #

(none):/home/liuzq/Desktop # lvs

LV VG Attr LSize Origin Snap% Move Log Copy% Convert

lvm_u1 vg_test -wi-ao 20.00G

缩小LVM卷

缩减现有LVM卷里不需要的空间时也可以使用lvresize。和前面一样 在调整卷大小之前先卸载这个卷 然后运行e2fsck 检查文件系统 和resize2fs 调整成较小尺寸

(none):/home/liuzq/Desktop # umount /mnt/u1/

(none):/home/liuzq/Desktop # e2fsck -f /dev/vg_test/lvm_u1 e2fsck 1.41.1 (01-Sep-2008)

Pass 1: Checking inodes, blocks, and sizes

Pass 2: Checking directory structure

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

/dev/vg_test/lvm_u1: 12/1310720 files (0.0% non-contiguous), 122833/5242880 blocks

(none):/home/liuzq/Desktop # resize2fs /dev/vg_test/lvm_u1 15G resize2fs 1.41.1 (01-Sep-2008)

Resizing the filesystem on /dev/vg_test/lvm_u1 to 3932160 (4k) blocks.

The filesystem on /dev/vg_test/lvm_u1 is now 3932160 blocks long.

(none):/home/liuzq/Desktop # lvresize --size 15G /dev/vg_test/lvm_u1

WARNING: Reducing active logical volume to 15.00 GB

THIS MAY DESTROY YOUR DATA (filesystem etc.)

Do you really want to reduce lvm_u1? [y/n]: y

Reducing logical volume lvm_u1 to 15.00 GB

Logical volume lvm_u1 successfully resized

(none):/home/liuzq/Desktop # mount /dev/vg_test/lvm_u1 /mnt/u1/

(none):/home/liuzq/Desktop # lvs

LV VG Attr LSize Origin Snap% Move Log Copy% Convert

lvm_u1 vg_test -wi-ao 15.00G (none):/home/liuzq/Desktop # vgs

VG #PV #LV #SN Attr VSize VFree

vg_test 1 1 0 wz--n- 100.00G 85.00G

(none):/home/liuzq/Desktop # ll /mnt/u1/

total 2956

drwx------ 2 root root 16384 2013-01-05 01:43 lost+found

-rw-r--r-- 1 root root 3004323 2013-01-05 01:51

vmlinux-2.6.27.19-5-default.gz

(none):/home/liuzq/Desktop # md5sum

/mnt/u1/vmlinux-2.6.27.19-5-default.gz

71603654a26edc4faa85054cbe2900be

/mnt/u1/vmlinux-2.6.27.19-5-default.gz

(none):/home/liuzq/Desktop # pvs

PV VG Fmt Attr PSize PFree

/dev/sdb1 vg_test lvm2 a- 100.00G 85.00G

(none):/home/liuzq/Desktop # lvs

LV VG Attr LSize Origin Snap% Move Log Copy%

Convert

lvm_u1 vg_test -wi-ao 15.00G

删除LVM逻辑卷和组使用lvremove命令可以删除卷组里的LVM逻辑卷

(none):/home/liuzq/Desktop #lvremove /dev/ vg_test /lvm_u1

Do you really want to remove active logical volume "lvm_u1" ? [y/n]: y

Logical volume "lvm_u1" successfully removed

使用vgremove命令可以删除现有LVM卷组

(none):/home/liuzq/Desktop #vgremove vg_test

Volume group "vgusb" successfully removed

专科《操作系统原理及应用》_试卷_答案

专科《操作系统原理及应用》 一、 (共 题 共 ?分) 在手工操作阶段,存在的一个严重的问题是()。 ( 分) ??计算机的速度不快 ??计算机的内存容量不大 ?外部设备太少 ??用户使用不方便 标准答案: ? 下列选项()不是操作系统关心的。 ( 分) ??管理计算机硬件 ??提供用户操作的界面 ?管理计算机资源 ??高级程序设计语言的编译 标准答案: 批处理最主要的一个缺点是()。 ( 分) ??用户无法与程序交互 ??一次只能执行一个程序 ?没有实现并发处理 ?????的利用率较低 标准答案:? 当 ??执行用户程序的代码时,处理器处于()。 ( 分) ??自由态 ??用户态 ??核心态 ??就绪态 标准答案: ? 根据中断信号的来源,()引起的中断称为外中断。 ( 分) ?????完成 ??内存越界 ?用户态下执行特权指令 ??数据传输出错 标准答案:? ? 作业的处理一般分为多个作业步,连接成功后,下一步的工作是()。 ( 分) ??运行 ??编辑 ??检测 ??连接 标准答案:? 操作系统向用户提供了二种使用计算机的接口,其中一个是()。 ( 分) ??函数库 ??子程序调用 ??中断机制 ??系统调用 标准答案: 并发执行的一个特点是()。 ( 分) ??结果可再现 ??程序与计算不再一一对应 ?计算结果会出错 ??不会顺序执行 标准答案:

进程的基本状态有三种,其中一个是()。 ( 分) ??开始态 ??就绪态 ??唤醒态 ??结束态 标准答案: ? 对进程进行控制的原语,完成的功能包括()。 ( 分) ??执行就绪的进程 ??唤醒等待的进程 ?将运行程序就绪 ??淘汰出错的进程 标准答案: ? 资源描述器中应包含的内容有()。 ( 分) ??分配标志 ??等待队列的指针 ?唤醒程序的地址 ??资源分配程序入口地址 标准答案: ? 死锁四个必要条件中,不能破坏的是()。 ( 分) ??互斥条件 ??部分分配 ??不剥夺条件 ??等待条件 标准答案:? ? 批处理系统中,作业的状态可分为多种,其中一种为()。 ( 分)??提交 ??创建 ??就绪 ??等待 标准答案:? ? 评价作业调度的性能时,衡量用户满意度的准确指标应该是()。 ( 分) ??周转时间 ??带权周转时间 ?平均周转时间 ??平均带权周转时间 标准答案: ? 在进程访问内存时完成的地址变换,称为()。 ( 分) ??局部地址映射 ??全局地址映射 ?动态地址映射 ??静态地址映射 标准答案: ? 当分区采用首次适应算法时,自由主存队列必须按()排序。 ( 分) ??空闲区的首址递增 ??空闲区的首址递减 ?空闲区的大小递增 ??空闲区的大小递减 标准答案:? ? 根据对设备占用方式的不同,设备分配技术中的一种是()。 ( 分) ??动态分配 ??静态分配 ??永久分配 ??虚拟分配

操作系统原理及应用试题附答案

操作系统原理及应用试题附答案 第一部分选择题一、单项选择题(本大题共4小题,每小题2分,共8分) 1、从静态角度来看,进程由__________、数据集合、进程控制块及相关表格三部分组成。()A、JCB B、PCB C、程序段 D、I/O缓冲区 2、请求页式管理方式中,首先淘汰在内存中驻留时间最长的帧,这种替换策略是_____.()A、先进先出法(FIFO) B、最近最少使用法(LRU) C、优先级调度 D、轮转法 3、文件安全管理中,___________安全管理规定用户对目录或文件的访问权限。()A、系统级 B、用户级 C、目录级 D、文件级 4、排队等待时间最长的作业被优先调度,这种算法是___________。A、优先级调度 B、响应比高优先 C、短作业优先D、先来先服务第二部分非选择题 二、填空题(本大题共16小题,每小题1分,共16分) 5、常规操作系统的主要功能有:_处理机管理_、存贮管理、设备管理、文件管理以及用户界面管理。 6、操作系统把硬件全部隐藏起来,提供友好的、易于操作的用户界面,好象是一个扩展了的机器,即一台操作系统虚拟机。 7、进程管理的功能之一是对系统中多个进程的状态转换进行控制。 8、逻辑_文件是一种呈现在用户面前的文件结构。 9、操作系统中实现进程互斥和同步的机制称为同步机构_。 10、内存中用于存放用户的程序和数据的部分称为用户区(域)。 11、存贮器段页式管理中,地址结构由段号、段内页号和页内相对地址三部分组成。 12、在操作系统中,通常用户不使用设备的物理名称(或物理地址),而代之以另外一种名称来操作,这就是逻辑设备名。 13、在操作系统中,时钟常有两种用途:报告日历和时间,对资源使用记时。 14、库文件允许用户对其进行读取、执行,但不允许修改.

操作系统原理与应用第2章文件管理

第2章文件管理习题解答 1.什么是文件和文件系统?文件系统有哪些功能? 【解答】文件是具有符号名而且在逻辑上具有完整意义的信息项的有序序列。 文件系统是指操作系统系统中实现对文件的组织、管理和存取的一组系统程序,它实现对文件的共享和保护,方便用户“按名存取”。 文件系统的功能“ (1)文件及目录的管理。如打开、关闭、读、写等。 (2)提供有关文件自身的服务。如文件共享机制、文件的安全性等。 (3)文件存储空间的管理。如分配和释放。主要针对可改写的外存如磁盘。(4)提供用户接口。为方便用户使用文件系统所提供的服务,称为接口。文件系统通常向用户提供两种类型的接口:命令接口和程序接口。不同的操作系统提供不同类型的接口,不同的应用程序往往使用不同的接口。 2.Linux文件可以根据什么分类?可以分为哪几类?各有什么特点? 【解答】在Linux操作系统中,文件可以根据内部结构和处理方式进行分类。 在Linux操作系统中,可以将文件分为普通文件、目录文件、特别文件三类。 各类文件的特点是: 普通文件:由表示程序、数据或正文的字符串构成的文件,内部没有固定的结构。这种文件既可以是系统文件,也可以是库文件或用户文件。 目录文件:由文件目录构成的一类文件。对它的处理(读、写、执行)在形式上与普通文件相同。 特别文件:特指各种外部设备,为了便于管理,把所有的输入/输出设备都按文件格式供用户使用。这类文件对于查找目录、存取权限验证等的处理与普通文件相似,而其他部分的处理要针对设备特性要求做相应的特殊处理。 应该指出,按不同的分类方式就有不同的文件系统。 3.什么是文件的逻辑结构?什么是文件的物理结构?Linux文件系统分别采用什么样的结构?有什么优点和缺点? 【解答】文件的逻辑结构:用户对文件的观察的使用是从自身处理文件中数据时采用的组织方式来看待文件组织形式。这种从用户观点出发所见到的文件组织方式称为文件的逻辑组织。 文件的物理结构:从系统的角度考察文件在实际存储设备上的存放形式,又称为文件的存储结构。 在Linux系统中,所有文件的逻辑结构都被看作是流式文件,系统不对文件进行格式处理。 在Linux系统中,文件的物理结构采用的是混合多重索引结构,即将文件所占用盘块的盘块号,直接或间接地存放在该文件索引结点的地址项中。 在Linux系统中,采用混合索引结构的优点是,对于小文件,访问速度快;对于大中

专科《操作系统原理及应用》

[试题分类]:专科《操作系统原理及应用》_08004260 [题型]:单选 [分数]:2 1.批处理最主要的一个缺点是()。 A.用户无法与程序交互 B.没有实现并发处理 C.CPU的利用率较低 D.一次只能执行一个程序 答案:A 2.磁盘空闲块常用的组织形式有三种,其中一种为()。 A.空闲块连续 B.空闲块索引 C.空闲块压缩 D.空闲块链 答案:D 3.常用的文件物理结构有三种,其中的一种形式是()。 A.记录文件 B.压缩文件 C.索引文件 D.流式文件 答案:C 4.批处理系统中,作业的状态可分为多种,其中一种为()。 A.提交 B.就绪 C.创建 D.等待 答案:A 5.并发执行的一个特点是()。 A.计算结果会出错 B.不会顺序执行 C.程序与计算不再一一对应 D.结果可再现

6.下列选项()不是操作系统关心的。 A.管理计算机资源 B.提供用户操作的界面 C.高级程序设计语言的编译 D.管理计算机硬件 答案:C 7.当CPU执行用户程序的代码时,处理器处于()。 A.核心态 B.就绪态 C.自由态 D.用户态 答案:D 8.根据对设备占用方式的不同,设备分配技术中的一种是()。 A.动态分配 B.永久分配 C.静态分配 D.虚拟分配 答案:D 9.评价作业调度的性能时,衡量用户满意度的准确指标应该是()。 A.周转时间 B.平均周转时间 C.带权周转时间 D.平均带权周转时间 答案:C 10.在手工操作阶段,存在的一个严重的问题是()。 A.外部设备太少 B.用户使用不方便 C.计算机的速度不快 D.计算机的内存容量不大 答案:B 11.作业的处理一般分为多个作业步,连接成功后,下一步的工作是()。

《操作系统原理》考题及答案

《操作系统原理》期末考试题 、单项选择题(每题 分,共分) 1. 操作系统是一种( )。 A. 系统软件 B. 系统硬件 C. 应用软件 D. 支援软件 2. 分布式操作系统与网络操作系统本质上的不同在于( )。 A. 实现各台计算机这间的通信 B. 共享网络中的资 源 C.满足较在规模的应用 D. 系统中多台计算机协作完成同一任务 3. 下面对进程的描述中,错误的是( A.进程是动态的概念 B. C.进程是指令的集合 D. 4?临界区是指并发进程中访问共享变量的( )段。 5. 要求进程一次性申请所需的全部资源,是破坏了死锁必要条件中的哪一条 。 A.互斥 B. 请求与保持 C. 不剥夺 D. 循环等待 6. 以下哪种存储管理不可用于多道程序系统中( )。 A.单一连续区存储管理 B.固定式区存储管理 C.可变分区存储管理 D.段式存储管理 7. 在可变式分区存储管理中,某作业完成后要收回其主存空间,该空间可能与 相邻空闲区合 并,修改空闲区表,使空闲区数不变且空闲区起始地址不变的 )。 进程执行需要处理机 进程是有生命期的 A.管理信息 B.信息存储 C. 数据 D. 程序

情况是()。 A.无上邻空闲区也无下邻空闲区 C.有下邻空闲区但无上邻空闲区 8. 系统“抖动”现象的发生不是由 A.置换算法选择不当 C.主存容量不足 9. 在进程获得所需全部资源,唯却 A.运行 B.阻塞 10. 要页式存储管理系统中,将主存等分成( A.块 B.页B. D. B. D. CPU 时,有上邻空闲区但无下邻空闲区 有上邻空闲区也有下邻空闲 区)引起的。 交换的信息量过大 请求页式管理方案 进程处于( C.就绪 )。 C. 段长 状态。 D.新建 D.段

专科《操作系统原理及应用》_试卷_答案

?????? 专科《操作系统原理及应用》 一、(共75题,共150分) 1. 在手工操作阶段,存在的一个严重的问题是()。(2分) A.计算机的速度不快 B.计算机的内存容量不大 C.外部设备太少 D.用户使用不方便 .标准答案:D 2. 下列选项()不是操作系统关心的。(2分) A.管理计算机硬件 B.提供用户操作的界面 C.管理计算机资源 D.高级程序设计语言的编译 .标准答案:D 3. 批处理最主要的一个缺点是()。(2分) A.用户无法与程序交互 B.一次只能执行一个程序 C.没有实现并发处理 D.CPU的利用率较低 .标准答案:A 4. 当CPU执行用户程序的代码时,处理器处于()。(2分) A.自由态 B.用户态 C.核心态 D.就绪态 .标准答案:B 5. 根据中断信号的来源,()引起的中断称为外中断。(2分) A.I/O完成 B.内存越界 C.用户态下执行特权指令 D.数据传输出错 .标准答案:A 6. 作业的处理一般分为多个作业步,连接成功后,下一步的工作是()。(2分) A.运行 B.编辑 C.检测 D.连接 .标准答案:A 7. 操作系统向用户提供了二种使用计算机的接口,其中一个是()。(2分) A.函数库 B.子程序调用 C.中断机制 D.系统调用 .标准答案:D 8. 并发执行的一个特点是()。(2分) A.结果可再现 B.程序与计算不再一一对应 C.计算结果会出错 D.不会顺序执行 .标准答案:B 9. 进程的基本状态有三种,其中一个是()。(2分) A.开始态 B.就绪态 C.唤醒态 D.结束态 .标准答案:B 10. 对进程进行控制的原语,完成的功能包括()。(2分) A.执行就绪的进程 B.唤醒等待的进程 C.将运行程序就绪 D.淘汰出错的进程 .标准答案:B 11. 资源描述器中应包含的内容有()。(2分) A.分配标志 B.等待队列的指针 C.唤醒程序的地址 D.资源分配程序入口地址 .标准答案:D

操作系统原理与应用

测验:第一章测验( 共10 题,满分100.00 分) 1 单选Windows是()操作系统。 A. 单用户单任务 B. 单用户多任务 C. 多用户多任务 D. 命令行窗口 正确答案为: B 2 单选以下()是分时多用户多任务操作系统。 A. DOS B. Windows NT C. OS/2 D. UNIX 正确答案为: D 3 多选引入操作系统的目的有()。 A. 有效性 B. 方便性 C. 可扩充性 D. 开放性 正确答案为: ABCD 4 多选操作系统的特征有()。 A. 并发 B. 共享 C. 虚拟 D. 异步 正确答案为: ABCD 5 单选以下哪个不属于操作系统? A. Windows B. Linux C. Oracle D. MacOS 正确答案为: C 6 单选以下描述正确的是? A. 批处理系统出现早于分时系统 B. Linux就是批处理系统 C. 批处理系统可以同时执行多个任务 D. Windows是批处理操作系统 正确答案为: A

7 单选以下哪个是移动操作系统? A. Linux B. Android C. WindowsXP D. Windows2003 正确答案为: B 8 单选Linux最早发布于哪一年? A. 1990 B. 1991 C. 1992 D. 1993 正确答案为: B 9 单选第一个企业版的Linux是哪一个? A. CentOS B. Ubuntu C. Debian D. RedHat 正确答案为: D 10 单选以下哪个不是内核的组成部分? A. 系统调用接口 B. 进程管理 C. C语言编译器 D. 驱动程序 正确答案为: C 测验:第二章测验( 共10 题,满分100.00 分) 1 单选进程在Linux中的表示是一个()。 A. 代码块 B. 结构体 C. 程序体 D. 封装体 正确答案为: B 2 多选进程通信的方式有()。 A. 管道 B. 消息队列 C. 套接字 D. 共享存储 正确答案为: ABCD 3 多选下列选项属于线程的特点的是()。

操作系统原理与应用(第2版)清大版第6章习题参考答案

1、文件是具有名字的一组信息序列。 文件系统:OS中负责管理和存取文件信息的软件机构。 功能: a.能实现各种对文件操作的命令(打开、读等)。 b.对文件存储空间的管理。 c.实现对文件的保护和共享。 d.为用户提供统一的文件使用方式。 e.支持相关用户进程间的信息通信。 f.对文件实施严格的维护。 2、因为文件系统是用户与操作系统内核的界面。用户都是通过文件系统得到操作系统的服务。 3、按用途可分为以下三类: 系统文件:由OS及其它系统程序的信息所组成的文件。这类文件对用户不直接开放,只能通过OS提供的系统调用为用户服务。 库文件:由标准子程序及常用的应用程序组成的文件,这类文件允许用户使用,但用户不能修改它们。 用户文件:由用户委托系统保存、管理的文件,如源程序、目标程序、计算结果等。 4、因为外部设备是用户使用的,为了方便用户就将外部设备也看成“文件”。 5、文件的逻辑组织:用户给出的文件组织。 文件的物理组织,即文件在外存的存贮方式。 在外存上的存放方式基本上有三种:链接、连续和索引。 连续方式只能用于顺序存取,其它方式则都适用。 6、优点:允许各用户之间的文件同名,利于用户之间的文件共享,利于描述在实际中往往需要的多层次的文件结构形式。 分解法有利于文件共享。在多级目录结构中,同一目录中的文件不能重名,但不同目录中的文件可以重名。 8、打开文件的目的就是建立从用户文件管理机构到具体文件控制块之间的一条联络通路。打开文件的系统调用是open,其命令格式为:fd=open(pathname,flags,modes)。 打开文件的好处: (1)对文件的存取权限作进一步限制。 (2)访问文件时不再使用文件名。 关闭文件的命令格式为:close(fd)。其中,fd为欲关闭文件的打开文件号。 关闭文件是打开文件的逆过程,切断打开文件建立的那条联络通路。一般说来,关闭只是表示当前文件不能再用了,但系统中还保留它,以后需要用时可再打开,而文件一旦被删除,就永远从系统中消失了。

Linux操作系统原理与应用

操作系统概述 在计算机应用的过程中,人们接触最频繁的是操作系统,例如磁盘操作系统DOS、易于使用的图形界面操作系统Windows、开放源代码的操作系统Linux等。但是,操作系统往往是比较复杂的系统软件,相对于使用而言,要掌握它的运行机制就不是那么容易。 1.1 认识操作系统 可以从不同的角度来认识操作系统。从使用者的角度看,操作系统使得计算机易于使用。从程序员的角度看,操作系统把软件开发人员从与硬件打交道的繁琐事务中解放出来。从设计者的角度看,有了操作系统,就可以方便地对计算机系统中的各种软、硬件资源进行有效的管理。 1.1.1 从使用者角度 人们对操作系统的认识一般是从使用开始的。打开计算机,呈现在眼前的首先是操作系统。如果用户打开的是操作系统字符界面,就可以通过命令行完成需要的操作。例如,要在Linux下复制一个文件,则输入: cp /floppy/TEST mydir/test 上述命令可以把/floppy目录下的TEST文件复制到mydir目录下,并更名为test。 为什么可以这么方便地复制文件?操作系统为此做了什么工作?首先,文件这个概

念是从操作系统中衍生出来的。如果没有文件这个实体,就必须指明数据存放的具体物理位置,即位于哪个柱面、哪个磁道、哪个扇区。其次,数据转移过程是复杂的I/O操作,一般用户无法关注这些具体的细节。最后,这个命令的执行还涉及其他复杂的操作,但是,因为有了操作系统,用户只需要知道文件名,其他繁琐的事务完全由操作系统去处理。 如果用户在图形界面下操作,上述处理就更加容易。实际上,图形界面的本质也是执行各种命令,例如,如果复制一个文件,那么就要调用cp命令,而具体的复制操作最终还是由操作系统去完成。 因此,不管是敲击键盘或者单击鼠标,这些简单的操作在指挥着计算机完成复杂的处理过程。正是操作系统把繁琐留给自己,把简单留给用户。 1.1.2 从程序开发者角度 从程序开发者的角度看,不必关心如何在内存存放变量、数据,如何从外存存取数据,如何把数据在输出设备上显示出来,等等。例如,cp命令的C语言实现片段如下: inf=open("/floppy/TEST",O_RDONLY,0); out=open("/mydir/test",O_WRONLY,0600); do{ l=read(inf,buf,4096); write(outf,buf,l); } while(l); close(outf); close(inf); 在这段程序中,用到四个函数open(),close(),write()和read(),它们都是C语言函数库中的函数。进一步研究可知,这些函数都要涉及I/O操作,因此,它们的实现必须调用操作系统所提供的接口,也就是说,打开文件、关闭文件、读写文件的真正操作是由操作系统完成的。这些操作非常繁琐,对于不同的操作系统其具体实现也可能不同,程序开发者不必关心这些具体操作。 1.1.3 从操作系统在整个计算机系统中所处位置 如果把操作系统放在整个计算机系统中考虑,则如图1.1所示。

操作系统原理与实践教程习题答案

第1章操作系统概论 (1) 试说明什么是操作系统,它具有什么特征?其最基本特征是什么? 解: 操作系统就是一组管理与控制计算机软硬件资源并对各项任务进行合理化调度,且附加了各种便于用户操作的工具的软件层次。 现代操作系统都具有并发、共享、虚拟和异步特性,其中并发性是操作系统的最基本特征,也是最重要的特征,其它三个特性均基于并发性而存在。 (2) 设计现代操作系统的主要目标是什么? 解: 现代操作系统的设计目标是有效性、方便性、开放性、可扩展性等特性。其中有效性指的是OS应能有效地提高系统资源利用率和系统吞吐量。方便性指的是配置了OS后的计算机应该更容易使用。这两个性质是操作系统最重要的设计目标。开放性指的是OS应遵循世界标准规范,如开放系统互连OSI国际标准。可扩展性指的是OS应提供良好的系统结构,使得新设备、新功能和新模块能方便地加载到当前系统中,同时也要提供修改老模块的可能,这种对系统软硬件组成以及功能的扩充保证称为可扩展性。 (3) 操作系统的作用体现在哪些方面? 解: 现代操作系统的主要任务就是维护一个优良的运行环境,以便多道程序能够有序地、高效地获得执行,而在运行的同时,还要尽可能地提高资源利用率和系统响应速度,并保证用户操作的方便性。因此操作系统的基本功能应包括处理器管理、存储器管理、设备管理和文件管理。此外,为了给用户提供一个统一、方便、有效的使用系统能力的手段,现代操作系统还需要提供一个友好的人机接口。在互联网不断发展的今天,操作系统中通常还具备基本的网络服务功能和信息安全防护等方面的支持。 (4) 试说明实时操作系统和分时操作系统在交互性、及时性和可靠性方面的异同。 解: 交互性:分时系统能够使用户和系统进行人-机对话。实时系统也具有交互性, 但人与系统的交互仅限于访问系统中某些特定的专用服务程序。 及时性:分时系统的响应时间是以人能够接受的等待时间为标准,而实时控制系 统对响应时间要求比较严格,它是以控制过程或信息处理中所能接受的延迟为标 准。 可靠性:实时系统要求系统可靠性要比分时系统高。在实时系统中往往采用多级 容错措施来保证系统的安全及数据的安全。 (5) 试比较分布式操作系统和网络操作系统的异同。 解: 它们的区别在于:分布式操作系统的设计思想和网络操作系统是不同的,这决定了它们在结构、工作方式和功能上也不同。网络操作系统要求网络用户在使用网络资源时首先必须了解网络资源,网络用户必须知道网络中各个计算机的功能与配置、软件资源、网络文件结构等情况,在网络中如果用户要读一个共享文件时,用户必须知道这个文件放在哪一台计算机的哪一个目录下;分布式操作系统是以全局方式管理系统资源的,它可以为用户任意调度网络资源,并且调度过程是“透明”的。 (6) 什么是操作系统虚拟机结构?它有什么好处?

专科《操作系统原理及应用》_试卷_答案

专科《操作系统原理及应用》 一、(共75题,共150分) 1. 在手工操作阶段,存在的一个严重的问题是()。(2分) A.计算机的速度不快 B.计算机的内存容量不大 C.外部设备太少 D.用户使用不方便 .标准答案:D 2. 下列选项()不是操作系统关心的。(2分) A.管理计算机硬件 B.提供用户操作的界面 C.管理计算机资源 D.高级程序设计语言的编译 .标准答案:D 3. 批处理最主要的一个缺点是()。(2分) A.用户无法与程序交互 B.一次只能执行一个程序 C.没有实现并发处理 D.CPU的利用率较低 .标准答案:A 4. 当CPU执行用户程序的代码时,处理器处于()。(2分) A.自由态 B.用户态 C.核心态 D.就绪态 .标准答案:B 5. 根据中断信号的来源,()引起的中断称为外中断。(2分) A.I/O完成 B.内存越界 C.用户态下执行特权指令 D.数据传输出错 .标准答案:A 6. 作业的处理一般分为多个作业步,连接成功后,下一步的工作是()。(2分) A.运行 B.编辑 C.检测 D.连接 .标准答案:A 7. 操作系统向用户提供了二种使用计算机的接口,其中一个是()。(2分) A.函数库 B.子程序调用 C.中断机制 D.系统调用 .标准答案:D 8. 并发执行的一个特点是()。(2分) A.结果可再现 B.程序与计算不再一一对应 C.计算结果会出错 D.不会顺序执行 .标准答案:B 9. 进程的基本状态有三种,其中一个是()。(2分) A.开始态 B.就绪态 C.唤醒态 D.结束态.标准答案:B 10. 对进程进行控制的原语,完成的功能包括()。(2分) A.执行就绪的进程 B.唤醒等待的进程 C.将运行程序就绪 D.淘汰出错的进程 .标准答案:B 11. 资源描述器中应包含的内容有()。(2分) A.分配标志 B.等待队列的指针 C.唤醒程序的地址 D.资源分配程序入口地址 .标准答案:D 12. 死锁四个必要条件中,不能破坏的是()。(2分) A.互斥条件 B.部分分配 C.不剥夺条件 D.等待条件 .标准答案:A 13. 批处理系统中,作业的状态可分为多种,其中一种为()。(2分) A.提交 B.创建 C.就绪 D.等待 .标准答案:A 14. 评价作业调度的性能时,衡量用户满意度的准确指标应该是()。(2分) A.周转时间 B.带权周转时间 C.平均周转时间 D.平均带权周转时间 .标准答案:B 15. 在进程访问内存时完成的地址变换,称为()。(2分) A.局部地址映射 B.全局地址映射 C.动态地址映射 D.静态地址映射 .标准答案:C 16. 当分区采用首次适应算法时,自由主存队列必须按()排序。(2分) A.空闲区的首址递增 B.空闲区的首址递减 C.空闲区的大小递增 D.空闲区的大小递减 .标准答案:A 17. 根据对设备占用方式的不同,设备分配技术中的一种是()。(2分) A.动态分配 B.静态分配 C.永久分配 D.虚拟分配 .标准答案:D 18. 常用的缓冲区组织方法有三种,其中的一种是()技术。(2分) A.单缓冲 B.双缓冲 C.字符缓冲 D.数字缓冲 .标准答案:B

(完整版)操作系统原理在生活中的应用

班级:电子商务092 学号: 姓名:陈家文 指导教师: 日期:2010-12-12

以下是生活中运用到操作系统思想的例子: 1、管理对象资源有限性思想 在现实生活中,资源是极其有限的,循环经济就是最大限度地发挥资源的利用率,许多资源是不可再生的,在管理中必须树立资源是极其宝贵的思想,管理策略的选定是紧密围绕最大限度利用资源来决定。操作系统的管理策略就是建立在一定的硬件资源基础上的。 例如,计算机系统的速度慢,就操作系统而言,不能通过更换CPU、扩充内存、增加Cache、提高I/O设备的处理速度来解决。而是改进操作系统的管理策略,使CPU和各种设备谐调地动起来,避免出现空转等待情况。换言之,再大的内存,如Windows系统,当打开足够多的任务后,系统的内存也会被耗尽,甚至造成死机现象。总之,操作系统的各种管理策略必须建立在有限资源的思想上,这是根本性的问题。 2、管理策略要体现平等的思想 在分时操作系统中,处理机调度使用时间片轮转法。该方法要求将一段时间划分为固定大小的很小的时间段,称为时间片,每个进程一次只能占用一个时间片的处理机时间,即使进程运行没有结束,也必须被撤换下来,以便就绪的下一个进程使用;被换下的进程直到下一次轮到自己时才能使用处理机。这种策略就是现实生活中平等思想的最好体现。如法律面前人人平等,不论官位高低、富有和贫贱都是平等的。平等的思想,克服了有些进程长时间占用处理机而造成其他一些进程长时间等待,进而造成多个用户在使用计算机时,某些用户一直得不到或长时间得不到系统服务,最终造成系统响应差的问题。 3、均衡与优先相统一的思想 操作系统中,只要有多选一的情况,就要发生调度,如多个后备状态的作业在进入执行状态时,多个就绪进程进入运行状态时,多个虚页进行交换时,一个设备分配给多个进程时,都会发生调度。只要调度,就存在一个策略选择的问题。如作业调度时的短作业优先法、最高响应比优先法、先来先服务法、优先级法、轮转法等。 各种调度策略总是按某一规则来确定优先顺序,先来先服务法是以作业到达系统的时间来确定优先顺序,但这种方法会造成估计执行时间很短的作业在那些长作业后面到达系统的话,等待时间会过长,系统的吞吐率也会降低。短作业优先法则以最短的作业优先的策略,提高了吞吐率,然而会造成一些长作业永远得不到调度执行的机会。 对这些问题的解决,就出现了最高响应比优先法,它同时考虑每个作业的等待时间W和估计执行时间T,从R=(W+T)/T可得出作业的优先级随等待时间而发生变化,从而避免长时等待问题和平均主义思想。故一个好的调度策略的选择,充分体现了现实生活中的均衡与优先思想。如医院看病,设有急诊科和普通科室,两者的结合满足了不同情况病人的需求;再如用电紧张时,错峰用电的策略;干部的换届和轮岗等。在一个实际系统中,调度策略可能采用多种,从而适应各种情况。

操作系统原理-进程管理与进程通信

广州大学学生实验报告 一、实验目的 1、掌握进程的概念,明确进程的含义 2、认识并了解并发执行的实质 3、了解什么是管道 4、熟悉UNIX/LINUX支持的管道通信方式 二、实验器材 1、计算机一台。 2、Linux 三、实验内容 1、编写一段程序,使用系统调用fork( )创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示'a',子进程分别显示字符'b'和字符'c'。试观察记录屏幕上的显示结果,并分析原因。 2、修改上述程序,每一个进程循环显示一句话。子进程显示'daughter …'及'son ……',父进程显示'parent ……',观察结果,分析原因。 3、编写程序实现进程的管道通信。用系统调用pipe( )建立一管道,二个子进程P1和P2分别向管道各写一句话: Child 1 is sending a message! Child 2 is sending a message! 父进程从管道中读出二个来自子进程的信息并显示(要求先接收P1,后P2)。 四、实验步骤、记录和结果 实验二进程管理实验 (一)进程的创建实验 1.使用vi输入下面代码

编译运行结果: 从执行情况来看,可能输出bac,bca... 2.使用vi输入下面代码

编译运行结果:

分析原因: 1、从进程并发执行来看,各种情况都有可能。上面的三个进程没有同步措施,所以父进程与子进程的输出内容会叠加在一起。输出次序带有随机性。 2、由于函数printf( )在输出字符串时不会被中断,因此,字符串内部字符顺序输出不变。但由于进程并发执行的调度顺序和父子进程抢占处理机问题,输出字符串的顺序和先后随着执行的不同而发生变化。这与打印单字符的结果相同。 实验总结: 通过这次实验,即时在多进程中printf()在输出字符串时不会被中断。调用fork()会使运行着的程序分成2个(几乎)完全一样的进程,每个进程都启动一个从代码的同一位置开始执行的

操作系统原理及应用实验指导书

河南财经政法大学实验报告2010年---2011年第2学期 院系:计算机与信息工程学院 专业:信息管理与信息系统 课程名称:操作系统原理及应用 班级:080704 姓名:学号:20084070411 指导教师:李笑雪

实验一:操作系统环境 实验目的: 1.学习和掌握Linux操作系统的安装; 2.掌握Linux操作系统的基本系统设置。 实验内容: 1.安装Linux,掌握其安装过程; 2.观察并熟悉Linux的启动过程和桌面环境; 3.记录GNOME面板任务栏中的图标名称和功能。 4.在GNOME面板中,单击“主菜单”图标,记录子面板中的子菜单项。 3.编辑一个文本文件,将该文件保存在/root目录中,文件命名为“我的文件”。 实验步骤: 评语: 日期:年月日

实验二:用户界面与Shell命令 实验目的: 1. 掌握图形化用户界面和字符界面下使用Shell命令的方法。 2. 掌握ls、cd等Shell命令的功能。 3. 掌握重定向、管道、通配符、历史记录等的使用方法。 实验内容: 1. 查看/etc目录下所有文件和子目录的详细信息。 2. 查看当前目录 3. 用cat命令在用户主目录下创建一名为f1的文本文件,内容为: Linux is useful for us all You can never imagine how great it is. 4. 向f1文件增加以下内容: Why not have a try? 5. 分页显示/etc目录中所有文件和子目录的信息。 6. 仅显示/etc目录中前15个文件和子目录。 7. 显示/bin/目录中所有以c为首字母的文件和目录。 8. 显示/bin/目录中所有以c为首字母,文件名只有3个字符的文件和目录。 9. 重复上一步操作。 10.查看刚执行过的5个命令。 实验步骤: 1.ls -al/etc 2.pwd 3.cat>f1 4.cat>>f1;cat f1 5.ls -al/etc|more 6.ls -al/etc|head -15 7.ls/bin/c* 8.ls/bin/c?? 9.!! 10.history 5 评语: 日期:年月日

相关文档
最新文档