本文与大家分享的是学习Linux操作系统的主要问题难点解答,比如Linux操作系统概述之类的问题,希望可以帮助到新手学习Linux得到更好的理解。
一.Linux系统由哪几部分组成?Linux内核处于什么位置?
Linux系统由四个部分组成:用户进程,系统调用接口、Linux内核子系统和硬件;Linux内核处于用户进程和硬件之间,包括系统调用接口和Linux内核子系统。
二.Linux内核由哪几部分组成?各个子系统的主要功能是什么?
(1)Linux内核除系统调用外,由五个主要的子系统组成:进程调度、内存管理、虚拟文件系统、网络和进程间通信(IPC);
(2)各个子系统的主要功能为:
1.进程调度:它控制着进程对CPU的访问,当需要选择一个进程开始运行时,由调度程序选择最应该运行的进程;
2.内存管理:它允许多个进程安全地共享主内存区域,支持虚拟内存;从逻辑上可以分为硬件无关的部分和硬件相关的部分;
3.虚拟文件系统(VFS):它隐藏了各种不同硬件的具体细节,为所有设备提供统一的接口,支持多达数十种不同的文件系统,分为逻辑文件系统和设备驱动程序;
4.网络:它提供了对各种网络标准协议的存取和各种网络硬件的支持,分为网络协议和网络驱动程序两部分;
5.进程间通信:支持进程间各种通信机制,包括共享内存、消息队列和管道等。
三.什么是进程控制块?它包含哪些基本信息?
1.Linux最基本的进程状态有三种:运行态、就绪态和阻塞态(或等待态);这三种状态之间有四种可能的转换关系:运行态->阻塞态、运行态->就绪态、就绪态->运行态和阻塞态->就绪态;
2.为了管理上的方便,将就绪态和运行态合并为一个状态—可运行态,再包括其它方面的一些改变,将进程状态划分为:可运行态、睡眠(或等待)态(分为深度睡眠态和浅度睡眠态)、暂停状态和僵死状态。
四:介绍一下死锁及避免死锁的方法。
死锁包括自死锁和ABBA死锁,1.产生死锁有四个原因:互斥使用、不可抢占、请求和保持,以及循环等待;2.避免死锁的方法有:破坏“不可剥夺”条件、破坏“请求和保持”条件、破坏“循环等待”条件。