Linux入门 及Basics基础

二进制:

0, 1

5大部件:

CPU:计算器、控制器

Memory: 存储器(内存)

编址存储单元阵列

输入设备/输出设备:I/O

键盘:

VGA:


辅助存储器

网卡


编程:

低级语言:汇编(微码编程)

高级语言:JAVA, C++, C, Scala, Python


转件:


时序复用:


计算机:硬件+软件

硬件:开发,制造

软件:编写,编译


OS: Operating System

通用软件,主要负责管理底层硬件设备,并且将调用接口抽象为易用的形式


库:

独立的功能模块,可被共享使用


应用程序:

人机交互接口:

GUI:Graphic User Interface

Windows, Gnome, KDE, Xfce

CLI:Command Line Interface

shell: bash, zsh, tcsh

特定应用程序

开发工具

…… ……


通过软件虚拟出硬件平台的程序:

创建多个“虚拟机”

虚拟的硬件平台

而后可以虚拟机上装OS


如何虚拟:

CPU:时序复用,把CPU的计算能力切割成timeslice

内存:把物理中空闲的离散的一段或几段组织成一个假的连续的空间当内存

IO:模拟

硬盘,网卡


硬盘:通过文件来模拟硬件(回环设备)

网卡:时序复用,也可通过软件模拟


virutalization, emulation


CMOS:Complimentary Metal Oxied Substance

BIOS:Basic Input and Output System


POST: Power On  and Self Testing


Ctrl, Alt, Insert (Delete)





计算机的5大部件:

CPU、内存、I/O

CPU:运算器、控制器、寄存器、缓存

内存:编址的存储单元阵列

8bits = 1Bytes

I/O设备:

I/O控制器


VM:虚拟机


硬件规格 –> OS –> 动态库(so, dll) –> 应用程序

用户界面

GUI

CLI


POST –> OS (内核, kernel) 


CPU:众多指令

特权指令:操作硬件,获取敏感资源

普通指令:


CPU:

用户模式:运行程序的普通指令

内核模式:运行特权指令


编程:开发语言

写程序 –> 编译 –> 目标代码


declare -i num1=2

declare -i num2=3

sum=$[$num1+$num2]


CPU1: 摩托,M68000,m68k

CPU2: Intel, Core 2

程序 –> 编译器 –> “翻译后的结果是特定于某类CPU的”


编程:

汇编语言:方言

CPU1

CPU2

高级语言:通用语言

程序(通用语言) –> 编译 –> 方言(汇编) 


源代码:source code

二进制程序:binary


硬件平台:X86, X86_64 (amd64), m68k, power(IBM), PowerPC, mips, arm, alpha, ultrasparc…

复杂指令集:CISC

精简指令集


OS的代码:99%可用高级语言编写,余下的1%使用特定平台的汇编编写;


www.top500.org: 超级计算机排名


高级语言:

编译:需要将整个程序事先转换可运行格式

解释:转换一个语句运行一个语句


ENIARC: 

电子管 –> 晶体管 –> 集成电路 –> 超大规模集成电路


MainFrame: 


DEC:PDP, VAX

批处理作业系统 –> Multics(多用户, 多任务)–> Ken (PDP7)

Unics –> Unix 

Dennis: C

C –> Unix


Berkeley分校:BSRG, Bill Joy

1976, Ken


TCP/IP协议,虚拟内存:BSD(Berkeley System Distribution)

Unix: System V, sysv

  BSD


SUN microsystem

IBM


Microsoft: XENIX


DOS: Disk OS


Apple: GUI


VAX: VMS

Windows NT


OS/2: Vista


BSD Lite:

FreeBSD

OpenBAD

NetBSD


Minix


MIT: Stallman, freedom

GNU: GNU is Not Unix

GPL: General Public License


copyright, copyleft

emacs, gcc


Linus: 

Linux: Unix-like


www.kernel.org


GNU/Linux


GNU: 各种程序,源代码

Linux: 源代码


Linux系统发行版:

Debian

Slackware

S.U.S.E

RedHat


版本:

kernel: 

发行商版本:

包管理器



PC兼容机:


Linux系统:由来、kernel, GNU, GPL, 发行版

Linux: kernel, GNU

GNU: GPL

kernel: GPL


Linux发行版:

Debian: Ubuntu (desktop, server)

Slackware: SUSE (SLES, OpenSUSE)

RedHat: RHEL, Fedora Core

RHEL:src.rpm

CentOS: Community ENTerprise OS


ArchLinux: 借鉴了FreeBSD

Gentoo:

LFS, Linux From Scratch


Android: Linux + jvm + android

