QEMU 8-早期项目

1.英文

Old projects

    Compilation
        (July 1996) Harissa is a Java Virtual Machine and a powerful Java native code compiler (by translating Java to C code). I wrote the first version of Harissa during my internship at the IRISA .
        (Apr 1996, student project) A simple but almost complete C Compiler . It can compile itself. 

    Lossless Data Compression
        (May 1995) stat-1.0 : my efficient implementation of the PPM compression method.
        (1989-1990) LZEXE my DOS EXEcutable file compressor with built-in transparent decompression. 

    Numerical Algorithms
        (Nov 12 2000) A tiny C program to print the biggest known prime number.
        (1996-1997) world record for the computation of the individual binary digits of PI
        (Jul 1995) A practical implementation of Pollard's FFT fast multiplication method. 10 million digits of Pi have been calculated with it. A survey (in French) of the multiplication method: transparent.ps The complete sources of the program (in ANSI C for UNIX): pi_salamin.tar.gz
        (1995) A real time Mandelbrot fractal zoom on the Web and the sources . 

    Real Time 3D
        (May 26 1998) TinyGL: a Small, Free and Fast Subset of OpenGL.
        (Jan 15 1998, student project) You can look at the VReng home page. VReng (Virtual Reality Engine) is a distributed 3D application allowing navigation in virtual worlds connected over the Internet using Multicast technology.
        (mar 1996, student project) An interactive voxel viewer : you give to the program a file containing a scalar field defined by its values on a, say, 64x64x64 grid. Then, the program can let you turn around this field in real time, seeing it as a kind of smoke. The goal of this project was to represent seismic data.
        (1994) You can try an old version of my linux 3D renderer. It uses the SVGAlib Graphic Library. It implements (mostly in assembler) the Z Buffer algorithm with gouraud shaded triangles, with a true analytic clipping.
        (1992) ZGraph is an old pascal & assembler library I did for fast 3D rendering, even on a 286-based PC 

    Linux
        (Jan 10 1999)
        Proposal for a new internal structure for the Linux frame buffer drivers. 

    Signal & Image processing
        (May 6 1998) A patch for the mpg123 MPEG audio player to enable full speed layer 3 stereo playing at 44.1 kHz on 486DX Linux PCs.
        (mar 1996, student project) I wrote a complete stereo vision package, with an interactive 3d display. You give two pictures of the same object to the program, and it builds a 3d representation of it. The C source code and the documentation (in French) are available here .
        (1991) SoundDriver is a DOS example of one of my attempts to play digitized sounds & amiga modules. 

    Telecommunications
        (mar 1997, student project) Bibliographic study, implementation, optimization and simulation of the soft decoding of some linear error correcting codes (ECC). This study was especially focused on the soft decoding of the parity extended BCH(32,31) code used by the ERMES paging standard. An original point was to show how to soft-decode random linear ECCs. This study was initiated by JC Belfiore . You can get the postscript report in French. The source code of the generic simulation engine is available uppon request.
        (Nov 1999) Linmodem: the Linux Soft Modem Project. This project intends to provide an open source modem which will be able to drive all the so called "winmodems". 
    Electronics
        (Jul 1995, student project) A two-week first year project: conception & realization with Sylvain Delas of a general purpose 8 bit microprocessor on a programmable Xilinx device. The complete diagrams and specifications are given. We also realized developpement tools (macro-assembler, debugger) and some funny programs.
        (Aug 1991) A $10 video digitalization card for a PC... The quality of the image is not perfect :)
        (1995) I have taken part in the realization of a robot to represent the Ecole Polytechnique in a competition organized in 1995 by the M6 French TV channel. I conceived & realized an ultrasonic subsystem to localize other robots and a part of the robot software.   翻译中文

2.中文

Fabrice Bellard 的早期项目集锦

以下是 Fabrice Bellard(QEMU、FFmpeg 等知名项目的创始人)在 1990 年代至 2000 年代初 完成的一系列技术项目,涵盖 编译器、无损压缩、数值算法、3D 渲染、Linux 内核、信号处理、通信与电子工程 等多个领域。


1. 编译器相关

