首页 > 系统相关 >【1.0】Linux引入

【1.0】Linux引入

时间:2023-08-22 09:55:10浏览次数:38  
标签:1.0 操作系统 GNU Windows Unix 内核 Linux 引入

【一】什么是操作系统

  • Operating System(操作系统) 简称OS
  • Windows,MacOS,Linux都是操作系统
  • 操作系统(Operating System)是计算机系统中的核心软件,它管理并控制计算机硬件和软件资源,为用户和应用程序提供统一的接口和环境。
  • 操作系统负责调度任务、分配内存、管理文件系统、提供网络连接等功能,以确保计算机系统正常运行。

【二】什么是BootLoader

  • 在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境
  • 一般在计算机启动的时候,选择启动Linux还是Windows的BootLoader是GRUB
  • 如果没有选择,GRUB会在几秒后启动默认的操作系统
  • BootLoader是计算机系统引导程序的一部分,主要用于启动操作系统。
  • 它位于计算机系统的固定存储介质(如硬盘或固态硬盘)的特定位置,并在计算机开机时首先加载到计算机内存中执行。
  • BootLoader负责初始化硬件设备、建立内存空间映射图,从而为操作系统内核运行准备好正确的环境。
  • 常见的启动加载程序包括GRUB(通用引导加载程序)和UEFI(统一固件接口)等。

【三】Linux和Windows的软件

  • windows系统下的软件,不能在Linux上运行,Linux上的软件不能在windows上运行
  • Linux上的软件,基本上都是免费的
  • Linux上软件,更新更频繁,且免费
  • Linux上软件,效率更高
  • 在操作系统上运行的软件通常需要根据操作系统的特性和架构进行开发和适配。
    • 因此,Windows系统下的软件通常无法直接在Linux上运行,而Linux上的软件也不能直接在Windows上运行。
    • 这是因为两个操作系统之间的API(应用程序接口)和底层工作机制存在差异。
  • 在Linux上,许多软件是开源的,并且可以免费使用和自由传播。
    • 这使得Linux成为开发人员和用户的首选平台之一。
    • Linux上的软件更新频繁,社区支持良好,因此在功能、性能和安全性方面具有很高的优势。
  • Windows系统上的软件通常是商业软件,并且有许可证限制。
    • Windows作为桌面操作系统和游戏平台广泛应用,支持各种商业软件和游戏开发。
    • Windows软件也借助于图形用户界面和丰富的应用程序生态系统,为用户提供了友好的交互体验。

