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初始入门的更多相关文章

  1. Linux pwn入门教程(10)——针对函数重定位流程的几种攻击

    作者:Tangerine@SAINTSEC 本系列的最后一篇 感谢各位看客的支持 感谢原作者的付出一直以来都有读者向笔者咨询教程系列问题,奈何该系列并非笔者所写[笔者仅为代发]且笔者功底薄弱,故无法解 ...

  2. 6)Linux程序设计入门--消息管理

    )Linux程序设计入门--消息管理 前言:Linux下的进程通信(IPC) Linux下的进程通信(IPC) POSIX无名信号量 System V信号量 System V消息队列 System V ...

  3. 7)Linux程序设计入门--网络编程

    )Linux程序设计入门--网络编程 Linux系统的一个主要特点是他的网络功能非常强大.随着网络的日益普及,基于网络的 应用也将越来越多. 在这个网络时代,掌握了Linux的网络编程技术,将令每一个 ...

  4. Linux系统入门---开机启动流程

    目录 Linux系统入门---开机启动流程 一.centos6 二.systemd管理进程 1.查看级别 三.centos7实践案例: 1.案例1:centos7系统,单用户修改root密码 案例2: ...

  5. IT技术学习指导之Linux系统入门的4个阶段(纯干货带图)

    IT技术学习指导之Linux系统入门的4个阶段(纯干货带图) 全世界60%的人都在使用Linux.几乎没有人没有受到Linux系统的"恩惠",我们享受的大量服务(包括网页服务.聊天 ...

  6. Linux 基础入门(新版)”实验报告一~十二

    实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...

  7. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  8. Linux 基础入门 第二周9.21~9.27

    一.学习内容 本周主要学习内容主要贴合: 在进行<深入理解计算机系统>这门课的实验中没有遇到什么大问题,学习内容与上周实验<linux基础入门>有相似之处.本实验中的内容比较贴 ...

  9. 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP

    使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)则可以避免网络参数变化后一些繁琐的配置,客户端可以从DHCP服务端检索相关信息并完成相关网络配置, ...

随机推荐

  1. Java基础环境配置及HelloWorld

    一.什么是JDK,JRE JDK(Java Development Kit Java开发工具包) JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE.所以安装了JDK, ...

  2. centos7使用MySQL的Yum存储库安装mysql5.7.27

    下载yum源 官网地址:http://dev.mysql.com/downloads/repo/yum/ centos7系统: http://dev.mysql.com/get/mysql57-com ...

  3. docker容器互联,实现目录、服务共享

    一.需求 docker使服务之间实现容器隔离,比如Javaweb项目前端.后端.数据库.数据库后台,分别把它们部署在不同的容器里面,实现隔离.但服务和服务之间也有互访的需求,这就涉及到容器网络和容器互 ...

  4. 用pycharm自带的数据库创建项目00

    一.生成表格1.创建模型类(在 models.py文件中创建一个person类并且继承models.Models类) 2.生成表格(在项目目录下)(1)生成迁移文件:在pycharm下方的命令行Ter ...

  5. centos7使用fdisk:创建和维护MBR分区表

    1.在VMware选择要添加硬盘的虚拟机,添加一块硬盘. 这样就有两块硬盘 2.重启虚拟机. cd /dev #dev是设备目录,下面有很多很多设备,其中就包含硬盘 ll grep | sd #过滤s ...

  6. Centos7内核版安装nginx环境问题及解决方法

    错误信息:./configure: error: C compiler cc is not found解决方案:yum -y install gcc gcc-c++ autoconf automake ...

  7. MFC/QT 学习笔记(三)——MFC模板创建

    新建项目->MFC模板->MFC应用程序->应用程序类型:单个文档:项目样式:MFC 标准->下一步...OK 此时点击运行,可直接弹出窗口. 调整 视图->类视图: · ...

  8. hive内置方法一览

    引用 https://www.cnblogs.com/qingyunzong/p/8744593.html#_label0 官方文档 https://cwiki.apache.org/confluen ...

  9. 使用BeanUtils.populate将map集合封装为bean对象

    1.前言 最近在做一个javaweb项目练练手,涉及到把jsp页面中表单的内容存到数据库,和request.getParameterMap配合使用可以将jsp页面表单的数据转化为bean对象. 2.介 ...

  10. vue-cli-service 报错

    错误内容: vue-cli-service serve /bin/sh: vue-cli-service: command not found error Command failed with ex ...