粉丝330获赞2755

大家在用镜像的时候可能会遇到一个这样的问题,就是我刚做好的镜像使用上去之后,然后呢右方有需求,所以我们镜像里面可能需要加一个东西, 比如说我要装一个泡沫修饰,装一个 tips, 每次呃用过自己装就很麻烦,所以我们可以把这些基础的东西都坐在镜箱里面去,但是直接坐在镜箱里呢,他又很占镜箱的容量, 所以我们有另外一种方法,就是,呃在机场里面预制一个脚本,然后脚本的内容呢,我们就放在 我们的 gate 仓库上,需要加什么东西,我们就在 gate 仓库上去把它写进去。那把之前做的镜像我们先预定起来, 预警起来说我们演示一下怎么预预设置一个脚本在这个镜像里,好先登录上去, 登录上去之后我们找到 code 的安装目录, etc code, code 里面有这样一个文件,叫做 code 点 say config, 这个文件里面,嗯,就是可以编辑一下这个小本的。呃位置, 嗯,用那个 run c, m, d, 然后下面就写上具体的脚本位置,然后运行的方式,然后我们用卸了,卸了脚本,我们用卸了的方式运行, 然后脚本位置就是在就放在 etc code 下面一个脚本名,给它一个脚本名叫做 boost run 吧, 然后固定的格式,前面是固定的格式,后面就写指定的搅拌位置,我们就放在这个 burrow 里面去,然后保存推出。我们编辑一下这个搅拌文件 啊,这个小本的内容,我随便写了两个,两句话,然后做一个测试用的。呃,正常情况下是大家直接就把这个需要安装什么东西写在这个小本里,写进去之后在运行这个是,呃进项的时候,他就会自动去运行这个小本, 然后把这个脚本里你配置一些东西都会运行上去。呃,但是这样做的话,呃其实也不方便,因为你下次需要增加什么东西的时候,你还是要去编辑这个镜像,重新去生成一个新的镜像,然后才能实现你修改的东西加进去。 所以我们一般怎么做呢?我们一般在这个脚本里面呢,我们不写内容,我们直接引用一个外部的脚本,然后执行这个外部的脚本就好了。 看一下我这里使用的一个脚本是怎么写的啊?介绍一下那个脚本里面都有些什么内容。首先第一步我们下载一个外部的脚本,然后执行执行他 给他个权限,然后执行他,执行完之后把他删掉。啊,其实很简单,主要是我们要把这个外部这个教本内容怎么编辑。我们现在说一下啊,我们看一下我们我们自己写的一个教本内容吧。 啊,叫做 oversize into inter, 就是我们会引用这个脚本,把这个脚本下载下来,执行这个脚本里的内容,这个脚本里就会按照自己的需求去写上自己的一些东西,比如说时间服务器怎么配置, 然后装扎比克斯,然后装什么泡沫修饰,泡沫修饰一个客户端,然后比如说改什么防火墙的一台 boss 啊, 就说这样就很灵活了。就后面我们有其他的需求,比如说这个里面我们要装一个 ftp, 那么我就可以直接修改这个脚本的脚,这个这个脚本里面加衣裳装 ftp 的那个内容就好了。



