Linux入门-基本概念
本文主要介绍linux基础概念介绍,对基本概念了解后,更好入门。
这里主要介绍一下几个概念
- 什么是linux
- GNU项目和自由软件基金会
- 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的目的是防止有人给只有软件的使用加上限制。下面是一些主要的应用软件项目:
- GCC: GNU编译器集,包括GNU C编译器
- G++: C++的编译器,是GCC的一部分
- GDB: 源代码级别的调试器
- GNU make: Unix make命令的免费版本
- **Bison:**与Unix yacc兼容的语法分析程序生成器
- **Bash:**命令解释器(shell)
- **GNU Emacs:**文本编辑器及环境
许多其他软件包也是在遵守自由软件的原则在和GPL条款的情况下开发和发行的,包括电子表格、源代码控制工具、编译器、解释器等。
现在么多可用的自由软件,加上linux内核,我们可以说:创建一个GNU的、只有的类Unix系统的目标已经通过Linux系统实现了。由于认识到GNU软件所做出的的贡献,现在许多通常把Linux系统成为GNU/Linux。
Linux发行版
我们常说的Linux系统基本上是由以下几部分组成(这里是最简单的必要部分):

实际上的发行版远不止这些东西,会加入好多软件,比如最基础的桌面,还有办公软件等等。
目前常见的Linux发行版本如下几个:
- Ubuntu
- RedHat
- Debian
- CentOS
- Fedora
- 红旗Linux (国产)
- DeepIn (国产)
参考《Linux程序设计》第四版
Linux入门-基本概念的更多相关文章
- 01 Linux入门介绍
一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以及游戏支持度不足 L ...
- Linux入门介绍
Linux入门介绍 一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以 ...
- 3,linux入门到上手-文件权限管理与配置
linux入门-文件权限管理与配置 一.关于linux的操作命令一般格式如下: 1,一行指令中第一个输入的部分绝对是"指令(command)"或"可可执行文件案(例如批次 ...
- MongoDB入门必读(概念与实战并重)
MongoDB入门必读(概念与实战并重) 一.概述 MongoDB是一个基于分布式文件存储的数据库开源项目.由C++语言编写.旨在为WEB应用提供可护展的高性能数据存储解决方案. MongoDB是一个 ...
- Linux入门基础篇
Linux入门基础篇 Linux诞生 Linux发行版本说明 Linux官方网站 Linux内核官方网站 比较有名的Linux发行版 虚拟机(Virtual Machine),一个虚拟的系统,安装在系 ...
- 第三次随笔——虚拟机及Linux入门
虚拟机及Linux入门 虚拟机的安装 对于虚拟机的概念我早有接触,但是从来没有真正的实践过,借这次作业机会我终于实践了虚拟机的安装,安装的过程较为顺利,但还是出现了以下问题: 无法选择64位的系统 解 ...
- Linux 入门记录:二十、Linux 包管理工具 YUM
一.YUM(Yellowdog Updater, Modified) 1. YUM 简介 RPM 软件包形式管理软件虽然方便,但是需要手动解决软件包的依赖问题.很多时候安装一个软件首先需要安装 1 个 ...
- Linux(1)- 服务器核心知识、Linux入门、VMware与centeos安装、远程连接linux、linux基本命令使用
一.服务器核心知识 1.电脑和电脑的硬件组成 现在的人们几乎无时无刻不在使用着电脑!不管是桌上型电脑(桌机).笔记型电脑(笔电).平板电脑,还是智慧型手机等等,这些东西都算是电脑.虽然接触这么多,但是 ...
- 【Linux】Linux入门及常见基本操作命令详解
本文基于 Red Hat Enterprise Linux 6 一.Linux 入门体验 1.1 root用户登陆 1.2 图形化与纯字符模式切换 init 5 - 图形模式 init 3 - 纯字符 ...
随机推荐
- ArrayList源码分析-jdk11 (18.9)
目录 1.概述 2.源码分析 2.1参数 2.2 构造方法 2.2.1 无参构造方法 2.2.2 构造空的具有特定初始容量值方法 2.2.3构造一个包含指定集合元素的列表,按照集合的迭代器返回它们的顺 ...
- redis(十九):Redis 架构模式,特点
单机版 特点:简单 问题: 1.内存容量有限 2.处理能力有限 3.无法高可用. 主从复制 Redis 的复制(replication)功能允许用户根据一个 Redis 服务器来创建任意多个该服务器的 ...
- 机器学习实战基础(二十三):sklearn中的降维算法PCA和SVD(四) PCA与SVD 之 PCA中的SVD
PCA中的SVD 1 PCA中的SVD哪里来? 细心的小伙伴可能注意到了,svd_solver是奇异值分解器的意思,为什么PCA算法下面会有有关奇异值分解的参数?不是两种算法么?我们之前曾经提到过,P ...
- Python 如何生成 200 个激活码
请用 Python 如何生成 200 个激活码. 激活码的格式为asqE-9xRK-lqWU-QkMT 要求1: 使用随机生成时,生成数字概率为1/5,大写字母和小写字母概率各为2/5 要求2: 这2 ...
- 设计模式:decorator模式
两点: 继承同一虚接口,实现数据一致性 桥接方式指向被装饰类 目的:在不改变被装饰类功能的前提下增加新功能 特点:继承是子类和父类强耦合,桥接是低耦合 例子: class Print //抽象接口 { ...
- centos7 安装 isign
centos应该自带python和openssl,这两个就不用装了, 先安装zip和git yum install -y unzip zip yum install git 然后克隆代码: https ...
- RN开发杂记
获取屏幕尺寸const window = Dimensions.get('window');const screenHeight = Platform.OS === 'ios' ? window.he ...
- java文件导出过程 CS、BS差别
最近在做一个需求,类似和navicat工具差不多的,通过java代码吧数据库表的数据导出来.jdbc获取数据库连接,查询表数据,分批次用流写入文件txt.csv.json.xls.xlsx,搞定之后, ...
- Spring葵花宝典
一 Spring简介 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架 为了解决企业应用开发的复杂性而创建 二 Spring功能 1. 方便解耦 简化开发 Spring就是一 ...
- 篮球30S定时器设计
一.设计介绍 本设计采用74LS192作为计数器,74LS192具有同步加减计数功能,可以通过引脚电平对它设置达到清零重置的目的,可以达到对计数器清零的功能,使用两片级联74LS192分别显示十位和个 ...