Linux学习笔记

概述

Linux系统是开源软件,其可靠性得到肯定,是发展最快、应用最广的主流软件之一。在服务器平台、嵌入式系统和云计算系统所运行的操作系统中,Linux占很大比重。

Linux是一个真正的多用户、多任务操作系统。与其他操作系统相比,Linux在Internet和intranet的应用中占有明显的优势。在个人机和工作站上使用Linux,能更有效地发挥硬件的功能,是个人计算机能够胜任工作站和服务器的工作。

计算机基础

计算机分为超级计算机(Supercomputer)、大型计算机(Mainframe Computer)、迷你计算机(Minicomputer)、工作站(Workstation)和微电脑(Microcomputer)。

计算机由主要有CPU、内存、硬盘、主板、接口设备、显卡和电源六大组件。计算机各组件运行图如下:

computer

显卡:又称VGA(Video Graphics Array),它对于图像影像的显示扮演相当关键的角色。一般对于图形影像的显示中重点在于分辨率和色彩深度,因为每个图像显示会占用内存,因此显卡上面会有一个内存容量,这个显卡内存容量将会影像到最终屏幕分辨率和色彩深度。对于显卡接口,区别在于数据传输的频宽。

硬件

现代计算机的硬件结构包括:

  • CPU(中央处理器):运算器和控制器的集成,具有从内存(或高速缓存)中取出指令并执行的功能。基本工作过程为提取指令、译码分析和执行指令。
  • 存储器
    • 高速缓存:存取速度最快,但是成本非常高,通常容量小于16M。
    • 内存:存取速度次于高速缓存,一般容量512~16GB。
    • 硬盘:存取速度低于内存,容量为512GB~2TB,价格便宜。
  • I/O设备:人机交互工具,通常由控制器与设备本身组成。包括
    • 输入设备:键盘、鼠标;
    • 输出设备:打印机、显示器、绘图仪;
    • 存储设备:磁盘、光盘、U盘和磁盘带等。

软件

软件相对于硬件而言,它是与数据处理系统操作有关的计算机程序和相关数据等的总称。

软件分为:

  • 系统软件:操作系统(Windows、Linux、MacOS等),编译程序(C++等)、汇编程序(Intel 8080、8086等)、链接装配程序、数据可以管理系统(SQL Server等)等、
  • 应用软件:为解决某一类应用需求或某个特定问题而设计的程序。
  • 支撑软件:辅助软件技术人员从事软件开发的软件,包括各种开发工具(Eclipse等)、测试工具等。

操作系统概述

  • 定义:操作系统是控制和管理计算机系统内各种硬件和软件资源、有效组织多道程序运行的系统软件(程序集合),是用户与计算机之间的接口。

  • 基本功能

    • 存储管理:内存分配、地址映射、内存保护和内存扩充;
    • 进程和处理机管理:作业与进程调度、进程控制和进程通信;
    • 文件管理:文件存储空间的管理、文件操作的一般管理、目录管理和文件的读写管理和存储控制;
    • 设备管理:缓冲区管理、设备分配、设备驱动个设备无关性;
    • 用户接口服务:图形用户接口(GUI)、命令行接口和程序接口。
  • 分类:批处理系统、分时系统、实时系统、网络操作系统和分布式操作系统。

  • Linux的应用现状:超级计算机和服务器领域、嵌入式系统和云计算系统等。

  • Linux系统的特点

    • 与Unix兼容
    • 开源
    • 性能高、安全性强(漏洞的快速修补)
    • 灵活性高,便于定制和再开发
    • 互操作性强(多任务、多用户)

      存在:没有特定支持厂商、游戏和专业软件支持度不足的问题。

  • Linux的发展优势

    • 开源从本质上就具有其他系统无法比拟的研制开发优势,是全球范围的研制;
    • Linux受各国政府的大力支持;
    • 得到全球各大软硬件公司的支持;
    • 价格优势
    • 安全性,Linux操作系统的架构完全沿袭了Unix的系统架构,而Unix系统的安全性已被业界、商家和用户所公认。
  • Linux的用户:当前流行的软件按照所提供的方式和是否盈利为目的可以划分为:

    • 商业软件(Commercial Software)
    • 共享软件(Shareware)
    • 自由软件(Freeware/ Free Software)
  • Linux常用版本

    • 内核版本:主要是Linux内核,Linus等人不断地开发和推出新的内核。Linux内核的官方版本由Linus本人维护。Root用户可以使用命令uname -r来查看所用计算机上发行版使用的内核版本号。
    • 发行版本:发行版本是各个公司推出的版本,它们与内核版本是各自独立发展的,发行版本通常内附有一个核心源码,以及很多针对不同硬件设备的核心映像。所以发行版本是一些基于Linux核心的软件包。常见的国内外Linux发行版本有
      • Red Hat
      • TurboLinux
      • Slackware
      • OpenLinux
      • Debain
      • SUSELinux
      • Red Flag Linux(红旗Linux):中科院软件所下属的中科红旗软件技术有限公司开发研制,主要有服务器版本和桌面版本。
      • 中标普华Linux

常用命令与文件操作

Linux提供集中不同的用户界面,其中命令行界面是Linux系统下最简单,但也是功能最强的用户界面、Linux系统为用户提供几百条命令,其功能涉及资源管理、信息处理、系统检测、通信服务等方方面面。

参考书:

  1. 《Linux基础教程》(第2版)孟庆昌等编著
  2. 《鸟哥的Linux私房菜》基础学习篇第三版