(1996 年 7 月) Harissa

  • Java 虚拟机高性能 Java 原生代码编译器(通过将 Java 代码转换为 C 实现)。

  • 开发背景:在 IRISA(法国计算机科学研究院) 实习期间完成的首个版本。

(1996 年 4 月,学生项目) 简易 C 编译器

  • 一个 几乎完整 的 C 编译器,能够 自举编译(编译自身)


2. 无损数据压缩

(1995 年 5 月) stat-1.0

  • 基于 PPM(预测部分匹配)压缩算法 的高效实现。

(1989-1990 年) LZEXE

  • 一款 DOS 可执行文件压缩工具,支持 透明解压(运行时自动解压缩)


3. 数值计算算法

(2000 年 11 月 12 日) 打印已知最大素数的微型 C 程序

  • 计算并输出当时已知的最大素数。

(1996-1997 年) 计算圆周率二进制位数的世界纪录

  • 圆周率(π)二进制位数计算 上创下世界纪录。

(1995 年 7 月) Pollard FFT 快速乘法算法的实用实现

(1995 年) 网页实时 Mandelbrot 分形缩放

  • 在网页上实现 Mandelbrot 分形 的实时缩放演示,并提供源码。


4. 实时 3D 渲染

(1998 年 5 月 26 日) TinyGL

  • OpenGL 的轻量子集实现,小巧、免费且高效。

(1998 年 1 月 15 日,学生项目) VReng(虚拟现实引擎)

  • 一个 分布式 3D 应用,支持通过 互联网组播(Multicast) 技术连接虚拟世界并进行导航。

(1996 年 3 月,学生项目) 交互式体素查看器

  • 输入 64×64×64 网格标量场数据,程序可实时旋转查看,用于 地震数据可视化

(1994 年) Linux 3D 渲染器(早期版本)

  • 使用 SVGAlib 图形库,通过 Z-Buffer 算法 + Gouraud 着色三角形 实现高效渲染(大部分用汇编编写)。

(1992 年) ZGraph

  • 286 PC 编写的 Pascal + 汇编 3D 图形库,支持快速渲染。


5. Linux 内核

(1999 年 1 月 10 日) Linux 帧缓冲驱动的新内部结构提案

  • 改进 Linux 图形帧缓冲驱动的架构设计。


6. 信号与图像处理

(1998 年 5 月 6 日) mpg123 MPEG 音频播放器补丁

  • 使 486DX Linux PC 能以 44.1kHz 全速播放 MP3(Layer 3 立体声)

(1996 年 3 月,学生项目) 立体视觉 3D 重建

  • 输入 同一物体的两张图片,程序可构建其 3D 模型

  • 提供 C 源码法语文档

(1991 年) SoundDriver

  • DOS 环境 下的 数字音频 & Amiga 模块播放 实验。


7. 通信技术

(1997 年 3 月,学生项目) 线性纠错码(ECC)的软解码研究

  • 针对 ERMES 寻呼标准BCH(32,31) 码,提出 软解码优化方案

  • 提供 法语报告(PostScript)仿真引擎源码(需申请)

(1999 年 11 月) Linmodem:Linux 软调制解调器项目

  • 旨在提供 开源驱动,支持所有 “Winmodem” 硬件


8. 电子工程

(1995 年 7 月,学生项目) 通用 8 位微处理器设计

  • 基于 Xilinx 可编程器件,与 Sylvain Delas 合作完成。

  • 配套开发了 宏汇编器、调试器 和演示程序。

(1991 年 8 月) 10 美元 PC 视频数字化卡

  • 低成本方案,但 画质一般 😅

(1995 年) 机器人竞赛

  • 参与 法国 M6 电视台举办的机器人比赛,负责:

    • 超声波定位子系统(检测其他机器人)。

    • 部分机器人软件


总结

Fabrice Bellard 的早期项目展现了 跨学科的顶尖技术能力,从 编译器、3D 渲染、信号处理到硬件设计,几乎无所不包。这些探索为他后来开发 FFmpeg、QEMU 等重大项目奠定了基础。

🔗 原文链接bellard.org
📅 最后更新:2024 年 12 月 26 日

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值