【四】操作系统发展

  • 1984年,微软发布了第一个操作系统-->MS-DOS
  • 1980年,西雅图电脑产品公司(Seattle Computer Products)的一名24岁的程序员蒂姆·帕特森(Tim Paterson)花费了四个月时间编写出了86-DOS操作系统
  • 在1981年7月27日,比尔盖茨完全获得了一个叫做Seattle Computer Systems(西雅图计算机系统公司)的“Quick and Dirty Operating System”,简称QDOS的授权,花费5w美元。后来该操作系统被称作MS-DOS
  • 同时代,1969年(1970年,计算机元年)起,也有一款比较出名的操作系统叫Unix
  • 1968年 Multics项目
    • MIT、Bell实验室、美国通用电气有限公司走到了一起,致力于开发Multics项目。到后期由于开发进度不是很好,MIT和Bell实验室相继离开这个项目的开发,最终导致项目搁浅。
  • 1970年(Unix元年,时间戳) Unix诞生
    • 当时在开发Multics项目的时候,实验室中有一个开发成员开发了一款游戏(travel space:遨游太空),因为两个实验室相继离开项目开发,导致这名开发人员没法玩游戏,后来他提议组织人员重新在Multics项目之上重新的开发,也就出现了1970年的Unix。当时Unix操作系统是使用的汇编语言(机器语言)开发的。
  • 1973年 用C语言重写Unix
    • 因为汇编语言有一个最大的局限性:对于计算机硬件过于依赖。导致移植性不好,所以后期在1973年使用了C语言对其进行重新开发。
  • 1975年 Bell实验室允许大学使用Unix。
  • 1975年,bell实验室允许大学使用Unix操作系统用于教学作用,而不允许用于商业用途。
  • 在1984年,微软发布DOS的同时,理查德·马修·斯托曼(Richard Matthew Stallman, RMS)创立了GUN项目
    • GNU项目 (牛羚),GNU is not Unix的缩写,目的是创建一个类Unix的操作系统,因为unix不是免费的,商业收费,刚开始学校教学免费使用,后来不免费了,价格比较贵(MacOS是类Unix操作系统)
    • 理查德·马修·斯托曼:1953年出生,自由软件运动的精神领袖、GNU计划以及自由软件基金会(Free Software Foundation)的创立者、著名黑客,代表作:Emacs编辑器,GCC编译器,GDB调试器
  • 自由的和免费的
    • 自由的意味着源代码必须公开(windows和macos是私有的)
    • 自由软件大部分是免费的,但是可以复制,修改,出售
  • 1991年 Linux的开发作者,Linux之父,李纳斯·托瓦兹。Linux诞生时是荷兰在校大学生。
    • 1991年 0.0.1版本
      • 李纳斯当时学校使用的就是Unix操作系统,然后其对系统的底层代码进行了修改,放到了学校为学生开放的网站上,原先他把文件命名写成了Linus’s Unix,后期网络管理发现之后觉得这个名字不好,自己手动的将名字改成Linux。随后其他同学下载之后发现这个版本还是挺好用的,随后都把自己代码贡献给李纳斯。
    • 1992年 0.0.2版本
    • 1994年 1.0版本
    • 2003年 2.6版本
  • Linux吉祥物企鹅
    • 李纳斯以前在澳大利亚被一只企鹅咬过
  • 操作系统的发展历经多个阶段和里程碑。早期的操作系统如UNIX和MS-DOS开创了个人计算机时代的先河。
  • 1969年,Unix操作系统诞生于AT&T贝尔实验室,它开创了多用户和多任务操作系统的先河,并且在学术界和商业领域广受欢迎。Unix的核心思想和设计哲学对后来的操作系统产生了深远影响。
  • 1981年,微软从西雅图电脑产品公司购买了一个简单的操作系统86-DOS,并推出了自己的变种MS-DOS,成为当时个人计算机上最流行的操作系统。
  • 1984年,Apple推出了Macintosh计算机,并搭载了基于图形用户界面的操作系统MacOS。MacOS的出现引领了个人计算机界面设计的革命,并对后来的操作系统产生了重大影响。
  • 在GNU项目创始人理查德·马修·斯托曼(Richard Matthew Stallman)的领导下,自由软件运动兴起。1985年,GNU项目宣布创建一个完整的类Unix操作系统,包括操作系统内核和应用程序工具集。
  • 1991年,芬兰大学生Linus Torvalds开发并发布了Linux内核,这一事件标志着Linux操作系统的诞生。后来,Linux与GNU项目合作,通过将GNU工具与Linux内核结合,形成了现代的Linux操作系统。
  • 操作系统的发展不仅在个人计算机上取得了重要突破,也在服务器、移动设备和嵌入式系统等各个领域取得了广泛应用。目前,各种操作系统如Windows、Linux、macOS和Android等都在不断演进和创新。

【五】Linux和GNU的联系

  • 这两个项目是互补的,Linus其实就写了一个类Unix内核
  • 1991年GNU项目已经创建了不少操作系统外网软件,比如cp命令,rm命令,GCC,GDB等--》好比Linux就是人的骨骼,GUN就是血肉
  • 后来完善Linux的工作就由Linus和广大开源社区的黑客们
  • GNU项目+Linux内核=完整的操作系统,我们现在叫的Linux一般都是指GUN项目+Linux内核
  • Linux和GNU项目是互补关系,在形成完整的操作系统时发挥了重要作用。
  • GNU项目早期已经开发了大量的操作系统工具和应用程序,如shell、编译器、调试器等。这些工具被广泛用于各种UNIX系统上。
  • Linus Torvalds开发了Linux内核,而GNU项目则为Linux提供了丰富的软件工具集。
    • 因此,将GNU工具与Linux内核结合起来,形成了现代使用广泛的Linux操作系统。
  • 通常所称的Linux操作系统,是指GNU项目的软件工具和Linux内核的组合。
    • GNU提供了Linux上运行的基本的shell、命令行工具、图形界面环境等,而Linux内核负责底层任务调度、设备驱动等功能。
  • Linux和GNU的结合为用户提供了强大的开源操作系统平台,充分发挥了自由软件的优势,同时也受益于GNU项目对自由软件的推动和支持。

