虚拟机

Hello China操作系统在Virtual PC上的安装和使用

你说的曾经没有我的故事 提交于 2020-03-13 18:48:26
本文介绍如何在Windows 7操作系统和Virtual PC 2007虚拟机上安装Hello China操作系统,Hello China的版本是V1.75。对于Windows XP等非Windows 7操作系统,由于不能直接支持虚拟硬盘,不能按照本文介绍的方法安装Hello China的GUI功能,但是可以安装内核和基于字符界面的shell。 HelloChina在Virtual PC上的启动过程 首先介绍一下Hello ChinaV1.75在Virtual PC上的启动过程。为了最大可能的降低安装和使用的复杂性,V1.75版本在Virtual PC上是通过虚拟软盘启动的。Hello China的内核和核心驱动程序(比如键盘驱动、鼠标驱动、IDE接口硬盘驱动、文件系统等)等文件都集成在了虚拟软盘中。这样通过虚拟软盘启动计算机,操作系统的核心模块就直接从虚拟软盘中加载到内存并执行。内核初始化完成之后,Hello China会进入字符shell模式,这时候用户就可以运行字符模式命令了。 在字符模式下,用户输入GUI命令,即可进入图形模式的shell。一旦用户输入gui命令,Hello China会在硬盘的第一个分区(用C:标识,与Windows类似)的PTHOUSE目录下,寻找hcngui.bin文件,这个文件即是Hello China图形模式模块的可执行二进制文件。一旦找到这个文件

VM安装虚拟机

房东的猫 提交于 2020-03-13 09:36:21
第一步 下载centos镜像 https://www.centos.org/download/ 第二步 安装vm https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html 第三步 首页-->创建新的虚拟机 来源: https://www.cnblogs.com/wangcongxing/p/12484409.html

Java 虚拟机的内存结构

蹲街弑〆低调 提交于 2020-03-13 05:38:33
Java虚拟机运行时数据区 整个程序执行过程中,JVM会用一段空间来存储程序执行期间需要用到的数据和相关信息,这段空间一般被称作为Runtime Data Area(运行时数据区),也就是我们常说的JVM内存。因此,在Java中我们常常说到的内存管理就是针对这段空间进行的管理(如何分配和回收内存空间)。 运行时数据区通常包括以下这几个部分: 程序计数器(Program Counter Register)   程序计数器(Program Count Register)是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型里(仅是概念模型,各种虚拟机可能通过一些更高效的方式去实现),字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支,循环,跳转,异常处理,线程恢复等基础功能都需要依赖这个计数器来完成。   由于Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个确定的时刻,一个处理器(对于多核处理器来说是一个内核)都只会执行一条线程中的指令。因此,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间的计数器互不影响,独立存储,我们称这类内存区域为“线程私有”的内存。   如果线程正在执行的是一个Java方法

Java虚拟机内存结构

萝らか妹 提交于 2020-03-13 05:36:39
起源 1960年Lisp语言: 第一门真正使用内存动态分配和垃圾回收的语言。 运行时数据区域 1.程序计数器 Program Counter Register 1. 当前线程所执行的字节码的行号指示器。 2. 字节码解释器的工作是通过改变这个计数器的值去选取下一条需要执行的字节码指令。 3. 每条线程都一个独立的程序计数器。 4. 如果执行java方法,该位置记录正在执行的字节码指令地址,如果是native方法,该位置为空。 该部分是唯一不会OutOfMemory的部分。 2.Java虚拟机栈 Java Virtual Machine Stack 每一个方法从执行到完成的过程,对应着一个栈帧在虚拟机栈从入栈到出栈的过程。 局部变量表 编译期可知的各种数据类型、对象引用、returnAddress类型。 long、double占用2个局部变量空间(Slot)。局部变量空间大小在编译期确定。 StackoverflowError、OutofMemoryError 3.本地方法栈 Native Method Stack 4.Java堆 Java Heap 虚拟机管理的内存中最大的一块。 所有的对象实例和数组都在堆上分配。(例外:栈上分配、标量替换优化) 线程私有:分配缓冲区(Thread Local Allocation Buffer,TLAB) 5.方法区 Method Area

Java虚拟机--内存结构

