当前位置: 首页 > news >正文

linux入门级学习指南

在这里插入图片描述

我们知道,linux是一款开源的操作系统,那么他从哪里来?怎么发展的呢?
我们来了解一下linux的发展历史
起初,由于计算机发展不够完全,起初用于军事领域,人们使用计算机都是手动输入指令,然后计算机根据输入做出相应的计算,但是容易出现马虎或者操作不当的情况。
在这里插入图片描述
然后有一些聪明的人就想,可不可以写一款软件,可以自己进行计算或者辅助我们,让计算机自行实现相关作业,自动处理,然后就是理论计算机科学家冯诺依曼登场,他提出了计算机的基本原理:存储程序和程序控制,并将计算机从逻辑上分为【运算器,控制器,存储器,输入设备,输出设备】,为计算机科学发展奠定了坚实基础。
冯诺依曼

由于硬件上越来越先进,人们就急不可耐想要开发出一种系统,以满足不断增长的用户需求。
此时计算机还是十分昂贵的,所以面向对象都是学校军事政府等,还没有完全商用化。
在这里插入图片描述

Linux的前身是unix,贝尔实验室的一位大佬肯·汤普森趁着自己妻子回娘家探亲时,采用汇编语言写了一个小巧的操作系统,并且成功运行了他的“Space Travel”小游戏,这就是unix的前身。
但是汇编语言和硬件关联紧密且可读性不好,每次硬件变更都要重新编写代码。于是设计了相对简单的B语言。对的,就是这个语言逐渐演变为C语言。由汤普森的同事丹尼斯·里奇将B语言改造,C语言诞生。
两个人一起用C语言写了unix操作系统,得益于C语言强大的移植性,Unix操作系统可以兼容不同的机器。
在这里插入图片描述
linux的诞生,赫尔辛基大学的一位少年雷纳斯·托瓦兹,由于从小就接触了汇编语言,天资聪颖,由于Unix是收费的,且整个大学内只有一台主机安装了Unix,仅供16的终端机使用,于是他想,为何不自己搞一个Unix呢?
在他的努力下,成功编写出Linux。还有一个有趣的说法关于Linux的来源,即(Linux is not Unix),所以才叫做Linux。
他希望获得大家的建议,于是将程序放在网上,备受当时计算机爱好者的关注。由于Linux是开源的,世界上有很多程序员提出自己的建议或者根据Linux的设计构架写出兼容的程序或者驱动,于是Linux渐渐壮大起来。
那些资源为爱发电的程序员(顶级黑客或程序员一般都不差钱,主要是情怀,所以甘愿无偿奉献,就像之前火遍的山河大学,有人提出来后不久,学校规划图和学校大门的图片都出来了)散布世界的每个角落,大家都为一个伟大的梦想群策群力,Linux的标志是一只小企鹅,有一种说法就是企鹅代表南极,南极是世界的南极,所以Linux是世界的Linux。
然后一代枭雄乔布斯开始研制自己的操作系统,即Macos,而且推出一款风靡一时的计算机:麦金塔,而且具有图形化界面,微软起始是主要做软件的,但是看到苹果发展十分迅速,如果苹果成功占据市场,他写的软件需要配合苹果的操作系统才行,但是微软并不想主动权被把握在别人手中,所以借用Linux研究出Windows,用来对抗apple。
相对于linux,像Windows,Macos等闭源的操作系统,在稳定性和效率及安全性上都没有Linux好,毕竟Linux是由大众一起维护的,发现问题解决问题迅速,因为操作系统这种层次的程序,源代码是很多的,就算公司很多人维护代码,但是还是容易出现出现问题找不到问题的情况,但是在用户体验上,windows等闭源操作系统还是要更胜一筹的。Linux面对的是工程师,而商用化操作系统为了迎合大众,所以才会有很好的图形化界面等。

操作系统的概念
在这里插入图片描述

前边已经说过了,Windows,Linux等其实可以说是一款软件,上层管理应用软件,下层调动设备驱动,控制硬件运行,计算机是一个层状结构,为上层提供保障,同时管理下层。

