当前位置: 首页 > article >正文

什么是Linux?

文章目录

  • 一、Linux的起源
  • 二、Linux的组成
    • 2.1、Linux组成
    • 2.2、Linux工作流程
      • 2.2.1、Linux内核
  • 三、Linux发行版
    • 3.1、什么是Linux发行版
    • 3.2、如何封装Linux发行版
    • 3.3、常见的Linux发行版
  • 四、总结


一、Linux的起源

Linux 操作系统诞生于 1991 年,是由芬兰大学生林纳斯·托瓦兹(Linus Torvalds)发起的一个项目。目前,Linux 是世界上使用最广泛的操作系统之一,被应用于从智能手机到超级计算机的各种设备中。此外,Linux 还是互联网服务器、云计算平台和许多嵌入式系统的首选操作系统。

二、Linux的组成

2.1、Linux组成

1、Linux 内核 (Kernel)
作用:内核是操作系统的核心部分,负责管理和控制计算机硬件资源,如 CPU、内存、磁盘等。它提供了进程管理、内存管理、文件系统、网络协议栈等功能。
特点:Linux 内核是开源的,遵循 GNU 通用公共许可证 (GPL),允许用户自由地使用、修改和分发。
2、引导加载程序 (Bootloader)
作用:引导加载程序负责在计算机启动时加载操作系统内核。常见的引导加载程序有 GRUB (Grand Unified Bootloader) 和 LILO (Linux Loader)。
特点:GRUB 是目前最常用的引导加载程序,支持多操作系统启动,配置灵活。
3、文件系统 (File System)
作用:文件系统负责组织和管理存储在磁盘上的数据。Linux 支持多种文件系统,如 ext4、Btrfs、XFS、F2FS 等。
特点:ext4 是最常用的 Linux 文件系统,具有良好的性能和可靠性。
4、Shell
作用:Shell 是用户与操作系统交互的命令解释器。用户可以通过 Shell 输入命令来执行各种操作。
常见 Shell:Bash (Bourne Again Shell) 是最常用的 Shell,其他常见的 Shell 还有 Zsh、Ksh、Tcsh 等。
5、用户空间工具 (User Space Utilities)
作用:这些工具提供了各种系统管理和用户操作的功能,如文件管理、网络配置、系统监控等。
常见工具:ls、cd、cp、mv、rm、grep、find、ps、top 等。
6、图形用户界面 (GUI)
作用:图形用户界面提供了可视化的操作环境,使用户可以通过窗口、图标、菜单等进行操作。
常见桌面环境:GNOME、KDE、Xfce、LXDE/LXQT 等。
显示服务器:X Window System (X11) 和 Wayland 是常见的显示服务器。
7、应用程序 (Applications)
作用:应用程序提供了各种具体的功能,如办公软件、浏览器、开发工具等。
常见应用程序:Firefox、Chromium、LibreOffice、GIMP、Vim、Emacs 等。
8、包管理系统 (Package Manager)
作用:包管理系统负责安装、更新和卸载软件包,简化了软件管理的过程。
常见包管理器:APT (Advanced Package Tool) 用于 Debian 和 Ubuntu,DNF (Dandified Yum) 用于 Fedora,Pacman 用于 Arch Linux 等。
9、系统服务 (System Services)
作用:系统服务是后台运行的程序,负责提供各种系统功能,如网络服务、定时任务、日志记录等。
常见服务:SSH 服务、Web 服务 (Apache/Nginx)、数据库服务 (MySQL/PostgreSQL)、cron 服务等。
10、配置文件 (Configuration Files)
作用:配置文件用于设置系统和应用程序的行为。常见的配置文件位于 /etc 目录下。
例子:/etc/fstab 用于管理文件系统挂载点,/etc/hosts 用于主机名解析,/etc/passwd 用于用户账户信息等。

2.2、Linux工作流程

1)Linux系统的主要组成:Linux系统内核、系统级应用程序
首先:用户使用程序(第三方程序或linux自带的程序)
其次:程序调用内核
最后:内核调度硬件,进行工作
在这里插入图片描述

2.2.1、Linux内核

1)内核介绍: Linux 操作系统的核心部分,负责管理计算机硬件资源与用户程序之间的交互调度硬件能力。如调度CPU、调度内存、调度文件系统、调度网络通讯、调度IO等。

2)Linux内核作用:

  • 进程管理:内核负责创建、销毁进程以及调度进程运行,确保多个应用程序能够高效地共享 CPU 资源。
  • 内存管理:管理和分配物理内存给不同的进程,同时通过虚拟内存机制来提高内存的使用效率。
  • 文件系统:支持多种文件系统格式(如 ext4, Btrfs, XFS 等),允许用户存储和检索数据。
  • 设备驱动:为各种硬件设备提供接口,使这些设备能够与操作系统通信。
  • 网络协议栈:实现各种网络协议(如 TCP/IP),使得机器能够与其他网络中的设备通信。
  • 安全机制:提供安全策略和机制,保护系统免受未授权访问和攻击。