筅森魡賤 提交于 2020-03-13 05:35:53
1.JVM是什么?    JVM:Java Virtual Mechinal(Java虚拟机).它是一个虚构的计算机,是通过在实际的计算机上模拟各种功能来实现的。JVM的主要工作是解释自己的指令集(字节码,如java源码编译成class文件在虚拟机上运行)并映射到本地的CPU指令集或OS的系统调用。Java语言跨平台的本质就是不同的操作系统使用不同的JVM映射规则,使其与操作系统无关,从而实现跨平台。 2.JVM的内存结构是什么样子?    Java虚拟机在运行Java程序的时候,会把它所管理的内存划分为若干个不同的数据区域,如图:        3.那么接下来每个数据区域都是做什么的呢?    (1).程序计数器: 是一块较小的内存空间,可以看作是当前线程所执行字节码的行号指示器。尤其在多线程的情况下,尤为重要。Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,即在任何一个确定时刻,一个处理器只会执行一条线程,当线程切换后就需要恢复到正确位置,因此,程序计数器要实现线程隔离,每个线程都有自己的专属的计数器。值得注意的是: 此内存区域是唯一一个在Java虚拟机规范中没有规定任何OutOfMemoryError情况的区域。    (2).堆 : 此内存区域是Java虚拟机管理的最大一块内存,同时也是线程共有的,在虚拟机启动时创建

kali折腾日记之虚拟机安装一

拈花ヽ惹草 提交于 2020-03-12 23:49:26
因为自己是小白,所有的方法与步骤全是借鉴网上的教程与自己摸索出来的。 写下这些:一:是给自己做个笔记。 二:是为了向我一样的小白们不仅仅会安装,更要理解这些步骤的意义。 首先准备工作:一:虚拟机:vmwareworkstation14 二:kali镜像文件(推荐官网下载,其实速度也不算太慢,但版本一定要选对,不理解版本意思的可以看文件大小,官网的镜像完整版是2.8G左右,轻量版的只有几百M,你安装好以后轻量版的集成工具比较少大部分都需要自己手动下载,所以对初学者来说不算太友好,建议大家下载完整版) 下面开始正式安装: 首先新建一个虚拟机(如图): 选择自定义就行 这里是硬件兼容性,不用管他,直接下一步 这里先选择安装程序映像文件, 然后点击浏览选择你下载好的映像文件(我用的是2018.2版的): 选中之后点击下一步,就会选择操作系统了,这里选linux 下面的版本,因为最新的kali是基于Debian7制作的,所以我选择Debian7.x(其实版本的选择无所谓的,你选其他版本也没有任何影响) 这里是给你虚拟机起一个名字以及设置它的路径: (我建议大家找一个容量相对大一点的盘建一个同名文件夹来存放) 选择处理器数量及核数,根据自己的处理器来选择就好了,不知道的可以百度一下自己处理器的型号,看一下数量与内核数量: 设置内存大小,根据自己机器配置来分配,一般2G差不多就很流畅了

kali折腾日记之虚拟机安装二

二次信任 提交于 2020-03-12 23:46:53
这次我记录的是虚拟机kali里安装vmtool,如果还不会安装kali的可以参照 我上一篇日记 首先,启动虚拟机,登陆进去后打开终端 输入ls查看当前路径下的文件夹,可以看见只有几个默认创建的文件夹, 因为当时是用中文安装,所以显示是中文文件夹,然后用mkdir vmtool命令创建一个名为vmtool的文件夹 这里你再输入ls就可以看见我们创建好的文件夹了,然后点击虚拟机左上角的虚拟机选项,点开后选择安装VMware Tools 选择后你就可以在虚拟机桌面上看见一个光盘样的 然后进入VMware Tools所在的目录cd /media/cdrom0然后查看ls 我们可以看见一串红色的文件,那就是VMware Tools的压缩包,然后复制它到我们的root目录下的vmtool,也就是刚刚创建的那个文件夹,命令太长我就不打了,截图里有,然后切换到vmtool文件夹 解压压缩包(后面的命令我就不敲了,自己看截图吧) 解压成功后 然后这个文件夹下会有一个vmware-tools-distrib文件夹,切换进去cd ./vmware-tools-distrib,查看目录下的所有文件ls 运行该目录下的vmware-install.pl ./vmware-install.pl 然后一路的回车,稍等一会 安装成功,一般它就自动全屏了 如果没有自动全屏,那么你还需要再设置一下

