20160216自学Linux_硬件基础+历史+入门基础开篇

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20160216自学Linux_硬件基础+历史+入门基础开篇相关的知识,希望对你有一定的参考价值。

03

操作系统的核心:内核

能够跟硬件交互的只有内核

库存在的执行环境是被调用执行,他不能主动运行

Application Program Interface

 

内存可以分为三段

第一段空间是BiosBIOS的加载过程,也正是因为有这一段才加电自检

第二段空间是内核:加载内核的,也就是kernel space

第三段空间才是各个应用程序的使用内存

当然内存没有我们想象的这么简单,这只是表面的介绍内存的分块

 

shell是整个应用程序的外壳

CLI是一个shellGUI也是一个shell

灵活使用命令的话,CLI速度远远快于GUI 

技术分享


shell:是一种直接与内核交互的一种方式:有图形交互方式,也有命令行交互方式

图形用户界面: GUI :命令行的是:CLI

window:换的是主题,他的shell直接做在内核里面去,而不是换shell

命令行远远快于窗口

windowcmd下的敲打的dos命令,相当于shell的界面和功能

window是个好看的东西,linux是个智慧的东西

window2003window2008服务性能低于linux

window服务器用于比较低端的IDC机房和个人桌面

 

内核的功能(通用软件)

进程管理:协调进程

内存管理

文件系统

网络功能

硬件驱动

安全机制

......

 

批处理系统

jobs1$$$$$$$$$jobs2$$$$$$$:一个个工作的执行,就是批处理的性质

GEBellMIT联合创建一个比批处理系统复杂的多任务系统

大型机:MainFrame

用的是汇编语言开发的。

多用户多任务(多用户计算机系统):叫做Multics

高级语言优点:对于底层的依赖是非常低的,并且通过中间件去和底层芯片或者是硬件打交道,所以高级语言无需考虑底层是intel的CPU还是AMD的CPU,缺点是:相对于低级语言的效率,高级语言的效率是比较低的。

 

CP/M——》DOS比尔盖茨

计算机科学之父—图灵(同性恋,被监禁,吃了图了***的苹果自杀):乔布斯用咬了一口的苹果的原因,因为他非常崇拜图灵的。当时乔布斯用的是Unix

 

比尔盖茨 盗用了乔布斯的图形界面,原来比尔盖茨的还是DOS界面,有图形界面了,他就想:谁还用我的DOS呢,所以盗用了乔布斯的图形界面对其DOS进行二次开发

比尔盖茨先是DOS系统,盗用了乔布斯的图形界面,而乔布斯的图形界面其实也是购买来源自Xerox:(复印机厂商的设计)比尔盖茨盗用之后,对其DOS进行二次开发,就改名为window,然后进行大规模的卖出,因此window比乔布斯更早的售出市面上图形系统。因为比尔盖茨的DOS底层不稳定,经常会出现蓝屏,所以后阶段window系统内核是vms

而这时候Unix还在打口水仗

技术分享

Unix上图代表:1.个人机器   2.安全机器  3.服务机器

至今现在苹果的内核还是FreeBSD的内核


不能只顾埋头学习,也要学会抬头看路

例子:Sun公司被Oracle收购


open开源即安全,很多Linux爱好者都会去维护bug

 

GUN是一个组织,由Stallman这个人创立

GPLGeneral Public License 宣言   自由宣言

LGPLLesser宽松的(由于GPL过于开放,导致有一些东西更不自由,才出现了宽松的GPL)

GENERAL PUBLIC LICENSE

自由不等于免费,开发出来你可以用,但是出问题了,可以找我们提供服务,这个就需要钱,这就是Redhat的赚钱方式

Debian ,dpt

RedHat ,rpm 

dptrpm都是管理器

管理软件包的,现在redhatCentos都是用yum来快速安装,解决依赖关系

Emacs:文本编辑器

gcc GNU C Complier一种编译器

linux只是一个内核

bash:一个命令行界面,bash shell

源代码: C --> 编译成二进制(交叉编译)

ABIApplication Binary Interface

 

Linux各种版本(内核一样,软件一样,可能就是配置文件不一样)历史如下

Redhat   收费的系统:服务性的收费,但是系统不收费

SLS

Debian   是 Debian 的项目创始人 Ian Murdock 和他的妻子 Debra 的名字缩写

    唯一不受商业组织,维护都是网络的人才,所以在高级用户上运行的,高级用户比较多使用。

SUSE 德国个研究生弄出来的,前身是SLS

linux的发行商:release

其实各个系统的内核一样,软件一样,可能就是配置文件不一样而已

实例:就比如乌班图的网络配置文件和Centos的配置文件就是不一样的

    一个在/etc/sysconfig/network-scripts/ifcfg-eth0

    而乌班图的是在打开ubuntu/etc/network/interfaces,而且格式也有些不同

开源OpenBSD:开放源代码

自由FreeBSD:自由获取,自由修改,自由学习

GPL:General public License

