一、操作系统是什么

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. POJ 3624 Charm Bracelet(01背包裸题)

    Charm Bracelet Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 38909   Accepted: 16862 ...

  2. [bzoj1811] [Ioi2005]mea

    还是比较好想到的..设第一个数为x,那么以后的所有数都能用x和M表示出来. 然后再根据非递减的限制条件得出x的取值范围. #include<cstdio> #include<iost ...

  3. c++(排序二叉树线索化)

    前面我们谈到了排序二叉树,还没有熟悉的同学可以看一下这个,二叉树基本操作.二叉树插入.二叉树删除1.删除2.删除3.但是排序二叉树也不是没有缺点,比如说,如果我们想在排序二叉树中删除一段数据的节点怎么 ...

  4. hset和hget

  5. vue -- v-cloak解决刷新或者加载出现闪烁(显示变量)

    在使用vue绑定数据的时候,渲染页面时会出现变量闪烁,例如 <div class="#app"> <p>{{value.name}}</p> & ...

  6. Java Thread wait、notify与notifyAll

    Java的Object类包含了三个final方法,允许线程就资源的锁定状态进行通信.这三个方法分别是:wait(),notify(),notifyAll(),今天来了解一下这三个方法.在任何对象上调用 ...

  7. VIM 文件搜索与替换

    文件内搜索与替换 :[range]s/pattern/string/[c,e,g,i] 例如: :%s/oldword/newword/cg //对文本中全部匹配进行替换 :m,ns/oldword/ ...

  8. Java多线程编程—锁优化

    并发环境下进行编程时,需要使用锁机制来同步多线程间的操作,保证共享资源的互斥访问.加锁会带来性能上的损坏,似乎是众所周知的事情.然而,加锁本身不会带来多少的性能消耗,性能主要是在线程的获取锁的过程.如 ...

  9. 通过自定义的URL Scheme启动你的App

    iPhone SDK可以把你的App和一个自定义的URL Scheme绑定.该URL Scheme可用来从浏览器或别的App启动你的App. 如何响应从别的App里发给你的URL Scheme申请,由 ...

  10. uwsgi wsgi nginx centos7.2部署flask

    请原谅我比较懒,直接粘贴onenote笔记了 方法一测试完成后,建议用方法三:uwsgi,ginx部署