sudo pacman -S firefox |
Over!
源代码
http://heiher.info/sftp/files/hev-progress-bar-0.0.1.tar.gz
编译命令
gcc -o hev-test hev-test.c hev-progress-bar.c `pkg-config --cflags --libs gtk+-2.0 gio-2.0` |
Over!
最新状态
还在构想当中,还没有实现。
代码仓库
http://git.heiher.info/hscgi.git
CGI 协议
http://en.wikipedia.org/wiki/Common_Gateway_Interface
SCGI 协议
http://en.wikipedia.org/wiki/Simple_Common_Gateway_Interface
http://www.python.ca/scgi/protocol.txt
HSCGI 服务器
HSCGI 是 SCGI 服务器的一个实现,它定义了模块接口类,用户通过编写其模块实现具体的功能。HSCGI 的模块分为两种类型 Handler 和 Filter 。
Handler 模块
这种类型的模块用于实现具体的处理功能,它定义了两个操作接口:
check : 检查当前的 Request 是否应该处理。
dispatch : 处理当前的 Request,生成 Response。
Filter 模块
这种类型的模块用于处理 Handler 模块生成的 Response,它定义了两个操作接口:
check : 检查当前的 Response 是否应该处理。
dispatch : 处理当前的 Response。
未解决问题
1. 高效的异步I/O。
2. 基于流的数据处理。
3. Request 缓冲区太大。
4. Inet Socket 鉴权。
Over!
环境简述
服务端: ArchLinux(192.168.0.1)
客户端: ArchLinux(dhcp)
服务器端使用 NFS 导出一个目录,此目录存放一个客户端可用的 ArchLinux 系统;客户端不安装硬盘,PMON 从网络加载 kernel 和 initrd,并将服务器端导出的系统目录作为根分区挂载至 /。
服务器端
1. 安装 ArchLinux 操作系统
2. 安装 nfs-utils
pacman -S nfs-utils |
3. 创建客户端根目录
mkdir /srv/nfs/arch |
4. 下载并安装客户端 ArchLinux 系统。
cd /srv/nfs wget http://dev.lemote.com:2001/archlinux/archive/archlinux-lemote2f-201103082300.tar.gz cd /srv/nfs/arch tar xzf ../archlinux-lemote2f-201103082300.tar.gz |
5. 更新客户端系统 initrd
chroot /srv/nfs/arch vi /etc/mkinitcpio.conf |
MODULES="nfs" # add 'nfs' HOOKS="base udev net autodetect pata scsi sata filesystems" # add 'net' |
mount -t proc proc /proc mount -t sysfs sysfs /sys mount -t tmpfs udev /dev mkinitcpio -p kernel26 umount /dev /sys /proc |
6. 设置 NFS 导出目录
vi /etc/exports |
/srv/nfs/arch *(rw,fsid=0,no_root_squash,no_subtree_check) |
vi /etc/hosts.allow |
nfsd:ALL rpcbind:ALL mountd:ALL |
7. 启动服务器端 NFS 服务
可以在 rc.conf 增加自动启动项目
/etc/rc.d/rpcbind start /etc/rc.d/nfs-common start /etc/rc.d/nfs-server start |
8. 修正客户机端系统网络配置
vi /etc/rc.conf |
NETWORK_PERSIST="yes" DAEMONS=(syslog-ng !network... |
9. 安装并启动 TFTP 服务
安装一个 TFTP 服务,并将客户机系统中的 /boot/{vmlinz26,kernel26.img} 导出。
客户机端
1. PMON 启动参数
ifaddr rtk0 192.168.0.2 load tftp://192.168.0.1/tftp/vmlinuz26 initrd tftp://192.168.0.1/tftp/kernel26.img g console=tty rootfstype=nfs root=/dev/nfs nfsroot=192.168.0.1:/srv/nfs/arch ip=::::::dhcp |
Over!
架构名称
mipsel |
编译参数
-march=mips3 -mabi=32 -O2 |
基本系统(包含 Lemote2F 通用内核 2.6.37)
http://dev.lemote.com:2001/archlinux/archive/
源服务器
http://dev.lemote.com:2001/archlinux/$repo/os/$arch |
配置文件
http://dev.lemote.com:2001/archlinux/other/config/
Over!
Download
http://heiher.info/sftp/files/0001-Sentelic-FingerPad-Ext.patch
Usage
cat /sys/devices/platform/i8042/serio2/falgs # Display flags echo 'e' > /sys/devices/platform/i8042/serio2/falgs # Disable Finger Pad echo 'E' > /sys/devices/platform/i8042/serio2/falgs # Enable Finger Pad echo 'VH' > /sys/devices/platform/i8042/serio2/falgs # Enable VScroll & HScroll |
Over!