V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
atomicVT
V2EX  ›  云计算

你做过哪些有意思的系统?

  •  
  •   atomicVT · 2018-09-08 22:26:32 +08:00 via iPhone · 3821 次点击
    这是一个创建于 2269 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我是一名运维工程师,一直以来都想做一个很好玩的系统。有没有哪位 V 友之前做过一些好玩的系统或者有很赞的 idea ?

    23 条回复    2018-09-10 14:47:04 +08:00
    adadada
        1
    adadada  
       2018-09-08 22:44:54 +08:00   ❤️ 1
    在 MIT 6.828 的基础上撸了一个小 hypervisor,可以运行在物理机器上,跑没有 GUI 的 Linux guest
    atomicVT
        2
    atomicVT  
    OP
       2018-09-09 06:17:41 +08:00 via iPhone
    @adadada 这个应该不算是系统吧,只是简单的虚拟化一类的
    opengps
        3
    opengps  
       2018-09-09 07:09:36 +08:00 via Android
    系统算不上,但是是个实用小技巧。我利用 gps 设备的断电报警功能装到单位里的机房机房,ups 之前,实现了机房外部电源断电自动报警功能
    atomicVT
        4
    atomicVT  
    OP
       2018-09-09 10:26:19 +08:00 via iPhone
    @opengps
    👍很厉害哦,机房硬件运维没怎么接触过。我目前做过的也就是工单统计系统、故障日志分析系统了。都是用 django 做的,比较垃圾
    adadada
        5
    adadada  
       2018-09-09 11:54:40 +08:00 via iPhone   ❤️ 1
    @atomicVT 如果操作系统算系统的话,这个也可以算吧:) 除了为了实现虚拟化做的内核改动外,还需要实现用户态的 device model 和一些简单的管理工具。最终的代码量倒是不大,8 万多行 C 和少量汇编,主要还是学习目的。
    xuchaochao
        6
    xuchaochao  
       2018-09-09 14:26:35 +08:00   ❤️ 1
    简直笑出声,楼主自己也就只会用用 python 写脚本级的小小小东西,结果还 diss 手动撸 hypervisor 的人。。。。。
    37Y37
        7
    37Y37  
       2018-09-09 15:03:30 +08:00
    同样是运维,说下我写过的一些系统:
    37Y37
        8
    37Y37  
       2018-09-09 15:06:43 +08:00
    1. cmdb 管理服务器等资源
    2. deploy 发布系统
    3. overmind 自动 SQL 审核执行系统
    4. kerrigan 配置中心管理系统
    5. proxy 代理系统
    等等很多这种类型的,与其说是系统,不如说是一个一个的功能模块页面,每个系统都是基于工作的痛点开发,帮助提升工作效率,这些系统的应用为我们的工作效率提升了不是一点两点
    realpg
        9
    realpg  
       2018-09-09 15:09:26 +08:00
    按照楼主回帖提到的项目 匹配这种的软系统 非定制开发的做过两三百种吧

    作为一个搞机房的,软硬件结合的系统更多
    kljsandjb
        10
    kljsandjb  
       2018-09-09 21:47:20 +08:00 via iPhone
    @atomicVT 你可以试试 6.828 …就算是虚拟化,也算是一个完整的操作系统内核实现了,可能动手起来不会太容易 :)
    PythonAnswer
        11
    PythonAnswer  
       2018-09-10 05:05:10 +08:00 via iPhone
    共同进步吧。楼主加油!
    tempdban
        12
    tempdban  
       2018-09-10 08:19:26 +08:00 via Android
    @adadada 敢问是用 vt-x, 半虚拟化, 还是纯解释运行的。
    adadada
        13
    adadada  
       2018-09-10 09:21:06 +08:00
    @tempdban #12 CPU 和 memory 通过 Intel VT-x 和 AMD SVM 虚拟化,部分 I/O 设备 (8259, APIC, 8253, 8042, VGA, UART, PCI host 等) 是全模拟的,磁盘和网络是通过 virtio 实现的,初步支持通过 Intel VT-d 和 AMD IOMMU passthrough PCI 设备.
    opengps
        14
    opengps  
       2018-09-10 09:47:10 +08:00 via Android
    @atomicVT 系统算不上,我觉得对于技术人员,功能才是重点。以我个人经历为例,我喜欢玩 gps 设备,能拓展出来很多功能,但是都不是老板商人思维能看好的
    tempdban
        15
    tempdban  
       2018-09-10 10:13:33 +08:00 via Android
    @adadada 也就是说实现了整个 KVM.
    好强啊
    是对着 kvm 撸的么
    tempdban
        16
    tempdban  
       2018-09-10 10:17:58 +08:00 via Android
    @adadada 撸了多久?我也想撸撸看
    adadada
        17
    adadada  
       2018-09-10 10:23:55 +08:00 via iPhone
    @tempdban 主要是对着硬件 spec 做,参考了一点 kvm 和 xen 的结构,比 kvm 和 xen 简陋的多。这个是在学校时做的项目里的一部分,时间很充裕,我和一个师兄边学边写搞了半年左右。
    tempdban
        18
    tempdban  
       2018-09-10 10:30:27 +08:00 via Android
    @adadada 我记得 VMexit 的处理还是要点手法的,这个是完全自己想的?
    adadada
        19
    adadada  
       2018-09-10 10:34:29 +08:00 via iPhone
    @tempdban 呃,Intel SDM 就差把伪代码写出来了:)
    tempdban
        20
    tempdban  
       2018-09-10 12:04:27 +08:00 via Android
    @adadada 我指的是时间片分配调度
    adadada
        21
    adadada  
       2018-09-10 13:00:09 +08:00 via iPhone   ❤️ 1
    @tempdban 就做了一个简单的时钟中断驱动的多优先级 round robin 调度器。如果 vcpu 进程在某个 pcpu 的 non-root 模式运行时, 那个 pcpu 上来了一个时钟中断,就直接触发 vmexit,host 这边做完 house keeping 的工作再 vmresume。实际中为了保证 vm 的性能,一般需要尽量避免 exit,比如把 house keeping 和 device model 的工作挪到其它核上去做,通过 posted interrupt 机制注入中断,等等。
    ericcode
        22
    ericcode  
       2018-09-10 13:58:41 +08:00
    我没做过,同学做过一个女友管理系统,很 diao!
    tempdban
        23
    tempdban  
       2018-09-10 14:47:04 +08:00 via Android
    @adadada 了解了,谢谢
    抽空撸一把 。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6048 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 02:50 · PVG 10:50 · LAX 18:50 · JFK 21:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.