3)Linux内核特点:

  • Linux 内核是按照模块化设计的,因此很多功能可以作为可加载的模块来实现,这增加了灵活性和定制性。例如,如果一台机器不需要特定类型的硬件支持,那么相应的驱动程序就可以不加载,从而节省内存和其他资源。
  • Linux 内核遵循 GNU 通用公共许可证(GPL)发布,这是一项开源许可协议,允许任何人免费使用、修改和分发内核代码。这样的许可方式促进了社区的合作,使得来自世界各地的开发者能够参与到 Linux 内核的开发和维护中来。
  • 稳定性和灵活性,Linux 内核被广泛应用于服务器、桌面系统、移动设备(如 Android 系统就是基于 Linux 内核)、嵌入式系统等领域。随着技术的发展,Linux 内核也在不断地进化和完善,以适应新的需求和技术挑战。

3)Linux内核获取:
下载地址:内核下载地址

  • 免费:下载免费
  • 开源:源代码是公开的,任何人可以下载查看并编辑
    -在这里插入图片描述

三、Linux发行版

3.1、什么是Linux发行版

内核是免费开源的:如何人都可以获取并修改内核,甚至自行集成系统级程序
Linux发行版:提供了内核+系统级程序的完整封装

3.2、如何封装Linux发行版

如何人都可以封装Linux发行版,因此有很多Linux发行版
将系统程序和内核进行封装,即可得到发行版。
在这里插入图片描述

3.3、常见的Linux发行版

基于 Linux 内核构建的操作系统,通常包括内核、用户界面、各种实用工具和应用程序。不同的发行版本可能根据目标用户群体、应用场景等因素有不同的特色和侧重点。下面是一些常见的 Linux 发行版本:
1、Ubuntu-国外用的多

  • 基于 Debian,是目前最流行的 Linux 发行版之一,特别受到初学者的欢迎。
  • 提供了友好的用户界面和大量的软件包,适用于桌面和服务器环境。
  • 由 Canonical Ltd. 公司开发和支持。

2、Debian

  • 一个历史悠久、稳定性高的发行版,适合系统管理员和高级用户。
  • 强调自由软件的理念,支持广泛的硬件平台。
  • 社区维护,拥有庞大的软件仓库。

3、Fedora

  • 由 Red Hat 赞助,专注于最新的技术和开源创新。
  • 每半年发布一个新版本,适合追求新技术的用户。
  • 用于测试未来可能会加入 Red Hat Enterprise Linux (RHEL) 的功能。

4、CentOS-国内用的多

  • 基于 RHEL 重构而成,提供长期支持,适合企业级应用。
  • 完全免费,具有与 RHEL 高度兼容的特点。

5、Arch Linux

  • 以简洁和用户自主配置著称,适合有一定 Linux 使用经验的用户。
  • 提供滚动更新,确保用户始终能够获得最新的软件版本。

6、openSUSE

  • 结合了易用性和强大功能,提供 Tumbleweed 和 Leap 两个版本。
  • Tumbleweed 是滚动发行版,Leap 则提供稳定的长期支持版本。
  • 支持广泛的硬件,适合桌面和服务器使用。

7、Linux Mint

  • 基于 Ubuntu,注重用户体验,提供了开箱即用的多媒体支持。
  • 对于不愿意使用命令行的新手用户来说是一个很好的选择。

8、Deepin

  • 中国的 Linux 发行版,强调美观和易用性。
  • 自带 Deepin 桌面环境,适合中国用户使用。

9、openKylin

  • 另一个来自中国的 Linux 发行版,旨在提供一个安全、可靠且高效的国产操作系统。
  • 支持多种硬件平台,适用于桌面和服务器环境。

10、Manjaro

  • 基于 Arch Linux,但更加用户友好,提供了图形化的安装过程和系统管理工具。
  • 适合想要尝试 Arch Linux 但又担心其复杂性的用户。

11、Gentoo

  • 以高度可定制化和性能优化著称。
  • 用户需要手动编译大部分软件,适合追求极致性能和自定义配置的用户

四、总结

以上从Linux起源、组成、工作流程、发行版等多方面来初步认识Linux。如有不足,请指正~


http://www.kler.cn/news/361771.html

相关文章:

  • 爬虫日常实战
  • Active Directory(活动目录)密码审核工具
  • WordPress+Nginx 安装教程
  • 我国首个自主可控的操作系统——华为原生鸿蒙操作系统正式发布
  • 追寻数组的轨迹,解开算法的情愫
  • DORA 机器人中间件学习教程(6)——激光点云预处理
  • 【Linux-进程间通信】vscode使用通信引入匿名管道引入
  • 前100+大型语言模型(LLMs)面试问题和路线图
  • HarmonyOS Next应用开发——图像PixelMap变换
  • [MySQL课后作业]人事管理系统的SQL实践
  • 使用Spring Boot框架打造论坛网站
  • 产业园区数字化:构建高效协同的产业新生态
  • Linux设置开机自启程序
  • SVM(支持向量机)
  • 掌握ElasticSearch(三):探索核心概念——文档、索引、分片、倒排索引
  • Python教程:制作贪吃蛇游戏存以exe文件运行
  • 将java项目jar包打包成exe服务
  • Spring Boot框架下的电影评论网站实现
  • 数据结构_day2
  • 【数据结构与算法】时间、空间复杂度详解
  • 【MySQL】入门篇—基本数据类型:使用ORDER BY进行排序
  • arcgis使用教程与简介
  • 【玉米病害识别】Python+卷积神经网络算法+人工智能+深度学习+计算机课设项目+TensorFlow+模型训练
  • Python高级爱心图案绘制教程:利用数学与代码艺术创作
  • 如何在 MySQL 中处理大量的 DELETE 操作
  • 期货外盘行情源7个市场CTP推送式服务说明