大白话聊战一出,也就是 steak overflow, 咱们大家肯定都知道 steak overflow 这个网站对吧?他是全球最大的一个技术问答网站,咱们国内也有很多程序员在使用,他的官方网址呢,就是 stack overflow 点 com style of flow 这个名字,它其实是一种程序的运行时错误,咱们中文翻译过来呢,就叫做战役初。 这里的站也就是 stack, 它并不是数据结构中的站,而是程序内存中的一个分段,或者说是一个分区吧。 呃,咱们的程序呢,可以使用的内存有很多。呃,不同的内存呢,它有不同的作用,为了方便管理呢,操作系统会对这些程序的内存空间啊进行一个分区,把具有相同作用的内存呢,它都划分到一个区域之中。严格来说的话,这里的内存空间 间呢,应该叫做虚拟地址空间,或者叫做虚拟内存空间。不过为了照顾大部分初学者,这里我就不照本宣科了,我就把它叫做内存空间。哎,你比如在经典的三十二位环境下,程序可以使用的内存的是四个金币。 雷尼克的操作系统呢,会按照咱们这张图片来进行分区,大家可以先把视频暂停一下,仔细看一下这张图片,对各个分区呢有一个大概的印象, 图片里的内核空间是被操作系统所占用的,我们没法直接干预。图片里的保留区域呢,也不是用来存储数据的,他只用作一些特殊的目的。 呃,你比如可以让你的空指针指向这里,除了这两个区域,剩下的那些内存呢,才是被咱们自己所 编写的程序所占用的也就是图中的圈一和圈二两个部分,这其中呢,圈二在程序运行期间会一直存在,直到程序销毁才能被释放。圈一在程序运行期间会不断变化,也就是被不断的分配和释放。 在缺一这一部分中呢,咱们注意他有一个分段,就是叫做战,这一部分内存呢,他只有在一种情况情况下会被用到,就是吊用函数的时候。 函数被吊用的时候呢,有很多数据需要暂时压入占中,也就是存储的占中,包括 我们在代码中定义的数据,比如食餐局部变量,局部数组,局部对象,返回值等等,我们可以把他们称为局部数据。还有就是我们在代码中看不到的数据,比如函数的 啊,返回地址,一系列计算器的值等等,这些都是函数调用所需要的一些隐藏的数据。 局部数据呢,是我们在函数内部定义的,他们的作用欲呢,也仅仅限于函数内部,只有等到函数被真正定义的时候,他们才会被实际创建出来,也就是分配好内存。 至于隐藏数据呢,他是为了实现函数的调用过程,并保证在函数退出的时候能够恢复到他调用之前的场景,而不得不额外增加的一些溶于数据。这些隐藏数据都是由编译器分配的,咱们程序员自己是没法来干预的。 以上咱们提到的这些所有被压入战争的数据,通常都被叫做战争,或者叫做函数记录。函数每调用一次都会生成一个战 针,这个过程被称为函数入战,当函数调用结束的时候呢,战争就会被销毁,腾出自己的内存来给其他的函数使用,这个过程称作函数出战。函数调用开始的时候,先调用的函数先入战,后调用的函数呢,他后入战, 等到函数调用结束的时候,这个顺序他又是反过来的,也就是也就是后调用的函数先出站,而先调用的函数呢,他又后出站。你看看这个过程,他和函数,他和数据结构中站的进出方式是不是一样的呢?所以咱们这一段内存啊,就被叫做站。 在继续讲解占一书之前呢,咱们先来科普一个常识,就是一个县城他拥有一个站,站中的数据呢,是被当前县城所独占的,其他的县城啊不能访问。为了保证在一个建成里边可以 同时运行多个现场,比如几十个或者成百上千个编译器呢,他不会给单一的现场分配太多的占空。占内存一般也就是一照到八照, 而且站内存大,站内存的大小呢,他在程序编译的时候已经确定好了,等到咱们的程序在运行的时候呢,就不能改变了。所以如果你的程序使用的站内存超出了最大的值,那么运行的时候呢,就会发生一个占一处的错误。 一般情况下,站内存都是够用的,但是如果遇到以下两种情况,那么站内存呢,就会捉襟见肘 啊。第一,咱们在函数内部定义了一个大规模的数据,比如你定义了一个很大的数组。第二呢,函数调用的层次太深,导致咱们的战争呢,持续性的一个 积累,比如发生了,比如函数的嵌套吊用这两个就是发生战役出错误的典型场景。当然了,战内存的大小呢,可以通过编译参数来自己设定,人为的把战内存调大或者调小,只是一般不会有人这么干。 好,接下来呢,咱们再看一段简单的战役初的代码,在这个代码当中呢,咱们定义了一个很大的数组,他需要占用两兆的内存,而我们常用的 vs 编译器,他的战内存啊,默认只有一兆,所以这个代码在默认情况下就是会发生战役初的, 咱们可以使用 vs 二零一零的第八个模式来进行编辑,然后再运行他就会出现这个图片里的这样一个错误, 你看 steak overflow, 这就是战役初错误,战役初呀,他是一种治病的错误,发生战役出错误以后,咱们的程序就没有办法再继续运行了,你只能关闭他,没有其他的挽救措施了。 好,那么到这里呢,咱们的战一出就算讲完了,如果大家喜欢这种干货视频,可以多多的点赞和转发。 如果数据好的话,后边我会再继续讲解一系列的那个内存话题,比如内存泄露程序的内存布局,虚拟内存地址,空虚拟地址空间等等。好吧,呃,大家就一,大家就一就一箭三联吧,拜拜。

