- 浏览: 1477741 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (691)
- linux (207)
- shell (33)
- java (42)
- 其他 (22)
- javascript (33)
- cloud (16)
- python (33)
- c (48)
- sql (12)
- 工具 (6)
- 缓存 (16)
- ubuntu (7)
- perl (3)
- lua (2)
- 超级有用 (2)
- 服务器 (2)
- mac (22)
- nginx (34)
- php (2)
- 内核 (2)
- gdb (13)
- ICTCLAS (2)
- mac android (0)
- unix (1)
- android (1)
- vim (1)
- epoll (1)
- ios (21)
- mysql (3)
- systemtap (1)
- 算法 (2)
- 汇编 (2)
- arm (3)
- 我的数据结构 (8)
- websocket (12)
- hadoop (5)
- thrift (2)
- hbase (1)
- graphviz (1)
- redis (1)
- raspberry (2)
- qemu (31)
- opencv (4)
- socket (1)
- opengl (1)
- ibeacons (1)
- emacs (6)
- openstack (24)
- docker (1)
- webrtc (11)
- angularjs (2)
- neutron (23)
- jslinux (18)
- 网络 (13)
- tap (9)
- tensorflow (8)
- nlu (4)
- asm.js (5)
- sip (3)
- xl2tp (5)
- conda (1)
- emscripten (6)
- ffmpeg (10)
- srt (1)
- wasm (5)
- bert (3)
- kaldi (4)
- 知识图谱 (1)
最新评论
-
wahahachuang8:
我喜欢代码简洁易读,服务稳定的推送服务,前段时间研究了一下go ...
websocket的helloworld -
q114687576:
http://www.blue-zero.com/WebSoc ...
websocket的helloworld -
zhaoyanzimm:
感谢您的分享,给我提供了很大的帮助,在使用过程中发现了一个问题 ...
nginx的helloworld模块的helloworld -
haoningabc:
leebyte 写道太NB了,期待早日用上Killinux!么 ...
qemu+emacs+gdb调试内核 -
leebyte:
太NB了,期待早日用上Killinux!
qemu+emacs+gdb调试内核
参考https://bellard.org/jslinux/tech.html
使用的asm.js的emscripten 把tinyemu用js加载,tinyemu支持x86和精简指令集
https://bellard.org/tinyemu/tinyemu-2018-09-23.tar.gz
安装到/usr/local/bin/temu
精简指令集
https://bellard.org/tinyemu/diskimage-linux-riscv-2018-09-23.tar.gz
temu root-riscv64.cfg
运行成功
cat root-riscv64.cfg
control a x 是退出
如果想运行x86的
先用qemu测试:x86
需要准备2.6内核的bzImage 和操作胸系统文件root.bin
/
bzImage参考jslinux的2.6的编译
root.bin来源[url] https://github.com/killinux/jslinux-deobfuscated[/url] 中的root.bin
配置文件参考
https://bellard.org/jslinux/buildroot-x86.cfg
vfsync.org 上的是远程映射文件系统,改成本地的
把配置文件改成
my-x86.cfg
其中kernel-x86.bin 来源官网[url]https://bellard.org/jslinux/kernel-x86.bin [/url](这个需要自己想把发编译一次)
另外输入输出用的是hvc0, 与root.bin里面的用的不同
用qemu进入rootbin系统
修改/sbin/init 把最后
是hvc0还是ttyS00应该是内核决定的
注意hda和vda也有区别
最后启动
temu my-x86.cfg
就正常了
使用的asm.js的emscripten 把tinyemu用js加载,tinyemu支持x86和精简指令集
https://bellard.org/tinyemu/tinyemu-2018-09-23.tar.gz
安装到/usr/local/bin/temu
精简指令集
https://bellard.org/tinyemu/diskimage-linux-riscv-2018-09-23.tar.gz
temu root-riscv64.cfg
运行成功
cat root-riscv64.cfg
/* VM configuration file */ { version: 1, machine: "riscv64", memory_size: 128, bios: "bbl64.bin", kernel: "kernel-riscv64.bin", cmdline: "console=hvc0 root=/dev/vda rw", drive0: { file: "root-riscv64.bin" }, eth0: { driver: "tap", ifname: "tap0" }, }
control a x 是退出
如果想运行x86的
先用qemu测试:x86
需要准备2.6内核的bzImage 和操作胸系统文件root.bin
/
usr/libexec/qemu-kvm -kernel bzImage -drive file=root.bin,if=ide,cache=none -append "console=ttyS0 root=/dev/hda rw init=/sbin/init notsc=1" -boot order=dc,menu=on -nographic
bzImage参考jslinux的2.6的编译
root.bin来源[url] https://github.com/killinux/jslinux-deobfuscated[/url] 中的root.bin
配置文件参考
https://bellard.org/jslinux/buildroot-x86.cfg
/* VM configuration file */ { version: 1, machine: "pc", memory_size: 128, kernel: "kernel-x86.bin", cmdline: "loglevel=3 console=hvc0 root=root rootfstype=9p rootflags=trans=virtio ro TZ=${TZ}", fs0: { file: "https://vfsync.org/u/os/buildroot-x86" }, eth0: { driver: "user" }, }
vfsync.org 上的是远程映射文件系统,改成本地的
把配置文件改成
my-x86.cfg
/* VM configuration file */ { version: 1, machine: "pc", memory_size: 128, kernel: "kernel-x86.bin", cmdline: "console=hvc0 root=/dev/vda rw init=/sbin/init notsc=1", drive0: { file: "root.bin" }, }
其中kernel-x86.bin 来源官网[url]https://bellard.org/jslinux/kernel-x86.bin [/url](这个需要自己想把发编译一次)
另外输入输出用的是hvc0, 与root.bin里面的用的不同
用qemu进入rootbin系统
修改/sbin/init 把最后
# setsid sh -c 'exec sh </dev/ttyS0 >/dev/ttyS0 2>&1' 改成 setsid sh -c 'exec sh </dev/hvc0 >/dev/hvc0 2>&1'
是hvc0还是ttyS00应该是内核决定的
注意hda和vda也有区别
~ # cat /sbin/init #!/bin/sh export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin export HOME=/root export TERM=vt100 mount -a ifconfig lo 127.0.0.1 # allow running DOS .COM executables with the small 'runcom' utility echo ':DOSCOM:E::com::/usr/bin/runcom:' > /proc/sys/fs/binfmt_misc/register cd $HOME #stty -F /dev/ttyS0 rows 30 show_boot_time echo "Welcome to JS/Linux" while /bin/true; do # setsid sh -c 'exec sh </dev/ttyS0 >/dev/ttyS0 2>&1' setsid sh -c 'exec sh </dev/hvc0 >/dev/hvc0 2>&1' done
最后启动
temu my-x86.cfg
就正常了
发表评论
-
wasm工具
2020-06-14 03:04 677npm install -g cnpm --registr ... -
用WebAssembly与rust和c交互的demo
2019-11-26 19:47 68632,263.98 入门教程 https://learnku ... -
em-dosbox
2019-11-23 18:27 738基本知识: 1.emscripten gc ... -
xl2tp 备份
2019-09-24 16:25 6932019年9月24日更新: 注意,需要开启firewall ... -
sdl笔记
2019-01-31 17:19 733sdl教程教程 https://github.com/Twin ... -
建立tap设备的c的代码
2019-01-08 19:09 473tapper.c #include <stdio.h& ... -
jslinux总结帖
2019-01-04 21:33 1134注意个问题: chrome不要用两个tab页,否则ping不通 ... -
aws搭建xl2tp给iphone使用
2018-12-26 21:37 18922019年12月26日 可以参考原来的配置 https:// ... -
emscripten asm.js的helloworld
2018-03-01 20:15 1110mac下安装: brew install SDL2 SDL2_ ... -
nginx代理wss和https
2018-02-27 15:34 3928nginx启用ssl yum install openssl ... -
consul的基本使用
2017-06-27 11:13 1402### 安装 [centos7上consul的安装](ht ... -
lvs的helloworld
2017-06-13 20:36 596###################lvs######### ... -
系统调用的helloworld
2017-05-04 16:14 633《2.6内核标准教程》 p293 #include < ... -
bitcoin和cgminer的安装
2017-04-05 22:45 1958参考 http://blog.csdn.net/rion_ch ... -
ceph安装和常用命令
2017-03-21 21:55 953/etc/hosts ssh-keygen ssh-copy- ... -
jslinux-deobfuscated-network
2017-02-13 22:37 714基础知识 查看网络包 tcpdump -i eth0 -e ... -
mobile terminal 笔记
2016-12-02 15:35 626找出旧的iphone4 越狱之后可以变个小操作系统 mobi ... -
用buildroot为jslinux建立最小rootfs
2016-11-18 17:59 1269############################### ... -
jslinux带网络功能的内核
2016-11-15 15:35 810想重新编译jslinux-network 的内核,其实就是比f ... -
nginx rewrite替代apache rewrite
2016-10-18 20:30 834清理chrome的缓存 chrome://appcache-i ...
相关推荐
TinyEMU 是用於RISC-V和 x86 架構的系統仿真器 。它的目的是在完成的同時又小又簡單。 主要特點: RISC-V 系統仿真器支持 RV128IMAFDQC 基礎 ISA(用戶級 ISA 2.2 版,特權架構 1.10 版),包括: 32/64/128 位整數...
TinyEMU 这是的修改版本。 产品特点 32/64/128位RISC-V仿真。 VirtIO控制台,网络,块设备,输入和9P文件系统。 通过SDL进行帧缓冲区仿真。 远程HTTP块设备和文件系统。 小代码,易于修改,无外部依赖。 与...
TinyEMU是一款轻量级的计算机模拟器,它是Fabrice Bellard原始TinyEMU项目的分支或“前叉”。这个项目的主要特点是其小巧的体积和高效的性能,使得用户能够在各种平台上运行多种操作系统,尤其是那些基于MIPS、ARM和...
"temu build" 是一个与构建软件相关的主题,特别是针对Ubuntu 14.04操作系统和GCC 4编译器的环境。在这个场景下,"build"通常指的是编译和构建软件的过程,其中"temu"可能是软件项目的名字或者一个特定的工具。...
setting.xml文件,修改Maven仓库指向至阿里仓
基于java的玉安农副产品销售系统的开题报告
dev-c++ 6.3版本
基于java的项目监管系统开题报告
基于springboot多彩吉安红色旅游网站源码数据库文档.zip
毕业设计&课设_基于 AFLFast 改进能量分配策略的毕业设计项目,含 Mix Schedule策略设计及测试结果分析.zip
基于springboot办公用品管理系统源码数据库文档.zip
C++调用qml对象Demo
非常漂亮的类Web界面的Delphi设计54ed7-main.zip
VB SQL车辆管理系统是一款基于Visual Basic(VB)编程语言和SQL数据库开发的综合车辆管理工具。该系统集成了车辆信息管理、驾驶员信息管理、车辆调度、维修记录、数据存储与检索、报告生成以及安全权限管理等多个核心功能模块。 源代码部分提供了详细的开发流程和实现方法,涵盖了从数据库设计、界面设计到事件驱动编程、数据访问技术和错误处理等关键技术点。通过该系统,用户可以方便地录入、查询、修改和删除车辆及驾驶员信息,实现车辆信息的实时更新和跟踪。同时,系统还支持生成各类车辆管理相关的报告,帮助用户更好地掌握车辆运营情况。 系统部分则采用了直观易用的用户界面设计,使得用户能够轻松上手并快速完成车辆管理工作。系统还具备强大的数据处理能力和安全性,通过数据备份和系统升级优化等功能,确保数据的完整性和系统的稳定运行。 总体而言,VB SQL车辆管理系统是一款功能全面、易于操作且安全可靠的车辆管理工具,适用于企业和个人进行日常车辆运营和管理。无论是车辆信息的录入、查询还是报告生成,该系统都能够提供高效、便捷的服务,是车辆管理工作的理想选择。
AutoSAR基础学习资源
基于springboot英语学习平台源码数据库文档.zip
数据集,深度学习,密封数据集,马体态数据集
基于java的数字家庭网站开题报告
podman使用国内源镜像加速器
基于springboot+web的留守儿童网站源码数据库文档.zip