马哥第一天

来这儿的第一天

     前言

今天是来这儿的第一天,来的时候还怀着忐忑的心情,但一进教室,我一下子开心的不行。进这儿感觉像回家一样,在马哥这儿的感觉,比家里面感觉好多了,在家里面一个人很无聊,来到这儿个个都是人才,说话又好听,技术还不错。超喜欢在这儿。在这儿我会和小伙伴们一起认真谦虚的学习。

在学习Linux之前,我们得先了解什么是Linux?马哥第一天

    正文

Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intel x86系列CPU的计算机上。这个系统是由世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的 Unix兼容产品。

Linux的出现,最早开始于一位名叫Linus Torvalds的计算机业余爱好者,当时他是芬兰赫尔辛基大学的学生。他的目的是想设计一个代替Minix(是由一位名叫Andrew Tannebaum的计算机教授编写的一个操作系统示教程序)的操作系统,这个操作系统可用于386、486或奔腾处理器的个人计算机上,并且具有 Unix操作系统的全部功能,因而开始了Linux雏形的设计。

绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。正因为如此,GNU计划的开创者理查德·马修·斯托曼博士提议将Linux操作系统改名为GNU/Linux。但有些人只把操作系统叫做”Linux”。

Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途,同时它们都尽可能被编写得更好。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。

历史

Linux 的历史是和GNU紧密联系在一起的。

1983年,理察·马修·斯托曼(Richard Stallman)创立了GNU计划(GNU Project)。这个计划有一个目标是为了发展一个完全免费自由的Unix-like操作系统。自1990年代发起这个计划以来,GNU 开始大量的产生或收集各种系统所必备的元件,像是——函式库(libraries)、编译器(compilers)、侦错工具(debuggers)、文字编辑器(text editors)、网页服务器(web server),以及一个Unix的使用者接口(Unix shell)——除了执行核心(kernel)仍然付阙外。1990年,GNU计划开始在马赫微核(Mach microkernel)的架构之上开发系统核心,也就是所谓的GNU Hurd,但是这个基于Mach的设计异常复杂,发展进度则相对缓慢。

最初的设想中,Linux 是一种类似Minix这样的一种操作系统。1991年4月,芬兰赫尔辛基大学学生Linus Benedict Torvalds(当今世界最著名的电脑程序员、黑客)不满意Minix这个教学用的操作系统。出于爱好,他根据可在低档机上使用的MINIX设计了一个系统核心Linux 0.01,但没有使用任何MINIX或UNIX的源代码。他通过USENET(就是新闻组)宣布这是一个免费的系统,主要在x86电脑上使用,希望大家一起来将它完善,并将源代码放到了芬兰的FTP站点上代人免费下载。本来他想把这个系统称为freax,意思是自由( free) 和奇异(freak)的结合字,并且附上了”X”这个常用的字母,以配合所谓的Unix-like的系统。可是FTP的工作人员认为这是Linus的MINIX,嫌原来的命名 “Freax”的名称不好听,就用Linux这个子目录来存放,于是它就成了“Linux”。这时的Linux只有核心程序,仅有10000行代码,仍必须执行于Minix操作系统之上,并且必须使用硬盘开机,还不能称做是完整的系统;随后在10月份第二个版本(0.02版)就发布了,同时这位芬兰赫尔辛基的大学生在comp.os.minix上发布一则信息:

Hello everybody out there using minix-

I’m doing a (free) operation system (just a hobby,

won’t be big and professional like gnu) for 386(486) AT clones.

由于许多专业用户(主要是程序员)自愿地开发它的应用程序,并借助Internet拿出来让大家一起修改,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来。

从1983年开始的GNU计划致力于开发一个自由并且完整的类Unix操作系统,包括软件开发工具和各种应用程序。到1991年 Linux 内核发布的时候,GNU已经几乎完成了除了系统内核之外的各种必备软件的开发。在Linus Torvalds和其他开发人员的努力下,GNU组件可以运行于Linux内核之上。整个内核是基于GNU通用公共许可,也就是GPL(GNU General Public License,GNU通用公共许可证)的,但是Linux内核并不是GNU 计划的一部分。1994年3月,Linux1.0版正式发布,Marc Ewing成立了 Red Hat 软件公司,成为最著名的Linux分销商之一。