欧本 steak, 它是私有云的软件,欧本 stead, 从一二年开始,老男孩是首家培训欧本 stead 的,但是现在的环境呢,欧本 stead 就用的很少了,因为我们刚刚已经讲过了,现在是云计算环境了,厂商做的是工友云 插座,工友云上面操作系统都给你整出来了,你就直接进操作系统操作就行了,扩容,底下随便自动扩容,不需要欧门 style 环境。 有一些小的工友云,他的厂商底层是有欧门 style 的,所以这时候可能需要欧门 style。 那么现在的企业呢,都会使用阿里云、腾讯云,国外呢,选择亚马逊云,不会自己再搭建石油云产品了,因为维护起来特别不方便。特别是欧门 style, 我们当时讲的时候都要讲一周两周,还不好掌握, 那个时候更新变化还特别快,一变化了就又有很多问题。知道现在很多大学还在搞学欧门时代,一个超级超级难的一个技术,学完了还用不到, 谁学谁倒霉。现在企业用什么呀?现在企业都是刀客和 kpis, 就是容器化了,容器化它是一个类似于轻量级的云计算,刀客 kpi 这种容器化,呃,这种基于虚拟机的云计算都已经替代了。

hello, 大家好,最近不知道有没有人在使用 open pose editor 和那个 control net 的时候遇到了一个呃,这个报错,这个 f f m p e g 的报错, 说是 f f n p g not found。 这个报错经过研究应该是更新了 openpose 之后, pose is editor 之后会出现的一个报错错误,然后 根据网友的说法是更新 controlnat 插件之后会恢复正常,但是我更新之后是没有正常的。现在向大家分享我的那个排除 bug 的错误,我现在给演示一下,我 修改之后我是正常的啊,我,这个我现在反正是正常使用了。切换一下 open pose 的这个模型。 好,你看他现在也能正常切换模型,现在是修复完成的状态,但他说缺少这个 f f m p g 这个。呃,点击下载,这是他的那个官方网站 for release 继续下载了。呃,放在这里之后,我们压缩包在 c 盘的根目录下去解压。这是已经 那个 windows 的环境变量这个选项里面,然后找到 pass 路径 电加整个添加到环境变量里面。它的这个 过程就是直接点,然后找到我们的,然后呃这个 for built 的并这个文件夹,然后点击确定, 我点击确定保存之后,我是验证的话,你是否帮了这个让那我们就需要去查询一下 弹出这一系列的这个东西之后,最后看到这个柚子杠 h 就 get for help, 说明你成功安装了这个系统环境全部都安装的时候,安装完就只要点击重启 ui 就可以 正常使用了。以上就是这个 bug 的解决全流程,我是折身在世,谢谢大家。

dw 喷 pose 预处理失败怎么办?一般来说就是模型问题,要么就是你的路径不正确,要么就是你的模型下载不完整,那一般出现错误,你的后台 boss 窗口都会有提示,你只要把它复制出来去翻译一下就可以知道是哪个文件有问题的。 那这边我以我的文件路径为准,因为我的预储力是成功的,大家可以参考一下。首先第一个路径是这个,你要保证你有两个上百兆的文件,在文件名是 body post model 和 hand post model。 第二个路径是这个里边放着 dw openpos, 他在预处理时候会自己自动下载的文件, 但是往往因为网络问题,我们下载的时候其实是不完全的,他是识别不出来的,别以为文件大小一致就没有问题,如果提示依然能出现这个文件的名字,那我建议你还是重新去下载,这样其实能解决百分之九十九的问题的。

