本文主要介绍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程序设计》第四版

Linux入门-基本概念的更多相关文章

  1. 01 Linux入门介绍

    一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以及游戏支持度不足 L ...

  2. Linux入门介绍

    Linux入门介绍 一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以 ...

  3. 3,linux入门到上手-文件权限管理与配置

    linux入门-文件权限管理与配置 一.关于linux的操作命令一般格式如下: 1,一行指令中第一个输入的部分绝对是"指令(command)"或"可可执行文件案(例如批次 ...

  4. MongoDB入门必读(概念与实战并重)

    MongoDB入门必读(概念与实战并重) 一.概述 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写.旨在为WEB应用提供可护展的高性能数据存储解决方案. MongoDB是一个 ...

  5. Linux入门基础篇

    Linux入门基础篇 Linux诞生 Linux发行版本说明 Linux官方网站 Linux内核官方网站 比较有名的Linux发行版 虚拟机(Virtual Machine),一个虚拟的系统,安装在系 ...

  6. 第三次随笔——虚拟机及Linux入门

    虚拟机及Linux入门 虚拟机的安装 对于虚拟机的概念我早有接触,但是从来没有真正的实践过,借这次作业机会我终于实践了虚拟机的安装,安装的过程较为顺利,但还是出现了以下问题: 无法选择64位的系统 解 ...

  7. Linux 入门记录:二十、Linux 包管理工具 YUM

    一.YUM(Yellowdog Updater, Modified) 1. YUM 简介 RPM 软件包形式管理软件虽然方便,但是需要手动解决软件包的依赖问题.很多时候安装一个软件首先需要安装 1 个 ...

  8. Linux(1)- 服务器核心知识、Linux入门、VMware与centeos安装、远程连接linux、linux基本命令使用

    一.服务器核心知识 1.电脑和电脑的硬件组成 现在的人们几乎无时无刻不在使用着电脑!不管是桌上型电脑(桌机).笔记型电脑(笔电).平板电脑,还是智慧型手机等等,这些东西都算是电脑.虽然接触这么多,但是 ...

  9. 【Linux】Linux入门及常见基本操作命令详解

    本文基于 Red Hat Enterprise Linux 6 一.Linux 入门体验 1.1 root用户登陆 1.2 图形化与纯字符模式切换 init 5 - 图形模式 init 3 - 纯字符 ...

随机推荐

  1. cookie与token

    cookie: 登陆后后端生成一个sessionid放在cookie中返回给客户端,并且服务端一直记录着这个sessionid,客户端以后每次请求都会带上这个sessionid, 服务端通过这个ses ...

  2. STM32H743 | FDCAN 波特率问题

    直奔主题,最近项目上接触了FDCAN,主控为STM32H743.在开发过程中存在了几点疑惑,特此记录. 波特率设置问题 CAN通讯的波特率计算方式为: BaudRate = Tq *(SYNC_SEG ...

  3. java 基本语法(五) 流程控制(二) 循环结构

    1.循环结构的四要素① 初始化条件② 循环条件 --->是boolean类型③ 循环体④ 迭代条件说明:通常情况下,循环结束都是因为②中循环条件返回false了. 2.三种循环结构:2.1 fo ...

  4. python 并发专题(十):基础部分补充(二)线程

    什么是线程 标准描述开启一个进程:开启一个进程:进程会在内存中开辟一个进程空间,将主进程的资料数据全部复制一份,线程会执行里面的代码. ***进程是资源单位, 线程是执行单位:是操作系统调度的最小单元 ...

  5. 数据可视化之PowerQuery篇(二)这个方法帮你快速计算列

    https://zhuanlan.zhihu.com/p/81846862 PowerQuery中,对两列或者多列的计算一般通过添加自定义列来实现,以下表为例, 如果需要1月和2月数据的合计,可以添加 ...

  6. Apache Hudi重磅特性解读之存量表高效迁移机制

    1. 摘要 随着Apache Hudi变得越来越流行,一个挑战就是用户如何将存量的历史表迁移到Apache Hudi,Apache Hudi维护了记录级别的元数据以便提供upserts和增量拉取的核心 ...

  7. YAPI工具配置LDAP统一用户认证

    背景:因为搭建了LDAP,因此希望将所有配置库或工具都使用LDAP进行统一用户认证,YAPI是其中一个. YAPI:使用docker-compose进行了安装,具体安装步骤自行百度. LDAP:使用d ...

  8. iis 0x80070032 Cannot read configuration file because it exceeds the maximum file size

    问题:iis部署了网站,由于webconfig文件过大(251kb,默认250kb)导致网站报错 0x80070032 Cannot read configuration file because i ...

  9. epic游戏平台如何启用认证器应用程序/二次验证码/谷歌身份验证器?

    1.登陆epic游戏平台,找到二次验证绑定界面 登陆https://www.epicgames.com/store/zh-CN/, 点右上角用户头像-[账户]. 之后点-[密码与安全] 在[双重验证] ...

  10. .Net Core AES加解密

    项目中token在传输过程中采用了AES加密,  网上找到的两篇博文都有写问题,在这里记录一下.Net Core 2.2代码中AES加解密的使用: //AES加密 传入,要加密的串和, 解密key p ...