Unix与Linux的历史源流

早期Linux的开机管理程序(boot loader)是使用LILO(Linux Loader),存在着一些难以容忍的缺陷,例如无法识别8G以外的硬盘,后来新增GRUB(GRand Unified Bootloader)克服了这些缺点,具有‘动态搜寻核心档案’的功能,可以让您在开机的时候,可以自行编辑您的开机设定系统档案,透过 ext2 或 ext3 档案系统中载入Linux Kernel。

Linux 的标志和吉祥物是一只名字叫做Tux的企鹅,标志的由来是因为Linus在澳洲时曾被一只动物园里的企鹅咬了一口,便选择了企鹅作为Linux的标志。Linux的注册商标是Linus Torvalds所有的。这是由于在1996年,一个名字叫做William R. Della Croce的律师开始向各个Linux 发布商发信,声明他拥有Linux商标的所有权,并且要求各个发布商支付版税,这些发行商集体进行上诉,要求将该注册商标重新分配给Linus Torvalds。Linus Torvalds 一再声明Linux 是免费的,他本人可以卖掉,但Linux绝不能卖。

Linux发行版的某些版本是不需要安装,只需通过CD或者可启动的USB存储设备就能使用的版本,他们称为LiveCD。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/93164

赞 (2)
oranixoranix
上一篇 2018-03-26 20:41
下一篇 2018-03-26 20:43

相关推荐

  • linux终端类型

    人机交互界面:GUI、CLI GUI: gnome:c,gtk kde:c++,qt CLI: bash,zsh,sh,csh,ksh 不同CLI间跳转:alt+f1\f2\f3\f4   终端类型: 物理终端、控制台终端:/dev/console,控制台console 计算机显示器通常被称为控制台终端(Console) 虚拟终端:/dev/tty…

    Linux干货 2016-10-14
  • Linux进程管理-初级

    Linux进程管理-初级 背景: 在学习完Linux进程管理后,发现这一块的知识点比较多,很多都是自己以前没有接触过的,而且这部分知识对今后的工作有很大帮助,在这里做个学习的总结,供以后复习。 进程介绍: 什么是进程 进程(Process):运行中的程序的一个副本,是被载入内存的一个指令集合,进程有进程ID(Process ID,PID),用来标记每个进程,…

    2017-08-26
  • vim实用技能

    vim编辑器 简介 vi: Visual Interface,文本编辑器 文本:ASCII, Unicode 文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi VIM – Vi IMproved 使用 vim:模式化的编辑 基本模式: 编辑模式,命令模式 输入模式 末行模式: 内置的命令行接口 打开文件: # vim [OPTIO…

    Linux干货 2018-01-16
  • grep命令与正则表达式的应用示例、find命令应用示例

    grep命令与正则表达式的应用示例、find命令应用示例 显示当前系统上root、fedora或user1用户的默认shell。 使用扩展正则表达式,它支持使用A|B表示或者之意。查看用户的默认shell,cat /etc/passwd文件,根据用户名所处位置进行锚定,其最后一个字段即表示该用户的默认shell。实现方式及结果如下:   找出/et…

    Linux干货 2016-11-28
  • Linux基础知识之history命令详解

     该博文以CentOS6.8_x86_64系统为基础,Xshell 5远程连接CentOS系统,以root身份登录系统。 为什么要学习history命令?     history命令是Linux的一个内嵌的shell命令,history命令的使用有时会大大缩短我们输入命令的时间,达到节省命令快捷操作的要求。学…

    Linux干货 2016-07-27
  • linux程序包管理

         首先linux软件程序包和windows中的程序包是不兼容的,所以要在linux上使用windows上的程序,需要使用虚拟化工具。 库级别的虚拟化:     linux : WinE     windows: Cywin 而程序开发语言有多…

    Linux干货 2016-08-24