ssh登录慢的原因

夙愿已清 提交于 2020-03-12 20:01:18
ssh登录慢的原因很多人都遇到过,我总结了一下,目前我遇到过的有四种方法可以加快ssh速度,针对不同情况也许只有某一种适合你,下面以Debian和为例: 1.关闭ssh DNS反向解析,原理不必说了吧 vim /etc/ssh/sshd_config 复制代码 在文件尾部添加 UseDNS no 复制代码 2.在/etc/hosts里面添加主机对应关系,Debian从/etc/hostname里面查看,要保证这两个文件主机名称一致;Redhat从/etc/sysconfig/network中查看 3. 仅针对本地虚拟机: 当你本机安装了VMware或者Virtualbox的时候本地会多出两块虚拟网卡,一个是host-only,一个是nat,当你使用其中一个模式的时候,ssh登陆到虚拟机Linux上面时会首先尝试使用你的本地网络(就是你联网用的那块网卡地址)去连接虚拟机,这样当然是连接不成功的,会超时,当你再次连接的时候一般就成功了,这次使用的才是你对应的虚拟网卡模式。 4.关闭 GSSAPI 的用户认证 vim /etc/ssh/ssh_config 复制代码 将 GSSAPIAuthentication yes 复制代码 改成 GSSAPIAuthentication no 复制代码 来源: https://www.cnblogs.com/lyyyuna/archive/2013

“网红” WebAssembly 与 K8s 如何实现双剑合璧?

北城以北 提交于 2020-03-12 19:03:51
作者 | 易立 阿里巴巴资深技术专家 导读 :WebAssembly 技术已经走出浏览器,让计算无处不在。本文利用 containerd 的扩展机制,可以为 WebAssembly 应用提供与其他容器应用一致的、抽象的、应用分发、交付和运维模型,可以在 Kubernetes 集群中进行统一调度和管理。 无处不在的 WebAssembly 如果评选 2019 年编程技术的“网红”,无论是前端圈还是后端圈,WebAssembly (WASM) 都绝对能够高票入选。然而,如果评选最被“低估”的技术,我觉得 WebAssembly 也可以轻松入围。 借用伏尔泰曾评价神圣罗马帝国的句式 “既不神圣,也不罗马,更非帝国”,我们也可以说WebAssembly “既不限于 Web,更不是 Assembly(汇编语言)”。 在 2019 年 12 月,万维网联盟 (World Wide Web Consortium - W3C) 宣布 WebAssembly 核心规范正式成为 Web 标准 , 这使得 WebAssembly 成为互联网上与 HTML, CSS, and JavaScript 并列的第四种官方语言,可以原生的运行在浏览器上。而更加重要的是,WebAssembly 作为一个安全的、可移植、高效率的虚拟机沙箱,可以在 Internet 的任何地方、任何平台(不同操作系统,不同 CPU

“网红” WebAssembly 与 K8s 如何实现双剑合璧?

倾然丶 夕夏残阳落幕 提交于 2020-03-12 19:03:36
作者 | 易立 阿里巴巴资深技术专家 导读 :WebAssembly 技术已经走出浏览器,让计算无处不在。本文利用 containerd 的扩展机制,可以为 WebAssembly 应用提供与其他容器应用一致的、抽象的、应用分发、交付和运维模型,可以在 Kubernetes 集群中进行统一调度和管理。 无处不在的 WebAssembly 如果评选 2019 年编程技术的“网红”,无论是前端圈还是后端圈,WebAssembly (WASM) 都绝对能够高票入选。然而,如果评选最被“低估”的技术,我觉得 WebAssembly 也可以轻松入围。 借用伏尔泰曾评价神圣罗马帝国的句式 “既不神圣,也不罗马,更非帝国”,我们也可以说WebAssembly “既不限于 Web,更不是 Assembly(汇编语言)”。 在 2019 年 12 月,万维网联盟 (World Wide Web Consortium - W3C) 宣布 WebAssembly 核心规范正式成为 Web 标准 , 这使得 WebAssembly 成为互联网上与 HTML, CSS, and JavaScript 并列的第四种官方语言,可以原生的运行在浏览器上。而更加重要的是,WebAssembly 作为一个安全的、可移植、高效率的虚拟机沙箱,可以在 Internet 的任何地方、任何平台(不同操作系统,不同 CPU