Linux入门-基本概念

简介: 本文主要介绍linux基础概念介绍,对基本概念了解后,更好入门。

本文主要介绍linux基础概念介绍,对基本概念了解后,更好入门。

这里主要介绍一下几个概念

  1. 什么是linux
  2. GNU项目和自由软件基金会
  3. linux发行版

什么是linux

  也许大家都已经知道,Linux是由赫尔辛基大学的Linus Torvalds开发的。linux是一个类Unix内核实现,他是一个操作系统的底层核心。从某种意义上来讲,Linux可以是以Unix为其灵感来源的,所以,Linux程序和Unix程序是非常的相似,甚至系统API大部分都是一样的,事实上,大部分Unix程序都可以在Linux上编译运行。

  Linux也是开源的代码,可以自由使用、修改、发布。并且现在已经支持市面上大部分的处理器,使用非常广发。

GNU项目和自由软件基金会

  Linux能够得到发展与广泛使用,得益于开源社区无数人的贡献;

GUN GUN是GNU’s Not Unix的缩写,成为“通用公共许可证”(GPL)。虽然获得软件可能要支付一定的费用,但是此后就可以随意使用他们,通常是以源代码的形式发布。

自由有软件基金会(Free Software Foundation)由Richard Stallman创立,他是Unix及其他系统上最著名的文本编辑软件之一的GNU Emacs的开发者。他说自由软件概念的倡导者,并发起了GNU项目,这个项目的宗旨是:试图创建一个与Unix系统兼容,但是不受Unix名字和源代码私有权限制的操作系统和开发环境。可能有一天,GNU处理硬件和管理运行程序的方式会变得和Unix完全不同,但他仍然会支持Unix类型的应用程序。

  GNU项目已为舍去提供了许多Unix系统上的应用程序的仿制品。所有这些程序,即GNU软件,是在GNU通用公共许可证(GPL)的条款下发布的。你可以在http://www.gnu.org上找到该许可证的一个副本。这个许可证阐述了copyleft(是英文copyright的反话),Copyleft的目的是防止有人给只有软件的使用加上限制。下面是一些主要的应用软件项目:

  1. GCC: GNU编译器集,包括GNU C编译器
  2. G++: C++的编译器,是GCC的一部分
  3. GDB: 源代码级别的调试器
  4. GNU make: Unix make命令的免费版本
  5. **Bison:**与Unix yacc兼容的语法分析程序生成器
  6. **Bash:**命令解释器(shell)
  7. **GNU Emacs:**文本编辑器及环境
      许多其他软件包也是在遵守自由软件的原则在和GPL条款的情况下开发和发行的,包括电子表格、源代码控制工具、编译器、解释器等。
      现在么多可用的自由软件,加上linux内核,我们可以说:创建一个GNU的、只有的类Unix系统的目标已经通过Linux系统实现了。由于认识到GNU软件所做出的的贡献,现在许多通常把Linux系统成为GNU/Linux。

Linux发行版

  我们常说的Linux系统基本上是由以下几部分组成(这里是最简单的必要部分):

实际上的发行版远不止这些东西,会加入好多软件,比如最基础的桌面,还有办公软件等等。

  目前常见的Linux发行版本如下几个:

  1. Ubuntu
  2. RedHat
  3. Debian
  4. CentOS
  5. Fedora
  6. 红旗Linux (国产)
  7. DeepIn (国产)

参考《Linux程序设计》第四版

目录
相关文章
|
8月前
|
存储 Linux API
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
在计算机系统的底层架构中,操作系统肩负着资源管理与任务调度的重任。当我们启动各类应用程序时,其背后复杂的运作机制便悄然展开。程序,作为静态的指令集合,如何在系统中实现动态执行?本文带你一探究竟!
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
|
5月前
|
NoSQL Linux 编译器
GDB符号表概念和在Linux下获取符号表的方法
通过掌握这些关于GDB符号表的知识,你可以更好地管理和理解你的程序,希望这些知识可以帮助你更有效地进行调试工作。
249 16
|
5月前
|
Unix Linux
对于Linux的进程概念以及进程状态的理解和解析
现在,我们已经了解了Linux进程的基础知识和进程状态的理解了。这就像我们理解了城市中行人的行走和行为模式!希望这个形象的例子能帮助我们更好地理解这个重要的概念,并在实际应用中发挥作用。
122 20
|
4月前
|
存储 Linux Shell
Linux进程概念-详细版(二)
在Linux进程概念-详细版(一)中我们解释了什么是进程,以及进程的各种状态,已经对进程有了一定的认识,那么这篇文章将会继续补全上篇文章剩余没有说到的,进程优先级,环境变量,程序地址空间,进程地址空间,以及调度队列。
99 0
|
4月前
|
Linux 调度 C语言
Linux进程概念-详细版(一)
子进程与父进程代码共享,其子进程直接用父进程的代码,其自己本身无代码,所以子进程无法改动代码,平时所说的修改是修改的数据。为什么要创建子进程:为了让其父子进程执行不同的代码块。子进程的数据相对于父进程是会进行写时拷贝(COW)。
97 0
|
7月前
|
存储 Linux 调度
【Linux】进程概念和进程状态
本文详细介绍了Linux系统中进程的核心概念与管理机制。从进程的定义出发,阐述了其作为操作系统资源管理的基本单位的重要性,并深入解析了task_struct结构体的内容及其在进程管理中的作用。同时,文章讲解了进程的基本操作(如获取PID、查看进程信息等)、父进程与子进程的关系(重点分析fork函数)、以及进程的三种主要状态(运行、阻塞、挂起)。此外,还探讨了Linux特有的进程状态表示和孤儿进程的处理方式。通过学习这些内容,读者可以更好地理解Linux进程的运行原理并优化系统性能。
254 4
|
8月前
|
Unix Linux Shell
Linux新手入门手册
在Linux或类Unix系统中,掌握一系列基础命令和快捷键是提升工作效率的关键。这些工具和技巧不仅能帮助用户更高效地管理系统,还能在日常使用中带来极大的便利。以下是对这些基础操作与快捷键的详细解析大全。
145 9
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
413 73
|
11月前
|
Unix Linux Shell
linux入门!
本文档介绍了Linux系统入门的基础知识,包括操作系统概述、CentOS系统的安装与远程连接、文件操作、目录结构、用户和用户组管理、权限管理、Shell基础、输入输出、压缩打包、文件传输、软件安装、文件查找、进程管理、定时任务和服务管理等内容。重点讲解了常见的命令和操作技巧,帮助初学者快速掌握Linux系统的基本使用方法。
681 3
|
Ubuntu Java Linux
Linux操作系统——概念扫盲I
Linux操作系统——概念扫盲I
159 4