【六】Linux内核

  • 上述所提及的版本号并不是分支版本,而是指Linux的内核版本。
  • Linux内核网站(现在最新5.x版本,3.x多一些,原来2.x多,现在docker要跑在3上)
  • Linux内核是Linux操作系统的核心部分,由Linus Torvalds及其他开发人员维护和更新。
  • Linux内核不同于Linux发行版(如Ubuntu、Fedora),它是操作系统的基础,负责管理计算机硬件和提供操作系统服务。
  • Linux内核的每个版本都有一个特定的版本号,例如5.x版本、3.x版本等。在该版本的基础上,开发者不断改进和优化Linux内核,修复漏洞、增加新功能以及提高系统性能。
  • 为了方便获取最新的Linux内核版本,用户可以访问Linux内核官方网站https://www.kernel.org/。

【七】各个操作系统的关系

  • MacOS和Linux是基于Unix的意思是复刻了Unix的运行模式,源代码是不通的
  • 目前Windows的版本是基于革命性的Windows NT内核
  • MacOS和Linux是基于Unix的操作系统,它们在设计和运行模式上具有相似之处,因此可以互相借鉴和衍生。
    • 然而,MacOS和Linux是两个独立的操作系统,它们的源代码、开发和管理机制都不同。
  • Windows操作系统采用了自己的Windows NT内核,与Unix和Unix-like系统有很大的区别。
    • Windows NT内核是Microsoft专门为Windows操作系统开发的,它具有与Unix不同的特性和工作机制。

【八】Linux发行版和区别

  • 因为Linux是开源自由软件
  • 所以基于开源的代码可以定制属于自己的Linux系统
  • 所以Linux的版本特别多
  • Linux不同发行版的区别(centos 乌班图 麒麟。。)

    • 安装方式不一样,有的简单,有的复杂
    • 安装应用程序的方式也不一样 (yum apt-get)
    • 预装的应用程序不一样 ()
  • 不同发行版使用的Linux内核一样

    • 我们现在说的Linux其实都是指的是发行版(Distribution version),就是使用Linux内核加上各种GNU的库文件、应用程序,构造而成的操作系统
    • 可以想象成同一个人(Linux内核),穿不通的衣服裙子羽绒服(软件)
  • 不同发行版有的免费,有的收费

  • 不同发行版

    • Red Hat:性能稳定,老牌的Linux发行版,RHEL收费,是red hat的企业版,源代码是开放的,收费是因为长期升级更新服务
    • 现在Red Hat分两个系列:一个是red hat公司提供收费技术支持的RHEL,另一个是社区开放的免费版Fedora,每半年发行一次,由于发行频繁导致性能不太稳定,企业一般不选用Fedora
    • Centos:算是RHEL的克隆版,社区企业级操作系统, 改与Redhat, 完全开源,兼具社区和企业特性,融合了Fedora和redhat优点,长期支持,大规模使用稳定,企业普遍使用,特别适合做服务器
    • Deepin:深度,中国发行
    • Debian:迄今为止,最遵循GUN规范的Linux系统
    • Ubuntu :Debian一个后继或分支,社区维护, 现在主要做手机系统和电脑桌面系统。
      graph TD;
  • Linux--> Debian
    Linux--> RedHat
    Linux--> Deepin深度

  • RedHat--> RHEL
    RedHat--> CentOS
    RedHat--> Fedora

标签:1.0,操作系统,GNU,Windows,Unix,内核,Linux,引入
From: https://www.cnblogs.com/dream-ze/p/17647754.html