看不爽Redhat收费:开放源程序,但是不公布补丁,从而达到收费。

Centos:社区企业操作系统   一旦说社区就是开放的意思

Community ENTerprose OS,这个跟Redhat完全兼容,所以就针对Redhat的收费出现的Centos

 

个人版系统:版本9.0说的是个人版(像企业级系统是最高是7.0),redhat2003就停办了个人版,卖给了Fedora,让它去更新版本

Fedora:是企业的测试应用环境比较多,属于企业版的测试系统

Mandriva:桌面很漂亮

上三种都是Redhat版本下衍生的

1.一个是看不爽Redhat收费,centos

2.一个是桌面版,后开发成企业版的测试系统,性能也稳定,Fedora

3.桌面版,桌面很漂亮

Ubuntu是基于Debian研发的

Ubuntu是主色调是绿色的,但是国内企业大多数是Centos服务器。学习Centos是最好的

Ubuntu是桌面型版本,所以很多笔记本预装的软件可能就是乌班图的系统

Linux是内核,所以内核是有版本的  0.1,0.21,2.0...

91年的时候才是0.1的版本

RHEL发行版版本:3.0,4.0,5.0,6.0,7.0

但是他们核心都是Linux



技术分享

 

               Linux  min     Redhat

       fedora                大蜥蜴 suse       fedora

  ubuntu          Centos         Debian

RedHat、Fedora、SUSE、Slackware、Debian、Ubuntu、CentOS、RedFlag等

安卓核心也是Linux   ,只不过是java程序下的界面

今天为止,Linux也才20来岁

技术分享ks上图的ks=http://172.16.0.1/class.cfg是指定kickstart文件


04

Linux的基本原则:

1、由目的单一的小程序组成:组合小程序完成复杂任务

2、一切皆文件(甚至连设备的访问入口都是文件)

3、尽量避免捕获用户接口(就是很少的和用户交互)

比如ls 直接有输出了,比如ifconfig,直接有输出了,不需要交互

4、配置文件保存为纯文本格式:

所以写一个服务,完全可以用纯文本的配置来实现

 

shell是人机交互接口:GUI接口:CLI接口:

命令提示符,promptbashshell

#root

$:普通用户

任何命令如果想要执行都必须要有执行入口 ,像java执行也要有个main函数为入口,

c语言也是

我们平时敲命令的界面就是bash shell界面

 

命令格式:

命令 选项 参数    如果有多个参数,一定要用空格隔开

ls     ls -a     ls  -l

这些-a  -l就是选项,就是修改命令的执行方式的

而选项有长选项和短选项之分

     短选项:-

            多个选项可以组合:  -a ,-b   ,可以使用-ab

次序不关键,但是有一种比较关键,那就是长选项:-- ,而且一般不能组合

选项后面用的是参数

参数:命令的作用对象(如果有多个参数,彼此之间用空格隔开)

 

我们操作系统为什么会有用户这个概念---

使用凭证:用来标识不同的人不同的权限


startx &  可以启动图形界面   (前提是你要安装了图形界面Linux的灵活之处是它可以启动多个图形界面的

如果想使用VNC,也是需要安装图形界面

Linux的灵活之处,是它可以启动多个图形界面

图形界面的终端叫做模拟终端

安装的话,一条命令就可以了.

yum grouplist 来查看为安装的组包

yum groupinstall Desktop

 

Linux的图形界面有三个 GUIwindow只有一种图形界面,而且必须安装


Gnomec开发

KDEc++开发

Xface简洁的,适用于轻量级的系统

CLiOpen Terminal

bash:绝大Linux默认使用的bash(开源功能最强大的shell

cshzshkshtcsh

 

Linux重要思想之一,能简写就简写

su switch user

su -l root 完全切换

 

密码复杂性原则数字,大写,小写,特殊字符

实例如下:

技术分享


马哥接下来的视频讲的知识有哪些:

RHCE4k+RHCA1.5w+shell编程+mysql(更深度4.2k+

Web集群实现+NOSQL+Hadoop6.8k+Hbase6k+Openstack

 

整个商业运作的话,按照商业运作的话没有3w是绝对学不到的

马哥唯一比不上别人的就是没有电脑觉得不比其他一家的差,在技术方面

各位一定要有信心,不难理解,量比较大,灵活运用

知识量非常的大,没有学不会的一说,只找方法,不找借口,

学不会的话就是没花功夫。

 

本文出自 “malinux学习” 博客,请务必保留此出处http://425319153.blog.51cto.com/7029484/1742578

以上是关于20160216自学Linux_硬件基础+历史+入门基础开篇的主要内容,如果未能解决你的问题,请参考以下文章

20160215自学Linux_计算机硬件基础

Linux自学笔记:bash基础特性及基础命令

想学Linux 应该怎么入手

linux自学_shell理论基础

Linux自学笔记:Linux基础命令

移动计算入门教程_编程入门自学教程_菜鸟教程-免费教程分享