Linux操作系统概述

205 阅读4分钟

Linux操作系统概述

1、操作系统(OS)

**定义:**OS是一种内置的程序,用来协作计算机的各种硬件,以与用户进行交互。

组成:

1.内核:内存管理、进程管理、文件管理、驱动管理

2.其他程序:库函数、shell外壳

作用: OS对下层进行软件硬件的管理工作,对上层提供良好、高效、稳定、安全的运行环境。

理解:

  1. 操作系统是一个进行“管理”的软件。

  2. 对系统管理<->对数据管理<->对PCB(Linux的具体称呼是task_struck)数据结构管理

系统调用和库函数的概念:

在开发角度,OS对外会表现为一个整体,但是会暴露自己的部分接口,供上层开发使用,这部分由OS提供的接口,叫做系统调用。

系统调用在使用上,功能比较基础,对用户的要求相对也比较高,所以,有心的开发者可以对部分系统调用进行适度封装,从而形成库,有了库,就有利于更上层用户或者开发者进行二次开发。

Operatingsystem.png

2、Linux简介

Linux 是一套免费使用和自由传播的类 Unix 操作系统(OS),是一个基于 POSIX 和 UNIX 的多用户多任务、支持多线程多 CPU 的操作系统。

Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

3、Linux和Windows

Linux在服务器上使用更加广泛而Windows在桌面更加常见。

比较WindowsLinux
界面界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 UNIX 传承下来,基本命令和操作方法也几乎一致。
驱动程序驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 下的驱动,也会比较头痛。由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。
使用使用比较简单,容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。图形界面使用简单,容易入门。文字界面,需要学习才能掌握。
学习系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。
软件每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。大部分软件都可以自由获取,同样功能的软件选择较少。

4、Linux系统组成

Linux系统主要由四个核心部分组成:内核(Kernel)、Shell文件系统(File System)和应用程序(Application)组成。

Linux组成.png

4.1 Linux内核(Kernel)

操作系统中核心部分,负责进程管理内存管理(虚拟内存、分页等)、设备驱动文件系统支持网络协议栈(TCP/IP)、安全机制

内核一方面接受来自应用层的请求并将其传递给硬件,另一方也管理底层的资源。

linux_Str.png

4.2 Shell(命令行解释器)

Shell是一个C语言程序,既是一种命令语言也是一个程序设计语言,做为用户与内核交互的接口,负责解析用户输入的命令并执行。

主要功能

  • 执行命令(lsgrepawk
  • 支持脚本编程(Shell Script
  • 提供环境变量、管道、重定向功能

4.3 文件系统(File System)

作用:管理磁盘数据的存储和访问方式,提供文件和目录的层次结构。 主要功能

  • 组织文件(目录树结构 /)。
  • 管理文件权限(chmodchown)。
  • 支持不同存储设备(磁盘、SSD、USB)。

4.4 应用程序**(Applications)**

作用:运行在用户空间的软件,提供各种功能(如浏览器、编辑器、服务器等)。

CSDN文章作者同名