一些关于云电脑与虚拟化东西
前言
好久没有更新了,在进行自我校准。
云计算是什么?
云计算是一种模型,它使得用户能够随时随地、方便地、按需访问共享的可配置计算资源池(例如,网络、服务器、存储、应用程序和服务),这些资源可以快速配置和释放,几乎不需要管理努力或服务提供商的交互。
云特征
-
按需自助服务
- 专注于根据用户请求提供IT服务
- 不需要与云提供商进行人工交互
- 云计算提供了一种交付计算服务的方式,使得用户设备之外的底层技术几乎不可见
-
广泛的网络访问
- 专注于随时随地通过用户选择的设备提供IT服务
-
资源池化
- 将计算资源整合到池中以提高利用率
-
快速弹性
- 根据底层工作负载的要求和使用特征动态分配和收缩资源
-
可度量服务
- 专注于提供可以计量使用量并按需收费的IT服务(如果需要)通过包括订阅、使用定价在内的定价模型 - 服务水平协议(SLA)
云服务模型
- 软件即服务(SaaS)
- 平台即服务(PaaS)
- 基础设施即服务(IaaS)
云部署模型
- 公有云
- 私有云
- 混合云
- 社区云
虚拟化的历史
虚拟化有多久了?
半个世纪!
当时最成功的计算机S/360大型机系统没有在CPU级别提供虚拟内存和特权分离。当时的主流计算模型是非交互式的、批量作业。
虚拟化的概念直到六十年代末才在CP-40项目中被研究和尝试,该项目最终导致了第一个真正的完整虚拟化支持,出现在1966年的IBM S/370-67中。
时间共享系统开发的主要驱动因素是,批量处理中等待I/O是低效的,程序必须在程序员可以获得失败之前排队等待。
有趣的是,正是时间共享概念的兴起催生了计算机安全问题。
尽管时间共享技术在当时的政治斗争中输给了批处理架构。
在个人电脑世界中,时间共享功能的动力并不显著,因为个人电脑的CPU足够便宜,可以分配给一个人使用。
许多公司推出了提供虚拟化功能的桌面产品。但它们并不十分实用(由于复杂性和低性能)。
然而,互联网的兴起带来了大量服务器农场的出现,运行着像网站这样的应用程序。这些应用程序的负载模式显然与大型机和终端一样是突发性的。
因此,在同一个系统上并行运行许多不同的应用程序再次变得有意义。
大约在2005年,个人电脑CPU供应商引入了支持虚拟化的新CPU指令——英特尔VT-x和AMD-V CPU。
到这一刻,实际的虚拟化已成为可能。
虚拟化到底是什么?
现在,有些人在谈到虚拟化的术语时可能会感到有点困惑。让我们弄清楚是什么:
多线程:执行环境允许每个进程并行运行多个代码流。
多任务:操作系统让每个任务(进程)感觉它是唯一在系统上运行的,并且可以完全访问系统资源(内存,I/O)。对于虚拟机工作的关键硬件组件是MMU。
有趣的事实:在批处理时代,多任务的替代方案是多编程——当任务在I/O上被阻塞时,从CPU上卸下的动态任务队列。
虚拟化:每个操作系统实例都感觉它是在CPU/系统上唯一运行的操作系统,并且可以完全访问系统资源(例如,每个操作系统都认为它有自己的CPU、内存、I/O)。
容器:给一组任务、应用程序的印象,它是在操作系统内唯一运行的。然而,容器共享同一个操作系统内核实例。
与虚拟化主题不直接相关,但并行性可能出现的另一个地方是CPU。随着制造工艺的进步,我们现在有了内置在单个芯片中的多个CPU(多核CPU)。
另一种技巧是虚拟化CPU本身——超线程技术在单个物理CPU之上呈现多个虚拟CPU。
2005年之前虚拟化是如何工作的?
实际上,基于各种技巧,使用英特尔80386+ CPU可以实现虚拟化。比如将管理程序放在环0,虚拟机放在环1,应用程序放在环2。
尽管这从实现角度来看很复杂,有显著的限制,并且运行缓慢。
随着2005年(个人电脑CPU)更好的CPU支持虚拟机管理的出现,虚拟化变得实用。
这已经是云了吗?
一旦虚拟化就位,它如何成为云?
为了提供云服务,我们需要:
- 管理程序来控制虚拟机的生命周期
- 更高层次的虚拟化管理基础设施和额外的服务
那么为什么这个东西被称为“管理程序”呢?如果这个术语没有已经被操作系统(监督资源和任务)占用的话,它可能是“监督器”。因此,管理程序监督租户操作系统。
管理程序
管理程序是一个创建和运行虚拟机的软件。
运行一个或多个虚拟机的管理程序的计算机被称为宿主机,每个虚拟机被称为客户机。
存在两种类型的管理程序:
- 第1类或裸机或本地
- 第2类或托管管理程序
本地管理程序
这些管理程序直接在宿主的硬件上运行,以控制硬件和管理客户操作系统。
IBM在1960年代开发的第一批管理程序是本地管理程序。现代本地管理程序包括:Xen、Oracle VM Server、Microsoft Hyper-V和VMware ESX/ESXi。
托管管理程序
这些管理程序像其他计算机程序一样在传统的操作系统上运行。客户操作系统作为宿主上的一个进程运行。第2类管理程序将客户操作系统从宿主操作系统中抽象出来,反之亦然。
现代托管管理程序包括:
- VMware
- VirtualBox
- Parallels Desktop
- QEMU
这两种类型之间的区别并不一定清晰。
Linux的KVM和FreeBSD的bhyve是内核模块,有效地将宿主操作系统转换为第1类管理程序。
同时,由于Linux和FreeBSD仍然是通用操作系统,有其他应用程序竞争虚拟机资源,KVM和bhyve也可以被归类为第2类管理程序。
本地与托管混淆
为了增加更多的混淆,管理程序进一步细分为所谓的全虚拟化和准虚拟化能力。
后者涉及修改客户操作系统以显式调用管理程序的服务,而不是让管理程序模拟硬件接口到客户操作系统。在硬件对虚拟化的支持没有完全实现的时候,准虚拟化更有意义。
为什么它被称为管理程序?
“管理程序”这个术语指的是当你有一个监督操作系统内核的监督器时的情况。从历史上看,操作系统内核也被称为监督器(控制用户应用程序)。因此 - 管理程序。
虚拟化管理
到目前为止,我们已经有了在宿主系统上调用虚拟机的方法。问题是:
- 除了启动虚拟机,用户可能需要部署操作系统、配置网络、存储等
- 周围有许多不同的管理程序,用户希望有一个单一的用户界面来管理它们
libvirt项目解决了后一个问题 - 系统提供了一个守护进程来管理客户机,用户面向的CLI工具来控制libvirtd守护进程,以及API让其他程序管理客户机。
oVirt软件在数据中心层面解决了这个问题。它提供了数据中心通常存在的一系列虚拟服务,如:
- [虚拟]机器是计算节点的基础
- 存储节点
- 网络
用户面向的GUI模拟了一个虚拟数据中心,用户可以点击构建他们的计算基础设施。
OpenStack项目提供了与oVirt类似的服务,但在更大的规模、灵活性和可扩展性上。有了OpenStack,人们可以在全球范围内启动成千上万的虚拟机。
OpenStack被设计为一个开放式的网络服务集合,它们相互交互以实现虚拟机生命周期的工作流程。
我们将在本课程中深入研究OpenStack。
云特性
虚拟机可以创建不同的(在它们的“硬件”能力部分)以反映操作系统/应用程序对硬件的要求。
非常容易展开一台新机器并安装操作系统。这可以完全远程完成,无需人工干预。
此外,虚拟机可以被复制(或克隆),从而创建从它们的能力角度以及运行其中的操作系统和应用程序来看完全相同的虚拟计算机。
一旦你的虚拟机处于静止状态,你可以轻松地完全备份它。它可能只是一个应用程序备份,也可以包括整个内存和整个虚拟机的状态。这可以用于运行中的虚拟机的实时迁移。
这为在运行时扩展/缩减计算资源、将虚拟机跨数据中心或地理位置移动奠定了基础。
在虚拟机内运行的操作系统通常看不到宿主计算机的真实硬件。相反,它被呈现一些通用的虚拟硬件,这些硬件映射到真实硬件,因此虚拟硬件的API永远不会改变。这使得从操作系统维护的角度来看更容易,同时也简化了虚拟机从一个硬件迁移到另一个硬件的过程。
如果你在软件开发或测试中,能够复制一个潜在复杂的黄金标准环境以备后用可能是一个非常强大的功能。
相关文章:
一些关于云电脑与虚拟化东西
前言 好久没有更新了,在进行自我校准。 云计算是什么? 云计算是一种模型,它使得用户能够随时随地、方便地、按需访问共享的可配置计算资源池(例如,网络、服务器、存储、应用程序和服务),这些资…...
Java实现图片转pdf
该方法可以选择多个图片是否合并为一个pdf输出,也可以选择图片为横向或者纵向输出,也可以选择pdf页面为A3或者A4 第一步 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version…...
【iOS】使用AFNetworking进行网络请求
文章目录 前言AFNetworkingAFNetworking 的核心组件AKNetworking库的常用方法使用AKNetworking进行网络请求的步骤和代码示例 总结 前言 在暑假写天气预报项目时,我们已经接触到网络请求,当时我们是使用URLSession类,即Foundation框架中用于管…...
ThingsBoard规则链节点:RPC Call Reply节点详解
引言 1. RPC Call Reply 节点简介 2. 节点配置 2.1 基本配置示例 3. 使用场景 3.1 设备控制 3.2 状态查询 3.3 命令执行 4. 实际项目中的应用 4.1 项目背景 4.2 项目需求 4.3 实现步骤 5. 总结 引言 ThingsBoard 是一个开源的物联网平台,提供了设备管理…...
【AI换装整合包及教程】OOTDiffusion:以AI技术引领的时尚换装革命
在当今数字化快速发展的时代,人工智能(AI)技术正以前所未有的速度改变着我们的生活。从智能家居到自动驾驶,从在线教育到虚拟现实,AI的应用范围正在不断扩展。而在时尚领域,一款名为OOTDiffusion࿰…...
排序算法详细总结
算法 定义:算法是解决特定问题的明确步骤集合。算法的效率通常用时间复杂度和空间复杂度来衡量。 排序算法 定义:排序算法是计算机科学中用于对元素序列进行排序的一系列算法。排序算法在各种应用中都非常常见,从简单的数据处理到复杂的数…...
uniapp MD5加密
安装: npm install js-md5 -D 引入: import Md5 from js-md5 需求加密一个对象, login_form: {openId: 123456789,phone: ,scenario: 656677,phoneSessionKey: ,openIdSessionKey: ,timeStamp: , }, //10位时间戳(秒)…...
提升视觉回归测试体验:Cypress 插件推荐
项目介绍 在现代前端开发中,视觉回归测试是确保用户界面在不同版本之间保持一致性的关键步骤。然而,传统的视觉回归测试工具往往复杂且难以使用。为了解决这一问题,我们推荐一款专为 Cypress 设计的插件:Cypress Plugin Visual Re…...
fastbootd模式刷android固件的方法
1. fastbootd追根溯源 Google在Android 10上正式引入了动态分区机制来提升OTA的可扩展性。动态分区使能后:andorid系统可以在开机阶段动态地进行分区创建、分区销毁、分区大小调整等操作,下游厂商只需要规划好super分区的总大小,其内部的各个…...
基于C#实现Windows后台窗口操作与图像处理技术分析
在Windows编程中,操作后台窗口是一项复杂而有用的技术。它可以用来自动化用户界面测试、应用程序机器人等场景。本文将深入探讨如何在C#中绑定后台窗口、获取后台窗口界面图片,以及在图片中寻找指定图标并获取坐标。本技术文章结合最先进的资料与实践经验…...
戴尔电脑 Bios 如何进入?Dell Bios 进入 Bios 快捷键是什么?
BIOS(基本输入输出系统)是计算机启动时运行的第一个程序,它负责初始化硬件并加载操作系统。对于戴尔电脑用户来说,有时可能需要进入 BIOS 进行一些特定的设置调整,比如更改启动顺序、调整性能选项或解决硬件兼容性问题…...
数据结构之二叉树——堆 详解(含代码实现)
1.堆 如果有一个关键码的集合 K { , , , … ,},把它的所有元素按完全二叉树的顺序存储方式存储 在一个一维数组中,则称为小堆( 或大堆 ) 。将根节点最大的堆叫做最大堆或大根堆,根节点最小的…...
推荐一款面向增材制造的高效设计平台:nTopology
nTopology是一款面向增材制造的高效设计平台,平台预置了大量增材制造常用的设计工具包,工程师通过调用若干个预置工具包、或自主开发定制的工具包,建立一个工作流,实现复杂几何结构的参数化设计。nTopology集合了的强大几何建模和…...
SQL,力扣题目1767,寻找没有被执行的任务对【递归】
一、力扣链接 LeetCode_1767 二、题目描述 表:Tasks ------------------------- | Column Name | Type | ------------------------- | task_id | int | | subtasks_count | int | ------------------------- task_id 具有唯一值的列。 ta…...
JavaScript数据类型- Symbol 详解
文章目录 前言1.唯一性2. 描述3. 作为对象属性键4. 全局注册6. 不可变性7. 隐式转换 前言 Symbol是ES6新增内容,代表创建后独一无二且不可变的数据类型,它主要是为了解决可能出现的全局变量冲突的问题 在JavaScript发展的过程中,其中的ES6带…...
WordPress网站添加嵌入B站视频,自适应屏幕大小,取消自动播放
结合bv号 改成以下嵌入式代码(自适应屏幕大小,取消自动播放) <iframe style"width: 100%; aspect-ratio: 16/9;" src"//player.bilibili.com/player.html?isOutsidetrue&bvidBV13CSVYREpr&p1&autoplay0" scrolling…...
11.6 校内模拟赛总结
打的很顺的一场 复盘 7:40 开题,看到题目名很interesting T1 看起来很典,中位数显然考虑二分,然后就是最大子段和;T2 构造?一看数据范围这么小,感觉不是很难做;T3 神秘数据结构;T…...
Redis常用的五大数据类型(列表List,集合set)
简介 List 的特点:单键多值。底层实际是个双向链表,对两端的操作性能很高,通过索引下标的操作中间的节点性能会较差。 Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边ÿ…...
Ubuntu 20.04 部署向量数据库 Milvus + Attu
前言 最开始在自己的办公电脑(无显卡的 windows 10 系统) 上使用 Docker Desktop 部署了 Milvus 容器,方便的很, 下载 Attu 也很方便,直接就把这个向量数据库通过 Attu 这个图形化界面跑了起来,使用起来感…...
实现数传数据转网口(以太网)和遥控器SBUS信号转串口的功能
为了帮助你实现数传数据转网口(以太网)和SBUS信号转串口的功能,这里提供一个基本的框架。我们将使用STM32微控制器来完成这些任务。假设你已经具备了STM32的基本开发经验,并且已经安装了相应的开发环境(如STM32CubeIDE…...
2026 年 5 月 AI 热点:大模型、硬件、人形机器人全面升级
一、大模型技术突破 | LLM Technology Breakthroughs 1.1 OpenAI GPT‑5.5 正式成为ChatGPT默认模型 | GPT‑5.5 Becomes ChatGPT Default Model 英文内容 | English On May 5, 2026, OpenAI officially rolled out GPT‑5.5 Instant as the new default model for ChatGPT, …...
迁移学习提升可穿戴设备睡眠监测精度的技术解析
1. 项目概述:迁移学习如何提升可穿戴设备的睡眠监测精度作为一名长期关注健康监测技术的从业者,我见证了可穿戴设备在睡眠监测领域的快速发展。但一个核心痛点始终存在:基于PPG(光电容积图)等外周生理信号的可穿戴设备…...
AI工程实践简报:如何用高质量信号提升技术决策效率
1. 项目概述:一份真正“够用”的AI资讯简报,到底长什么样?“This AI newsletter is all you need #38”——光看标题,你可能以为这又是一份泛泛而谈的行业 roundup,或是堆砌热点、浮于表面的“信息快餐”。但作为连续三…...
Vue/React/Svelte通用Lovable实践框架(内部首发):1套配置+4个插件=自动注入用户喜爱度
更多请点击: https://kaifayun.com 第一章:Vue/React/Svelte通用Lovable实践框架(内部首发):1套配置4个插件自动注入用户喜爱度 Lovable 是一套面向用户体验(UX)可量化提升的前端工程化实践框架…...
UE4SS技术解析:构建虚幻引擎游戏逆向工程与模组开发的完整生态
UE4SS技术解析:构建虚幻引擎游戏逆向工程与模组开发的完整生态 【免费下载链接】RE-UE4SS Injectable LUA scripting system, SDK generator, live property editor and other dumping utilities for UE4/5 games 项目地址: https://gitcode.com/gh_mirrors/re/RE…...
Taotoken的TokenPlan套餐如何为个人开发者节省成本
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken的TokenPlan套餐如何为个人开发者节省成本 对于个人开发者或小型工作室而言,在项目开发中集成大模型API是提升…...
全栈开发的核心技能:掌握这4个技术,成为全栈工程师
对于很多深耕测试领域多年的软件测试从业者来说,“转全栈开发”早已不是一个陌生的方向——无论是为了突破职业瓶颈,还是为了打通测试到开发的链路,提升自己的端到端交付能力,抑或是拓展职业选择的边界,全栈工程师都是…...
GESP6级C++考试语法知识(二十五、深度优先搜索(五、DFS终极奥义))
⚔️第五课《DFS终极奥义》——原来算法世界到处都是 DFS!🌟一、故事开始:算法圣殿1、经过前四课。小骑士 DFS 已经成为了:🌟DFS 小勇者!2、但是。算法王国最深处。还有一座:🌟“dfs…...
写给前端的 CANN-ops-rand:昇腾随机数生成算子库到底是啥?
之前做强化学习,兄弟问我:“哥,我想在昇腾上做蒙特卡洛模拟,随机数生成有现成的库吗?” 好问题。今天一次说清楚。 ops-rand 是啥? ops-rand Operations for Random,昇腾随机数生成算子库。 一…...
Harness 中的令牌级流控与字符级计费
Harness 中的令牌级流控与字符级计费:从原理到落地的全指南 关键词:Harness CI/CD, 令牌级流控, 字符级计费, 微服务流量治理, 用量计量, 云原生成本优化, 网关限流 摘要:作为全球领先的智能软件交付平台,Harness 每天要处理来自数千家企业客户的上亿次 API 调用、数百万次…...