哈喽,大家好,上个视频我们一起讨论了关于 oppositor 的一些基本概念,以及什么是 opposito。 那这个视频我们 一起来聊一下。关于 opacepac 部署,在部署前我们需要先考虑 opecidia 怎样来部署他的部署方式以及他部署架构又或者他的版本问题。 上节课我们提到了欧布斯,那个是把很大的平台拆分成了不同核心组建来分别开发最终联合作测试。它这是一种微服务的架构,它这个架构的优点是它进行联合速测试的速度比较快,就是柔和在一起和 速度比较快,而且每个组建是互不干扰的,就是一个单独的个体,而且他可以执行多任务同时并发来节省我们的工作效率。但他这样做同时为我们安装带来了很大的 弊端和缺点。他随着他核心服务增多,我们在部署各个服务时,我们需要考虑到他的关系。就是我们在安装一个服务时,我们需要考虑到其他服务对该服务的调用。 因此随着他服务组建的增多,他的安装就非常麻烦。如果我们不注意的话,在安装室不注意的话,运行会出现问题。 在我们刚认识欧会 style 时,对每个组建还不是很清楚的了解,或者我们在不清楚各个组建的关系时,一旦出错, 他排坐起来就非常困难。 因此在深入研究我们赛格时,部署成了他一个蓝洞湖。我们怎么解决这个问题呢?就是用一键化部署来解决, 我们可以让其按照一个固定的模板自动执行。 说到一键化部署,我们就需要用到一键化部署工具,这里我们用的这里,我用的是帕克赛克,它是由红帽官方推出的一个快速部署环境的工具, 类似于 sb 一键化自动固数。那关于帕克斯带克这个工具的支持条件又和他运行方式又是怎样的呢? pascal, 他制止三种运行方式方式,三种运行方式,一个是快速运行、交互式运行和非交互式运行。快速运行 就类似于一个全全自动运行,我们无需参与,无需做任何操作,不需配置任何东西,只是当他安装完时,我们来做一定的配置和操作。 而交互式运行呢?是他重要的安装步骤,或者我们想自定义的步骤,全都是靠自己来定义和安装,手工安装, 人工选择,而非交物模式。相当于一个半自动化,就是我们写一个脚本,把这个脚本或者韵达,它叫做韵达文件,当成一个模板,然后系统会根据我们写的这个模板来进行 行自定义安装,就是根据我们需求来进行安装。然后帕克 stack 支持两种价格步数,一种是昂英万,昂英万就是把所有的服务折合到一个节点上,一台主机上,也是一台服务器上。 比如我们上节课提到的 ks 认证服务、 nike 网络服务,格拉斯镜像服务,还有存一些存,还有那两个存储服务块存储和对象存储。 那昂英万的定义就是 openstag, 是一个分布式的,它是由若干个不同的功能的节点组成的,比如控制节点、网络节点、存储节点和计算节点。在实际的生产环境中,我们是把这些节点放置在不同的主机上,而昂英万是把这 这些节点揉在一起,都装在这一个节一个主机上,就是我们说说到的麻雀虽小,五脏俱全,里面什么都有。另一种就是名垂闹的把控制节点和极端节点分离分开 来安装,其中控制节点安装了我们所知道的认证服 ks 盾,而计算节点就是除了 ks 盾以外的,现在任何组建都可以装到计算节点,并称为计算节点。比如我们搜到了存储服务森纳尔和 swf 者块存储和对象存储, 然后下面我们来了解一下他奥特赛的部署方法以及我们本次实验的环境。 本次实验我,额换 环境我,我的安装规划是使用欧文赛克工具一键化部署,就是帕克赛克工具一键化部署,然后部署一个奥运万的环境版本为 stand。 注意现在的 open style 版本他支持的是就是最新的版本,他支持的是 snows 八和 relax 八九八版本具有串串是个分水岭,有串以下的版本支持的是 支持的是孙总 s 七和 relax 七,我们可以看一下他这个官方文档中写到的, 我们翻译用来,在这里我们可以看到他说他, 他说券以及更早之前版本在斯顿 s 七和瑞拉哈的七上均有提供可以运行,而现在他都是在八省进行部署。 然后我本次的实验环境是在 vivovvvivovc 讯上安装一台 snows 七点九个讯机,八 g 双核硬盘,我这里使用了一百 g, 其实三十 g 以上就可以了。然后网卡模式耐特静态分配 app 地址, 然后我的 ip 是一七二点一,七点八点三点一, 这是我的一个环境。然后我为什么使用奥运万部署奥运万架构呢? 和一键化部署,因为一键化部署我们可以就是按照一个模板固定的运行,快速运行,这里我选择是快速运行,我无需做任何的操作, 在安装时我无需做任何操作,我只要在官方拉取一个相应的模板,他会根据这个模板自动安装。而昂英湾架构呢,我在安装时无需考虑控制节点,计算节点以及存储节点那些服务带来的吊用的关系, 把所有的东西都揉在了一个主机上,这样的话 节省了我们不注意安错或者关于一些节点的不熟悉 而发生他的冲突或者吊用的问题。 好了,这是我的一个安装环境,那这个视频就分享到这里, 我会把这篇博客分享到评论区。下个视频我们就是正式开始进行 overstack 的部署的操作。

