zoukankan      html  css  js  c++  java
  • 【linux之简介】

    一、操作系统是什么

    1、定义

    操作系统,英文名称Operating System,简称OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操作必备的基础环境支撑,是计算机系统的核心。

    2、操作系统的作用

    • 管理和控制计算机系统中的硬件和软件资源,例如,它负责直接管理计算机系统的各种硬件资源,如对CPU、内存、磁盘等的管理,同时对系统资源所需的优先次序进行管理。
    • 控制设备的输入、输出以及操作网络与管理文件系统等事务。
    • 对计算机系统中各类软件资源的管理。例如各类应用软件的安装、设置运行环境等。

    操作系统与计算机硬件软件关系图如下:

    操作系统就是处于用户与计算机系统硬件之间用于传递信息的系统程序软件。例如:操作系统会在接收到用户输入的信息后,将其传给计算机系统硬件核心进行处理,然后再把计算机系统硬件的处理结果返回给使用者。

    二、Linux是什么

    1、简介及特点

    和Windows操作系统软件一样,Linux也是一个操作系统软件。其在设计之初,就是基于Intel x86系列CPU架构的计算机的。它是一个基于POSIX的多用户、多任务并且支持多线程和多CPU的操作系统。

     

        Linux操作系统之所以如此流行,是因为它具有如下一下特点:

    • 开发源代码的程序,可自由修改。
    • Unix系统兼容,具备Unix几乎所有优秀特性。
    • 可自由传播,无任何商业化版权制约。
    • 适合Intel等x86 CPU系列架构的计算机。

    2、linux的操作原则

    • linux是由一个个的小程序组成,若干小程序共同完成某个特定任务
    • linux中,一切资源皆为文件,包括硬件设备
    • 在linux中,尽量不捕捉用户接口。(只要linux自己能处理,就不会向用户请求,尽量不占用用户资源)
    • linux中,所有的配置文件皆为纯文本文件

    3、常见的linux操作系统

    1. Debian
    Debian运行起来极其稳定,这使得它非常适合用于服务器。但它并不适合新手用户,而是适合系统管理员和高级用户。Debian支持如今的大多数架构(处理器)。
    2.Gentoo
    Gentoo并非以预编译的形式出现,而是每次需要针对每个系统进行编译。它被认为是最佳学习对象,可以进而了解Linux操作系统的内部运作原理。Gentoo这款操作系统适合对Linux已经完全驾轻就熟的那些用户。
    3.Ubuntu
    Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行UbuntuLinux的移动设备上很常见。Ubuntu是新手用户肯定爱不释手的一款操作系统。
    4.RHEL
    这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。
    5.CentOS
    CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。
    6.Fedora
    小巧的Fedora适合那些人:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。
    7.OpenSuse
    OpenSuse这款Linux发行版是免费的,并不供商业用途使用,仍然供个人使用。它使用Yast来管理软件包。

    4、补充的小知识点

    程序=数据+指令
    程序都必须载入内存,必须由CPU来运行
    时间片slice 保存现场 恢复现场
    缓存存储器 各级缓存就是为了提高运行速度
    数据代码都存储在硬盘上
    程序开发语言
    机器语言 二进制
    汇编语言(微码语言)
    
    高级语言
    强语言(先编译成二进制代码才能执行):C/C++ ,JAVA ,C#,B,VC,VB(可视化编程的B语言),VF
    弱语言(边解释边执行):PHP,Python,shell
    JAVAC,GCC
    API应用程序接口,集成在操作系统内核中
    API就是在不同的CPU上,使用汇编语言(运行效率高)写出来的具有相同功能的程序。这个程序本身不会自动运行,它只是向应用程序提供访问硬件的接口
    也可以说吗,API向程序虚拟了相同类型的执行环境。
    system call系统调用
    
    操作系统需要为用户提供用户操作界面(特殊的应用程序) shell
    1.GUI(图形用户界面) KDE,CDE
    2.CLI(命令行界面) BASH ,CSH,ZSH
    library应用程序库
    内核库(内核对象).ko
    共享库 .so
    dll(动态链接库)
    /dev/sda1
    sd-->serial disk 串行磁盘
    a-->磁盘编号
    sda1-->存放引导程序,引导分区,100M,挂载点:/boot
    sda2-->交换分区(虚拟内存)
    内存小于256M,至少256M交换分区;
    内存大于256M,小于2GB,交换分区大小为物理内存的2倍
    内存大于2G,交换分区不固定
    挂载:将磁盘分区和文件夹关联在一起的过程,用来关联分区的文件夹叫挂载点。
  • 相关阅读:
    新浪开放平台入门及基本步骤(java SDK)
    Android 解析JSON数据示例代码[CODE]
    Ubuntu10.04 搭建android平台
    程序员真的很懒
    android之ContentResolver与ContentProvider
    写代码如写散文
    通过OAuth认证和操作新浪微博
    喜报:凌阳教育深圳中心正式成立
    25个让Java程序员更高效的Eclipse插件
    Java Json开源解析包 googlegson download(下载)
  • 原文地址:https://www.cnblogs.com/smallmars/p/8436474.html
Copyright © 2011-2022 走看看