Linux在服务器领域的发展
随着开源软件在世界范围的影响力日益增强,Linux在整个服务器操作系统市场上占据了越来越多的份额,已经形成了大规模市场应用的局面,并且保持着快速的增长率。
据权威部门统计,目前Linux在服务器领域已经占据75%的市场份额,同时,Linux在服务器市场的迅速崛起,已经引起全球IT产业的高度关注,并以强劲的势头成为服务器操作系统领域中的中坚力量。
Linux的移动嵌入式领域的发展
Linux的低成本、强大的定制功能以及良好的移植性能,使得Linux在嵌入式系统方面也得到广泛应用,目前Linux以广泛应用于手机、平板电脑、路由器、电视和电子游戏机等领域。在移动设备上广泛使用的Android操作系统就是创建在Linux内核之上的。目前,Android已经成为全球最流行的智能手机操作系统,据2015年权威部门最新统计,Android操作系统的全球市场份额已达84.6%。
此外,思科在网络防火墙和路由器也使用了定制的Linux,阿里云也开发了一套基于Linux的操作系
统“YunOS”,可用于智能手机、平板电脑和网络电视;常见的数字视频录像机、舞台灯光控制系统等都在逐渐采用定制版本的Linux来实现,而这一切均归功与Linux与开源的力量。
Linux在云计算/大数据领域的发展
互联网产业的迅猛发展,促使云计算、大数据产业的形成并快速发展,云计算、大数据作为一个基于开源软件的平台,Linux占据了核心优势;据Linux基金会的研究,86%的企业已经使用Linux操作系统进行云计算、大数据平台的构建,目前,Linux已开始取代Unix成为最受青睐的云计算、大数据平台操作系统。

Linux具有很多发行版本
在这里插入图片描述

Debian,Ubuntu,红帽级企业Linux,Centos,kali Linux等。
接下来关于Linux的讲解中,我会使用Centos对大家进行讲解,虽然分化出了这么多版本,但它们使用了同样的内核。我们不选择Ubuntu这种图形化界面的操作系统进行讲解,为大家带来原汁原味的体验。
首先需要我们下载一个Xshell
下载官网
这是一个远程终端软件。
在这里插入图片描述
点击下载即可
接下来我们需要一个云服务器,带你白嫖阿里云服务器
接下来我们就可以开始进行Linux的学习了。
跟随我的脚步来深入学习Linux操作系统,可以关注专栏,一起进步哦。

相关文章:

  • docker-compose(mysql5.6、mysql8、neo4j3.5、redis)
  • Nodejs运行vue项目时,报错:Error: error:0308010C:digital envelope routines::unsupported
  • 自动化测试:Selenium中的时间等待
  • AD学习笔记
  • SPI机制详解
  • 学习JavaEE的日子 Day29 yield,join,线程的中断,守护线程,线程局部变量共享,线程生命周期
  • I.MX6ULL_Linux_系统篇(25) buildroot文件系统构建
  • C++自主点餐系统
  • WordPress Git主题 响应式CMS主题模板
  • python基本数据(如注释)
  • taro框架之taro-ui中AtSwipeAction的使用
  • Swift 周报 第四十八期
  • QT事件机制
  • 在Linux上使用nginx反向代理部署Docker网站
  • 【Java扫盲篇】String、String Buffer和String Builder的区别
  • JavaScript-如何实现克隆(clone)函数
  • 《网管员必读——网络组建》(第2版)电子课件下载
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • CAP 一致性协议及应用解析
  • JavaScript设计模式之工厂模式
  • JS题目及答案整理
  • js正则,这点儿就够用了
  • Laravel 菜鸟晋级之路
  • Lucene解析 - 基本概念
  • OSS Web直传 (文件图片)
  • Python打包系统简单入门
  • 回顾 Swift 多平台移植进度 #2
  • 将 Measurements 和 Units 应用到物理学
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • 在electron中实现跨域请求,无需更改服务器端设置
  • raise 与 raise ... from 的区别
  • #NOIP 2014# day.2 T2 寻找道路
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • (BFS)hdoj2377-Bus Pass
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (二)正点原子I.MX6ULL u-boot移植
  • (九)c52学习之旅-定时器
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (四)模仿学习-完成后台管理页面查询
  • (译)2019年前端性能优化清单 — 下篇
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .NET CORE使用Redis分布式锁续命(续期)问题
  • .NET Core引入性能分析引导优化
  • .NET Project Open Day(2011.11.13)
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • .NET建议使用的大小写命名原则
  • .NET面试题(二)
  • @RequestParam,@RequestBody和@PathVariable 区别
  • @TableId注解详细介绍 mybaits 实体类主键注解