哈喽,大家好,我是老范。大家在安装这个凹凸 desk 公司的产品的时候有没有碰到过这个问题,我们安装到一半的时候,他提示一个报错苦诺 open k 这个问题我们要怎么解决呢? 我们按下键盘的 win 加 r, 然后输入 r, e, g, e, d, i t 回车打开注册表,然后我们展开这个 local machine, 再展开这个软件这个 software, 然后再展开这个微软,然后再找到这个 windows w 开头这个 windows, 然后再找到这个 c 开头的这个展开,然后再找到一个安装包,这个 i 开头这个 instore 展开,然后点到最上面这个 usa day, 然后右键权限点高级, 然后这个所有者这里更改点高级,立即查到,选到我们当前的这个计算机用户名,确定确定, 把这个这里这个替换纸容器这个点上,然后再点添加,选择主体高级以及查找,然后再找到一个 ali one, 添加进来一开头的这个 anyone, 确定确定,然后再点这个完全控制读取,还有这个紧将这个也勾上,然后再点确定,然后我们再把这个勾也点上,要点确定 点确定四,这里得稍微等一下, 然后再点这里确定。现在我们再重新安装一遍, 打开这个吸盘,然后点到这个 auto disk, 找到这个解压出来的这个安装包 安装安装 出现这个问题,一般是我们卸载的时候没有卸载好,用了一些第三方的卸载能卸载 好的,现在就已经成功安装上了,打开看一下。 好的,本期视频就先到这里,感谢大家的观看。

