一、操作系统是什么

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,交换分区不固定
挂载:将磁盘分区和文件夹关联在一起的过程,用来关联分区的文件夹叫挂载点。

【linux之简介】的更多相关文章

  1. linux 文件系统简介

    linux文件系统简介   文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基 ...

  2. Linux 内核简介

    Linux内核简介 一.系统架构 (1). Linux系统架构 ##用户空间: 文件系统 C库 ##内核空间: 接口 内核 (2). Linux内核架构 二.Linux内核源代码 下载地址 www.k ...

  3. Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装

    原文:Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装 Linux内核分析(一) 从本篇博文开始我将对linux内核进行学习和分析,整个过程必将十分艰辛,但我会坚持到底 ...

  4. Linux基础学习(1)--Linux系统简介

    第一章——Linux系统简介 1.UNIX和Linux发展史: 1.1 unix发展史: (1)1965年,美国麻省理工学院(MIT).通用电气公司(GE)及AT&T的贝尔实验室联合开发Mul ...

  5. Linux内核分析——第一章 Linux内核简介

    第一章   Linux内核简介 一.Unix的历史 1.Unix系统成为一个强大.健壮和稳定的操作系统的根本原因: (1)简洁 (2)在Unix中,很多东西都被当做文件对待.这种抽象使对数据和对设备的 ...

  6. 2013337朱荟潼 Linux第一章读书笔记——Linux内核简介

    一.Unix历史 二.Linux足迹 类Linux系统.非商业化产品.用途广泛 三.操作系统和Linux内核简介 1.操作系统 (1)是指在整个最基本功能系统中负责完成最基本功能和系统管理的部分. ( ...

  7. 第一节 Linux系统简介

    一.Linux定义 Linux 是一个操作系统,就像你多少已经了解的 Windows(xp,7,8)和 Max OS. 操作系统在整个计算机系统中的角色: Linux 是系统调用和内核那两层,直观的来 ...

  8. Linux学习笔记-Linux系统简介

    Linux学习笔记-Linux系统简介 UNIX与Linux发展史 UNIX是父亲,Linux是儿子. UNIX发行版本 操作系统 公司 硬件平台 AIX IBM PowerPC HP-UX HP P ...

  9. Linux防火墙简介 – iptables配置策略

    Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...

  10. linux cgroups简介(下)Cgroups 与 Systemd

    Cgroups 是 linux 内核提供的一种机制,如果你还不了解 cgroups,请参考前文<Linux cgroups 简介>先了解 cgroups.当 Linux 的 init 系统 ...

随机推荐

  1. 2017"百度之星"程序设计大赛 - 复赛1003&&HDU 6146 Pokémon GO【数学,递推,dp】

    Pokémon GO Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  2. BZOJ 1083: [SCOI2005]繁忙的都市【Kruscal最小生成树裸题】

    1083: [SCOI2005]繁忙的都市 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2925  Solved: 1927[Submit][Sta ...

  3. Apache Shiro 核心概念

    转自:http://blog.csdn.net/peterwanghao/article/details/8015571 Shiro框架中有三个核心概念:Subject ,SecurityManage ...

  4. UEP-添加表格

    UEP中添加新的表格标签:function initCustomToolBar(){ var strHtml="<table> <tr> <td id=\&qu ...

  5. Linux下C++/C的编译调试

    这几天因为任务的原因我需要在ubuntu下编写程序.因此恶补了许多linux程序编写的知识.我分以下几个方面总结我所学的知识. gcc,g++,make命令的使用 gdb 调试 VScode的使用 c ...

  6. Arrays类详解

    数组是数据结构中最简单的一种类型.在平常的使用上也比较多见.今天就来总结一下数组在使用过程中的一些心得 1.java中包装数组的一些基本用法的抽象类  java.util.Arrays.这个类中包含操 ...

  7. 学习JVM-GC收集器

    1. 前言 在上一篇文章中,介绍了JVM中垃圾回收的原理和算法.介绍了通过引用计数和对象可达性分析的算法来筛选出已经没有使用的对象,然后介绍了垃圾收集器中使用的三种收集算法:标记-清除.标记-整理.标 ...

  8. alert一般用来调试客户端的javascript代码,以及更好的调试方法

    alert一般用来调试客户端的javascript代码 调试利器--console.log 如今主流浏览器(Chrome,IE8及后续版本,FireFox,Opera等)都支持控制台功能. Chrom ...

  9. Codeforces 897D. Ithea Plays With Chtholly (交互)

    题目链接:D. Ithea Plays With Chtholly 题意: 给你n张纸,在纸上写字(在 1 - c之间)可以写m次数 (,).(主要是交互,让你判断) 题解: 首先,看到m>=n ...

  10. JavaSE-反射-获取类或者对象的四种方法

    1.使用Class类的静态方法Class.forName("xxxx"); 新建一个要想要获取的类 package org.burning.sport.javase.classlo ...