相关文章

  • CSharp在Linux上使用Tesseract-OCR
    CSharp在Linux上使用Tesseract-OCR 1主要思路在Linux环境中使用ASP.NETCore调用TesseractOCR引擎可以按照以下步骤进行操作: 1确保你已经在Linux上安装和配置了TesseractOCR引擎。2在你的ASP.NETCore项目中,使用NuGet包管理器或dotnet命令行工具将Tesseract包添加......
  • linux 单网卡双IP设置
    [root@xinyin-redis-mq-1~]#vim/etc/sysconfig/network-scripts/ifcfg-ens192TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"BOOTPROTO="none"DEFROUTE="yes"IPV4_FAILURE_FATAL="no"IPV6INIT=......
  • linux那些事之页迁移(page migratiom)
    Pagemigration页迁移技术是内核中内存管理的一种比较重要的技术,最早该技术诞生于NUMA系统中(Pagemigration[LWN.net]),后续由于内存规整以及CMA和COW技术的出现,也需要用到页迁移技术,逐渐称为内核内存子系统中占有比较重要地位。页迁移在NUMA系统中的应用NUMA系统中,每个cpu运行......
  • Linux Apache2如何开启SSL https 443
    对于新手来说,配置SSL似乎是意见很麻烦的事情。首先ssl、https是什么,如何生成证书,如何生成可信任的证书(https打开为绿色无警告)。他们默认使用443端口,也可以手动配置为其他端口。apache系的配置文本文件又鬼™麻烦,看都看不懂。最头疼的是,不同的lamp平台,设置的地方还不一样。这里......
  • 关于Azure-存储账户-SMB-CIFS文件共享-在Linux系统中的挂载
    笔者在自己Azure平台创建了一个【标准】性能,即StorageV2类型的存储账户、然后在其下创建了一个文件共享CIFS注意:标准存储账户中的【文件共享】,只能创建基于SMB协议的文件共享如果要创建NFS文件共享,只能在创建存储账户时,【性能】处选择,高级,文件共享,才能同时支持CIFS和NFS 这......
  • 水果音乐制作软件fl studio v21.1.0.3713 中文特别版2023系统配置要求
    水果音乐制作软件flstudiov21.1.0.3713中文特别版是一个功能完备的音乐制作环境,能够进行多轨道音频录制、音序处理和混音,可以帮助用户创作专业质量的音乐轨道。借助VST托管、灵活的混音器、高级MIDI和ReWire支持,您将轻松驾驭各种音乐风格。歌曲或循环可以导出为.wav、.......
  • 模拟Linux文件管理员系统-shell实现
    模拟Linux文件管理员系统-shell实现注:此脚本仅供学习使用,具体需要根据实际情况进行测试调整。1系统要求2脚本执行效果2.1管理员登录效果2.2普通用户登录效果2.3密码文件格式用空格隔开,从左往右依次为:用户名密码是否为管理员(1为管理员0为普通用户)是否被锁定(1......
  • 如何在 Linux 上使用对拍
    和Windows差不多,你需要以下几个文件:我们依次来看里面都有什么:bf.cpp:这个cpp是用来使用暴力得出正解的。#include<bits/stdc++.h>#definefile(x)freopen(x,"r",stdin);#defineclos(x)freopen(x,"w",stdout);usingnamespacestd;intmain(){ file("a.in"......
  • 【Windows 11】安装 Android子系统 和 Linux子系统
    本文使用电脑系统:文章目录一、安卓子系统1.1安装WSA1.2使用二、Linux子系统2.1安装WSL以及WSL相关概念2.2安装一个Linux发行版2.21从MicrosoftStore安装2.22用命令安装2.23拓展三、拓展3.1存储位置3.2虚拟化技术3.3Windows虚拟内存3.3wsl帮助文件一、安卓子系......
  • linux上SQL Server 配置管理器的使用
    概述我们知道Windows平台上的SQLServer配置管理器是一个图形工具,用于管理与SQLServer关联的服务、配置SQLServer使用的网络协议以及管理SQLServer客户端计算机的网络连接配置。我们还可以使用SQLServer配置管理器来启动、暂停、恢复或停止服务,查看服务属性或更改服务......