当你创建完安卓尔的模拟器后,很多小伙伴在创建完模拟器其中的时候会遇到下面这样的一个错误,怕是说你创建的这个模拟器进程已经被终止了,具体原因就是下面这样的一个弹窗。下面我先来演示一下这个错误,打开我们的安卓四六六,点击右上角的这个小手机迪拜 s manager, 选择启动一个我们刚刚建立的模拟器,这时候会发现这个错误弹窗弹出来了, oh, god, please no! 接下来我们来解决这个错误。 首先我们明确一下这个问题出现的原因,大概率是模拟器所在文件夹的路径里有中文,所以他的解决办法就是将模拟器存储位置移动到不带中文的文件夹下就可以了。第一步,准备一个存放模拟器的文件夹,并且他命名为非中文, 打开本地的文件夹,找到地盘,选择新建文件夹,取名为 a a d, 然后转到 c 盘,找到自己的用户目录下,找到点安卓 a v d, 然后点进去,这里就是默认存放模拟器的位置。 这里为了复原这个错误,我建立了一个带有中文的文件夹,并将模拟器实际的存储位置放到了这个中文文件夹下面。 而出现这个错误的小伙伴的电脑很有可能是你这里的用户名是一个中文名,因此这个问题在解决方法可以说有两种,第一种是修改你的用户名为英文字母,第二种就是将你的 模拟器存储文件移动到一个不带有中文的路径里面。我们这里来为大家演示第二种解决方式,也就是我们会将这个模拟器文件移动到我们刚才准备好的地盘的 abd 文件夹下,我们现在选中这个文件, 然后右键剪切,回到我们刚才的地盘目录下,找到 avd, 然后在这里粘贴。 接下来我们还需要修改一个配置文件,回到我们的 c 盘的刚才的目录下,修改这个点爱恩爱结尾的文件打开方式,用记事本打开就可。我们需要修改这里的 pass, 改为刚才我们的在 d 盘的 avd, 下面的这个路径也要对应修改,修改完毕之后 ctrl s 保存,然后关闭文件,最后再重启安卓十六度即可。 点击重新启动 刚才的模拟器,会发现模拟器即可正常启动,这个问题就这样得到了解决,你学会了吗?

手机鸿蒙居然可以变回安卓?近日,某安上一位中国台湾网友给出了把哈木 us 变回安卓的方法,原理是停用手机鸿蒙上的 os, 也就是开源鸿蒙组件。停用 os 并不影响系统的开机和正常使用, 只不过会影响备忘录、日历、时钟等内置 app。 这些虽然是安卓 app, 但确实依赖了 os 组件,解决方法也很有创意,就是下载对应 app 的荣耀版本。按照这个中国台湾网友说法,荣耀手机并不包含 os 组件。接下来我先给大家展示一下正常的哈姆牛 s 中 os 是如何存在的, 然后试验一下这位网友给出的方法,并且分析一下他对手机红灯的影响。这是华为官方提供的开发用模拟器,版本是哈姆牛 s 三点一贝塔,我们直接可以使用 adb 连接该模拟器,分析其中的进程情况。从进程分析来看,除了安卓正常的引力的之外,哈姆牛 s 中的 os 组件分为两个部分, 一个部分是由 innit 启动的系统级进程,例如 s a manager, 它和其他的安卓系统进程是一个级别的,由 innit 直接拉起,可以看到它们的 parent 都是一,还有一部分是容器化的,这部分由 continued d 进程拉起一个叫 ohco innit 进程,再拉起。这里就是所有由 ohco innit 拉起的 ohs 组件, 这些组件当中大部分是可以在开源的 o h o s 系统中找到对应原码的。那 ctrl d 由谁拉起呢?答案也是引逆,他 可以看到这里的 continent d 晋城号为八二四幺,它的 parent 也是一,我们把晋城数画出来,大概是长这个样子的,至于为什么一部分由隐匿的直接拉起,另一部分是容器化的,这个只有华为的工程师能给出详细的解释了。 该测试部分 ohs 组件在容器环境内可能更方便,因为不用操心外部的进程干扰。 ok, 正常的情况就讲完了,下面我们按照开头提供的操作, 尝试关闭 o h o s 执行下面这条命令,然后重启手机,观察此时系统中的进程。可以发现前面说过的有 ctrl d 拉起的进程全部没有了,也就是这一大块整个没了,但是有隐匿的拉起的进程,例如 s a manager, audio sa 等没有受影响。 从这个角度讲,这位中国台湾网友的说法并不准确,事实上仍然有部分 ohos 的组建是存在的,当然可能没法正常工作了。 我的理解里不能说他完全变回了 emui, 按他的方法操作之后,整个手机的启动没有受到影响,模拟器里的 app 也没有受到影响,不过模拟器本身里面预装的 app 就很少,所以并没有什么参考价值。 今天的视频到这就结束了,大家如果想折腾的话,可以按开头的方法折腾一下,也不用怕折腾坏,是有办法恢复的。至于关闭了部分 o h o s 组件之后,他算是个什么系统,这个就留给评论区的各位讨论了。