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 - 纯字符 ...
随机推荐
- Drf06 /drf总结
Drf06 /drf总结 目录 Drf06 /drf总结 1. restful规范 2. drf组件认证的实现过程? 3. drf组件中权限的实现过程? 4. drf组件中节流的实现方式? 5. 什么 ...
- scrapy 源码解析 (三):启动流程源码分析(三) ExecutionEngine执行引擎
ExecutionEngine执行引擎 上一篇分析了CrawlerProcess和Crawler对象的建立过程,在最终调用CrawlerProcess.start()之前,会首先建立Execution ...
- 【软件测试】Python自动化软件测试算是程序员吗?
今天早上一觉醒来,突然萌生一个念头,[软件测试]软件测试算是程序员吗?左思右想,总感觉哪里不对.做了这么久的软件测试,还真没深究过这个问题. 基于,内事问百度的准则: 结果…… 我刚发 ...
- 深度学习趣谈:什么是迁移学习?(附带Tensorflow代码实现)
一.迁移学习的概念 什么是迁移学习呢?迁移学习可以由下面的这张图来表示: 这张图最左边表示了迁移学习也就是把已经训练好的模型和权重直接纳入到新的数据集当中进行训练,但是我们只改变之前模型的分类器(全连 ...
- springboot整合Druid(德鲁伊)配置多数据源数据库连接池
pom.xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-ja ...
- react native redux
redux可以解决, 程序中所有组件的状态统一管理, 从而使我们可以更加动态的,灵活的控制程序 React:数据管理使用props.stateRedux的主要思想:提供一个数据存储中心,可以供外部访问 ...
- MySQL组复制MGR(四)-- 单主模式与多主模式
(一)概述 组复制可以运行在单主模式下,也可以运行在多主模式下,默认为单主模式.组的不同成员不能部署在不同模式下,要切换模式,需要使用不同配置重新启动组而不是单个server. 相关参数如下: # 该 ...
- Android个人中心UI
参考:https://blog.csdn.net/gjm15881133824/article/details/73742219
- 预定义的 $_POST 变量用于收集来自 method="post" 的表单中的值
PHP $_POST 变量 在 PHP 中,预定义的 $_POST 变量用于收集来自 method="post" 的表单中的值. $_POST 变量 预定义的 $_POST 变量用 ...
- PHP E-mail 注入
PHP Secure E-mails 在上一节中的 PHP e-mail 脚本中,存在着一个漏洞. PHP E-mail 注入 首先,请看上一章中的 PHP 代码: <html> < ...