【Linux02】LInux初始入门
1、LInux操作系统发展与演变
ENIARC:
CUP:运算器、控制器。寄存器、缓存
存储器:内存、RAM
Input:指令+数据
Output:结果
程序:指令+数据 算法+数据结构
字节是最小存储单位,cpu以字节的形式进行读取,32位操作系统一次可以读取32bit 2^32=2^2 * 2^10 * 2^10 *2^10 bit =4GB
内存是编址的存储单元
单任务: CPU和内存速度不匹配,CPU空闲
多任务:中断系统
Bell,MIT,GE=Mutics
DEC:PDP-汇编语言
Unics = unix(1969)
B:Dennis Ritch,C
Berkeley:
Bill Joy, BSRG,1977, BSD(Berkeley System Distribution)
Mircrosoft: Bills Gates
SUN: Bill Joy
Apple:XEROX
1985: Richard Stallman
GNU: GNU is NOT Unix
GPL:General Public License
FSF:Free Software Foundation
X-windows
gcc: GNU C Compiler
vi; visual interface
Unix二次发行版
SUN:Solaris
IBM:AIX
HP:HP-UX
Andrew: Minix, 4000+行
1990:BSD
1991年8月: Linux
GPL
2、操作系统改概念
操作系统为每个程序虚拟出一个美好花园,让每个程序觉得只有自己独占硬件系统,
程序是静态,进程是动态
广义上的操作系统:Kernel+Applications
狭义上的操作系统:Kernel
GNU提供Applications,Linus提供Kernel,就成了GNU/Linux,简称Linux
GNU/Linux是以源码(文本)的形式提供
大教堂式开发
集市式开发
Mac:BSD
选定了方向就一直坚持下去
OS的接口有两类:
GUI:Graphic User Interface
GNome:C,GTK
KED: C++,QT
CLI: Command LIne Interface
bash
zsh
sh
3、操作系统的功能:
驱动程序
进程管理
安全管理
网络管理
文件系统
......
API:Application Program Interface
程序员面对的编程接口
POSIX:Portable Operating system
是为了不同操作系统提供统一的编程接口,它会把统一的API转化成不同系统的ABI
硬件-->Kernel(system call)-->Library-->POSIX
ABI:Application Binary Interface windows(exe,msi),linux(deb,elf)
程序运行面对的运行接口
不同系统的API是一样的,不同系统的ABI不一样,中间通过POSIX转化,使得不同系统上开发的程序可以相互移植运行
linux和window的API兼容,编译后的ABI不兼容
Unix-Like的系统API和ABI都兼容
4、Linux 发行版
GNU:
不同厂商把Linux源码编译成二进制格式运行称为Linux的发行版
主要发行版:
1、Debian: 更轻巧,对技术能力要求更高
Ubuntu
mint
knopix
2、Slackware
S.u.S.E
OpenSUSE
3、Redhat
Redhat 9.0
Redhat Enterprise Linux: RHEL 主要是出问题了,只提供源码,编译成二进制运行要收服务费
CentOS:Community enterprise OS
Fedora Core
4、Gentoo
5、ArchLinux
软件版本号
major.minor.release 2.1.3
Linux:0.99, 2.2, 2.4, 2.6, 3.0, 4.0
www.kernel.org
GNU:
vi
gcc
发行版也有自己的版本号
RHEL:5.x, 6.x, 7.x
Debian: 8.x
OpenSuSE:13.x
5、Linux基础
CPU架构:
x86
x64(amd64)兼容x86
m68000:摩托罗拉
arm:手持智能设备
ultrasparch:SUN
power:IBM
MIPS
alpha:HP-ux
闭源:不提供源代码
开源协定:
GPL:General Public License 最为严格的开源
LGPL:Lesser GPL
FSF:Free Software Foundation
BSD:宽松的GPL
Apache:宽松的GPL
ASF:Apache Software Foundation
双线授权:许多人采用的方式
Community:遵循开源协定
Enterprise:更易用,收费
程序管理
程序的组成部分
二进制程序
配置文件
库文件(二次开发)
帮助文件
程序包管理
把程序组成的文件打包成一个或有限几个文件
安装:把程序的各部分文件放在指定目录下
卸载:把程序的各部分文件输删除
Debian:dpkg, apt-get
Redhat:rpm,yum(dnf)
S.u.S.E:rpm, zypper
ArchLinux:port
Gentoo:
LFS:Linux From Scratch
#localectl set-locale LANG=zh_CN.utf8 //设置中文
【Linux02】LInux初始入门的更多相关文章
- Linux pwn入门教程(10)——针对函数重定位流程的几种攻击
作者:Tangerine@SAINTSEC 本系列的最后一篇 感谢各位看客的支持 感谢原作者的付出一直以来都有读者向笔者咨询教程系列问题,奈何该系列并非笔者所写[笔者仅为代发]且笔者功底薄弱,故无法解 ...
- 6)Linux程序设计入门--消息管理
)Linux程序设计入门--消息管理 前言:Linux下的进程通信(IPC) Linux下的进程通信(IPC) POSIX无名信号量 System V信号量 System V消息队列 System V ...
- 7)Linux程序设计入门--网络编程
)Linux程序设计入门--网络编程 Linux系统的一个主要特点是他的网络功能非常强大.随着网络的日益普及,基于网络的 应用也将越来越多. 在这个网络时代,掌握了Linux的网络编程技术,将令每一个 ...
- Linux系统入门---开机启动流程
目录 Linux系统入门---开机启动流程 一.centos6 二.systemd管理进程 1.查看级别 三.centos7实践案例: 1.案例1:centos7系统,单用户修改root密码 案例2: ...
- IT技术学习指导之Linux系统入门的4个阶段(纯干货带图)
IT技术学习指导之Linux系统入门的4个阶段(纯干货带图) 全世界60%的人都在使用Linux.几乎没有人没有受到Linux系统的"恩惠",我们享受的大量服务(包括网页服务.聊天 ...
- Linux 基础入门(新版)”实验报告一~十二
实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...
- Linux基础入门学习笔记20135227黄晓妍
学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用L ...
- Linux 基础入门 第二周9.21~9.27
一.学习内容 本周主要学习内容主要贴合: 在进行<深入理解计算机系统>这门课的实验中没有遇到什么大问题,学习内容与上周实验<linux基础入门>有相似之处.本实验中的内容比较贴 ...
- 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP
使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)则可以避免网络参数变化后一些繁琐的配置,客户端可以从DHCP服务端检索相关信息并完成相关网络配置, ...
随机推荐
- java 自学简单框架(反射+注解)
1.先定义一个学生类 2.再定义一个teacher类(这个是为了练习多个注解,自己练习可以 不写这个) 3.再定义个一个学生老师类(这个是为了最终调用上面的那个学生类做准备) 4.下面开始真正的写框架 ...
- 杭电-------2043密码(C语言写)
#include<stdio.h> #include<string.h> ]; ] = { '~','!','@','#','$','%','^' }; ] = { }; in ...
- Day17-18前端学习之路——Javascript事件
用户在某个元素上点击鼠标或悬停光标. 用户在键盘中按下某个按键. 用户调整浏览器的大小或者关闭浏览器窗口. 一个网页停止加载. 提交表单. 播放.暂停.关闭视频. 发生错误. 更多事件:https:/ ...
- Windows渗透备忘录
Windows渗透备忘录 mimikatz mimikatz.exe ""privilege::debug"" ""sekurlsa::lo ...
- 创建PyCharm工程
- SpringMVC版本报错解决办法
报错代码: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http:// ...
- Linux内存管理解析(二) : 关于Linux内存管理的大体框架
什么是内存管理 ? 首先内存管理管理的主要对象是虚拟内存,但是虚拟内存对应的映射主要为物理内存,其次也可能通过交换空间把虚拟内存与硬盘映射起来,既然如此,那我们先了解物理内存的管理. 对于物理内存而言 ...
- git系列之---码云gitee 添加SHH公钥
公钥 很多服务器都是需要认证的,SHH 认证是其中的一种:在客户端生成公钥,把生成的公钥添加到服务器,你以后连接服务器的时候就不用每次都输入用户名和密码了:很多git服务器都是用ssh认证方式,你需要 ...
- JS常见的表单验证,H5自带的验证和正则表达式的验证
H5验证 自带的验证无法满足需求: <form action="" method="get"> name:<input type=" ...
- rpm 程序包管理介绍
API:application program interface ABI:application binary interface linux系统的ABI文件是ELF格式的 windows系统的AB ...