V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  qemu32  ›  全部回复第 1 页 / 共 3 页
回复总数  53
1  2  3  
@jstony 自考能证明什么基本的东西呢?
@alne 我理解他的意思,我只是想借着他的这个回复说明我并不觉得我编程能力很强。
@tool2d 我没说我编程能力很强,我比较强的部分在于计算机的基础理论知识,过去一年多看了很多这方面的书,之前其实还有面试过阿里的服务器固件和驱动开发(外包),问我理论知识我都没问题,但算法题我都做不出来。
@litguy 我之前工作中做过的那个分布式存储项目没有给客户端一个块设备或文件系统的需求,只是为了给虚拟机用的,也就是给 Qemu 写了一个块设备模块,另外分布式存储最有挑战性的部分都是在服务端,客户端应该不会有非常重的开发需求,贵公司会专门请个搞内核的人来做客户端吗?
@wangxiaoaer 实际上我这一年多研究的大部分内容都是不能通过给内核提交 patch 体现出来的,这里描述一下我还干了些啥:

1 ,我能用单个 Makefile 编译 Linux 内核:
https://github.com/donglisi/linux

2 ,我给 kvmtool 实现了一个 64 位 bootloader ,可以直接从 vmlinux.bin ( objcopy vmlinux 产生)启动内核,不需要 bzImage:
https://github.com/donglisi/note/blob/main/kvmtool_patch_bootloader

3 ,我将 Linux 内核的伙伴分配器抽离出来形成了一个核心代码只有几千行的小项目还能可能跑得起来:
https://github.com/donglisi/linux/tree/buddy

因为我做上面这几件事本不是为了给别人看得,也就懒得描述太多,还有一些是我研究过但是没有形成一段有意义的代码或项目的,我也就不想提了。

我发 patch 都是因为我发现了内核或 kvmtool 中确实存在的 bug ,这些邮件其实就涉及到 3 个问题:
1 ,kvmtool 项目无法正常启动 linux 系统,这个问题最终被 google 的工程师解决,我作为 Reported-by 被记录在这个 commit 里:faae833a746f1c59f64fb05e9c08e62b5b0002eb ( Revert "kvm tools: Filter out CPU vendor string")

2 ,amd 平台嵌套虚拟化 perf 工具无法采集数据问题,这个问题最终是 kvm 的内核维护者解决,我的价值主要体现在指出了腾讯的 Like Xu 之前的 commit 的一个小问题,他当时没有彻底搞明白一个很相关的问题,还在回复我的第一封邮件时说我写的一段内容“ridiculous”,结果被我回怼回去了。

3 ,最近给 kvmtool 提交的这个 patch 是因为 kvmtool 有个存在多年的老问题一直没人解决导致我用出 bug 了,我觉得在这个问题被彻底解决以前研究这个问题都是有价值的。

最后,
“脱产研究” 是事实,我这么说不对吗?
“提交 patch” 是你说的,我说的是“发送 patch”,
“听起来很厉害” 是你说的,我没说我很厉害,我就说了 “我对内核的研究算是比较深入的”。

我发这个帖子纯粹就是想给自己找找其他机会,不是来吹牛逼什么的,请你不要误会。
@litguy 没有 blog ,github 上也没啥能看的东西: https://github.com/donglisi

我比较好奇做分布式存储的公司怎么会有内核层的开发需求?
@itguy 看过数据从用户层写入到磁盘的整个 io 流程的代码,但没有研究过某一个具体的 fs ,也没有研究过 io 调度程序,不过我之前有做过分布式存储以及内核块设备层数据捕获相关的工作,也看过 nvme 和 virtio-blk 的代码。
@ivan_wl 深圳
@yuzhibopro 我是不想听讽刺的话:

https://www.v2ex.com/t/804765

就像这帖子 3 楼的回复,对楼主一点儿用都没有,就是拿楼主当笑柄,我哪里想得不对 v 友们可以批评指正,但讽刺是没有必要的。
@sadfQED2 感谢回复,patch 没被合并我确实不敢说自己有多牛,但是 boss 直聘上投的的公司我都有问清楚,学历必须得是全日制,我投递的职位目前还没有因为我缺少一个自考的学历而把我拒掉的,那么我的情况自考个学历有用吗?或者说如果用处很小我还有必要花时间花精力搞个自考的学历吗?
2022-10-17 12:48:57 +08:00
回复了 hardwork 创建的主题 程序员 c/c++多线程读写问题,怎么反驳?
@nlzy 看了你的 twitter ,想问下你是女装大佬吗?
将 nice 和 taskset 结合起来用可以满足我的需求,比如我的机器有 12 个核心,我指定用 11 个核心运行编译任务,并且把优先级设置到最低,类似这样:

nice -n 19 taskset --cpu-list 0-10:1 make -j11
@ArchieMeng 我发现只要内核配置了 CONFIG_SCHED_AUTOGROUP nice 就不起作用了
@ArchieMeng @des 我刚才用自己编译的内核试了一下设置 nice 是管用的,但 fedora 36 的内核设置 nice 没有任何效果,虚拟机和物理机都没效果。
@des 我就是想问一下 v 友有没有对进程调度比较熟,能直接解决这个问题的,如果没有我就只能自己研究实现了。
@ArchieMeng 我觉得跟 io 没关系。

你能在你的机器上试一下我 #5 楼回复里的那个测试用例,给 sysbench 设置了 nice 之后的效果吗?我试了没有任何效果

nice -n 19 sysbench --time=60 --threads=12 cpu run



sysbench --time=60 --threads=12 cpu run

感觉没有任何区别
@dorothyREN 你是不是没看懂我的需求?

坦白说我也是想借着这个问题研究一下内核的进程调度逻辑,要是能实现这个功能,那么也就算对内核的调度有了更深一点的理解。
@codehz 有哪个发行版的内核是打上了 MuQSS 补丁的吗?
或者哪里能下载已经编译好的打上了 MuQSS 补丁的内核的 rpm 或 deb 包?
有哪个发行版的内核是打上了 MuQSS 补丁的吗?
或者哪里能下载已经编译好的打上了 MuQSS 补丁的内核的 rpm 或 deb 包?
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1446 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 17:02 · PVG 01:02 · LAX 09:02 · JFK 12:02
Developed with CodeLauncher
♥ Do have faith in what you're doing.