Linux + Busybox + jvm + android


软件包管理器:

RPM:RedHat Package Manager, PRM is Package Manager

deb: dpt


RHEL:

发行更新速度较慢,更关注稳定性;

rhel 5 –> rhel 6 –> rhel 7

/sbin/init

rhel5: sysv init

rhel6: upstart

rhel7: systemd


RHEL 6.6 –> CentOS 6.6


对系统执行交互式访问:通过终端

终端的类型:

物理终端:VGA, console

虚拟终端:tty

Ctrl+Alt+F1-6

/dev/tty#

串行终端:serial interface, sty

伪终端:pty

/dev/pts/#

图形终端:

GUI


Ctrl + Alt + F7

前提:X Server 要启动

GNome: startx

KDE: startkde


Linux的用户:

管理员:root, 拥有最高权限

普通用户:不具有管理权限

实现管理任务:临时切换至管理员

su, sudo


bash prompt: 命令提示符

#

$


环境配置:通过环境变量来实现,持久有效需要保存在配置文件中

PS1


几个基础性的命令:

tty: 显示当前终端设备

who: 查看当前系统上登录的所有用户及其信息


Ctrl + c: 取消当前命令的执行

Shift + PageUp/PageDown


注意:Linux严格区分字符大小写

tty,  Tty


Stallman: 自由软件

自由的含义:

自由使用;自由学习和修改;自由分发;自由创建衍生版;


Linux的哲学思想:

1、一切皆文件;

把几乎所有资源,包括硬件设备都虚拟为文件形式;

open, read, wirte, close, create, delete

2、由众多功能单一的程序组成;一个程序只做一件事情,而且要做好;

组合多个程序完成复杂任务;

3、尽量避免跟用户交互;

目标:易于编程实现自动化任务执行;

4、使用文本文件保存配置信息;

原创文章,作者:wuxiaotian,如若转载,请注明出处:http://www.178linux.com/29707

(0)
wuxiaotianwuxiaotian
上一篇 2016-08-08 16:17
下一篇 2016-08-08 16:17

相关推荐

  • 推荐-Nginx Rewrite的应用-根据访问平台做简单跳转

    Nginx Rewrite的应用-根据访问平台做简单跳转 Nginx Rewrite的应用-根据访问平台做简单跳转 Rewrite模块简介 Rewrite的配置 使用不同平台进行测试 配置参数详解 Rewrite模块简介    Rewrite最主要的作用就是对URL进行重写,即重定向。举个简单的例子,我们用电脑打开淘宝显示出的页面与手机打开显示出的页面,或者…

    Linux干货 2016-03-27
  • TCP网络关闭的状态变换时序图

    TCP共有11个网路状态,其中涉及到关闭的状态有5个。 在我们编写网络相关程序的时候,这5个状态经常出现。因为这5个状态相互关联,相互纠缠,而且状态变化触发都是由应用触发,但是又涉及操作系统和网络,所以正确的理解TCP 在关闭时网络状态变化情况,为我们诊断网络中各种问题,快速定位故障有着非常重要的作用和意义。 下是是根据W.Richard Stevens的《…

    Linux干货 2015-04-03
  • KeepAlived的配置及使用!

    此篇博客主要是和大家共同了解一下keepalived的功能及基础配置,以便于牢固掌握,此篇博客共分为三个部分;                ⊙ 简述keepalived的主要功能及安装环境;           &nb…

    2017-05-13
  • 马哥教育网络20期+第8周练习博客

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥:链接层设备,基于MAC地址过滤。 集线器:物理层设备,基本都属于半双工模式。集线器与网桥在现在的局域网中基本都不用了。 二层交换机:基本MAC转发数据,功能齐全的可支持VLAN等功能。常见的有100/1000M、16口/24口/48口。 三层交换机:功能齐全的交换机,具备都…

    Linux干货 2016-08-01
  • N28第五周

    1、简述rpm与yum命令的常见选项,并举例
    2、自建yum仓库,分别为网络源和本地源
    3、简述at和crontab命令,制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00
    4、简述sed常用操作命令,并举例

    Linux干货 2018-01-03
  • grep、正则表达式

    grep、正则表达式 grep:文本过滤(模式:pattern)工具 作用:文本搜索工具,根据用户指定的“模式”对目标文本逐行进行匹配检查;打印匹配到的行。 模式:由正则表达式字符及文本字符所编写的过滤条件。 正则表达式:由一类特殊字符及文本所编写的模式,其中有些字符不表示字符字面意义,而表示控制或通配的功能。 正则表达式分为两类:基本正则表达式、扩展正则表…

    Linux干货 2017-04-06