VM上完美运行macos

  VM上完美运行macos
  
  作者:方辰昱
  
  时间:十月三号
  
  效果图
  
  简要步骤
  
  下载安装VM
  
  下载镜像文件链接,darwin.iso,unlocker,beamoff。合集下载链接:https://pan.baidu.com/s/1jeHA-ksEKT1iK5Ld7GmS9Q
  
  提取码:27tj
  
  unlock对VM进行操作使其对macos支持安装
  
  安装macos
  
  磁盘工具建立新的磁盘安装系统
  
  用darwin安装vmool
  
  设置全屏
  
  使用beamoff及一些设置进行优化
  
  安装VM虚拟机省略,下载省略,将下载文件进行解压省略
  
  一使用unlocker
  
  搜索server
  
  停止所有与VM有关的服务
  
  打开win.install并等待运行完毕(运行完毕自动退出)
  
  二安装macos镜像文件
  
  选择所有文件打开下载的镜像文件
  
  如果安装成功unlocker在创建虚拟机此页面会有Apple
  
  macos显示选择macos10.11(自动选择为10.12)
  
  为保证流畅运行至少调整为60g和4g内存以及双处理器四核心
  
  注意牢记虚拟机安装的位置
  
  /*最好能将虚拟机放入ssd中亲测速度快很多明显提升!!!*/
  
  配置完成
  
  进入虚拟机会出现如图错误
  
  此时去安装虚拟机的文件夹找到此文件
  
  如果忘记路径可如图找到
  
  用记事本打开将代码修改为如图所示,点击保存
  
  点击进入虚拟机等待进入
  
  选择简体中文
  
  选择磁盘工具选择抹掉(apple抹掉就是格式化)创建新的磁盘
  
  点击抹掉
  
  重新启动,点击继续
  
  选择自定义的磁盘进行安装
  
  等待安装完成
  
  此时macos已经能正常运行了下面进行优化
  
  全屏运行
  
  选择虚拟机
  
  选择设置
  
  选择选项并且选择电源勾选启动后自动进入全屏
  
  点击确定
  
  此时如果分辨率是刚好进入就全屏了呢么恭喜你可以看下面一步了
  
  如果不是进入还是未占满屏幕便要设置分辨率
  
  安装vmtool
  
  点击编辑虚拟机(在启动虚拟机下面)
  
  将下载的镜像文件选中即可
  
  但是会发现打不开报错
  
  此时 进入虚拟机将原来安装使用的镜像文件退出来即可
  
  点击弹出的那个小按钮
  
  此时在去编辑虚拟机里导入文件即可打开vmtool安装界面 然后安装即可
  
  安装beamoff
  
  将beamoff拖入虚拟机中(需要从全屏到半屏,拖入移动文件要安装vmtool)
  
  去虚拟机中
multiprocessing.Process(target=None, args=())
target: 可以被run()调用的函数,简单来说就是进程中运行的函数
args: 是target的参数

process的方法:
start(): 开始启动进程,在创建process之后执行
join([timeout]):阻塞目前父进程,直到调用join方法的进程执行完或超时(timeout),才继续执行父进程
terminate():终止进程,不论进程有没有执行完,尽量少用。
示例1

from multiprocessing import Process

def f(name):
print 'hello', name

if __name__ == '__main__':
p = Process(target=f, args=('bob',)) # p进程执行f函数,参数为'bob',注意后面的“,”
p.start() # 进程开始
p.join() # 阻塞主线程,直至p进程执行结束
3.3.2 进程池Process Pools
class multiprocessing.Pool([processes])
processes是进程池中的进程数,默认是本机的cpu数量
方法:
apply(func[, args[, kwds]])进程池中的进程进行func函数操作,操作时会阻塞进程,直至生成结果。
apply_async(func[, args[, kwds[, callback]]])与apply类似,但是不会阻塞进程
map(func, iterable[, chunksize])进程池中的进程进行映射操作
map_async(func, iterable[, chunksize[, callback]])
imap(func, iterable[, chunksize]):返回有序迭代器
imap_unordered(func, iterable[, chunsize]):返回无序迭代器
close():禁止进程池再接收任务
terminate():强行终止进程池,不论是否有任务在执行
join():在close(www.dfgjpt.com/)或terminate()之后进行,等待进程退出
示例2

from multiprocessing import Pool

def f(x):
return x*x

if __name__ == '__main__':
p = Pool(5) # 创建有5个进程的进程池
print(p.map(f, [1, 2, 3])) # 将f函数的操作给进程池
3.3.3 Pipes & Queues
multiprocessing.Pipe([duplex])
返回两个连接对象(conn1, conn2),两个连接对象分别访问pipe的头和尾,进行读写操作
Duplex: True(default),创建的pipe是双向的,也即两端都可以进行读写;若为False,则pipe是单向的,仅可以在一端读,另一端写,此时与Queue类似。

multiprocessing.Queue([maxsize])
qsize():返回queue中member数量
empty():如果queue是空的,则返回true
full():如果queue中member数量达到maxsize,则返回true
put(obj):将一个object放入到queue中
get():从队列中取出一个object并将它从queue中移除,FIFO原则
close():关闭队列,并将缓存的object写入pipe
示例

from multiprocessing import Pool
import time
def f(x):
return x*x
if __name__ == '__main__':
pool = Pool(processes=4) # start 4 worker processes
result = pool.apply_async(f, (10,)) # evaluate "f(www.xinghenyule.com10)" asynchronously in a single process
print result.get(timeout=1) # prints "100" unless your computer is *very* slow
print pool.map(f, range(10)) # prints "[0, 1, 4,..., 81]"
it = pool.imap(f, range(10))
print it.next(www.yinmaoyule178.com) # prints "0"
print it.next() # prints "1"
print it.next(timeout=www.dasheng178.com1) # prints "4" unless your computer is *very* slow
result = pool.apply_async(time.sleep, (10,))
print result.get(timeout=1) # raises multiprocessing.TimeoutError
  
  完成后选择系统偏好设置打开用户与群组
  
  选择自己创建的账户选择登录项,点击小加号选择beamoff
  
  继续在设置中找到扩展
  
  将不需要的组件关闭
  
  再到设置中的节能器(一个小灯泡)将休眠关闭因为休眠会死机
  
  再到dock中将神奇效果改为缩放效果

你可能感兴趣的:(VM上完美运行macos)