简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
引言有时我们需要去完成一些工作任务,而那些任务只有使用Windows环境才能完成(比如,要求必须使用Word文档标准格式递交某些资料等等),你又不想安装双系统通过频繁的重启在Linux和Windows间切换,这个时候就可以利用虚拟机技术。虽然Linux下拥有类似VirtualBox这种免费的虚拟机软件,但它在功能上还没法做到和VMware一样优秀。这篇文章介绍如何在Ubuntu系统中安装VMwar
在x86_64架构的电脑上采用交叉编译的方式对程序进行编译,并部署到arm板子上运行是我们经常会遇到的,对于依赖关系不怎么复杂的程序,直接使用gcc-arm交叉编译工具,在x86_64电脑上(安装交叉编译工具链)即可编译,编译时指定gcc的版本和相关库的路径。但是对于复杂的程序,特别是依赖大量外部库的程序,使用这种方式就不太可行了。这里还是考虑弄一个较小的arm虚拟机来跑,然后在虚拟机里面把待编译
简介作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。目前支持模块的动态装卸(裁剪)。Linux内核就是基于这个策略实现的。Linux进程1.采用层次结构,每个进程都依赖于一个父进程。内核启动init程序作为第一个进程。该进程负责进一步的系统初始化操作。init进程是进程树的根,所有的进程都直接或者间接起源于该进程。virt/ ---- 提供虚拟机技术的支..
接口如下:ssize_t generic_perform_write(struct file *file,struct iov_iter *i, loff_t pos)《存储技术原理分析》上讲到了结构体iovec的由来,概括起来就是我们通常用的系统调用read/write用于读取或写入文件,比如read用于读取数据到一个用户态缓冲区,readv读取数据到多个用户态缓冲区,那么为了兼容这...
这是一个关于 mount(挂载)的故事。在 Kernel 世界里,挂载是一项很了不起的特性,它可以将不同类型的文件系统组合成一个有机的整体,从使用者角度来看不同的文件系统并没有什么区别,那么 Kernel 是怎么做到呢?首先,Kernel 会为每个文件系统准备一个 mount 结构,然后再把这个结构加入到 vfs 这颗大树上就好了。这么一个小小的 mount 结构就这么神奇?请看...
Readahead预读机制由于内存的速度比磁盘速度快很多,如果每一次访问文件数据都要从磁盘读取一次数据,就会导致非常严重的时延。因此Linux为了提高性能,通过page cache机制,将多个用户数据缓存在内存当中,从而避免多次再磁盘读取。Readahead预读机制正是将用户数据缓存到内存的方法之一。Readahead机制的介绍Readahead预读机制是Linux针对顺序读的性能优化机制。它的核
Linux下程序出现段错误的原因及分析
#命令行的方式:先用df命令查看一下各个分区的挂载找到是linux的ext*文件系统后,找到设备名(如/dev/*)注意如果不是linux文件系统,使用dumpe2fs命令会报错使用sudo dumpe2fs /dev/*即可查看到superblock内容展示(可能会非常长哦)dumpe2fs 1.42.13 (17-May-2015)Filesystem volume nam...
由于Linux是一个多任务操作系统,能够支持远大于CPU数量的任务同时运行。当然,这些任务实际上并不是真的在同时运行,而是由CPU进行调度,将时间分片,每个任务占用1个时间片,通过轮流的方式运行,但由于时间片粒度非常小,而CPU速度非常高,造成多任务同时运行的错觉。实际上,对于单个CPU核,其处理数据是串行的,就比如做核酸检测,只有一个检测口,组织人员会在检测口排几个队列,每个队列头部数出10个人
linux上借助supervisor实现守护进程