任何计算机语言学通了都很强大。例如,freebasic!
reactos吧
全部回复
仅看楼主
level 8
acat1433 楼主
2009年09月19日 01点09分 1
level 8
acat1433 楼主
官方地址:http://sourceforge.net/projects/apolloopsys/
corchOS(原先叫ApolloOS)是一个32位的操作系统。开始时是用C和汇编语言写的。现在正用freebasic语言重写中。
看细节内容的地址:http://code.google.com/p/scorchos/source/browse/#svn/branches/lantern 
截图:
http://sourceforge.net/dbimage.php?id=207476
官方地址:http://sourceforge.net/projects/frostkernel/
FROST 是一个用FreeBASIC语言写的自由内核。它使用内联汇编。并且它有个多重标头。所以你能用GRUB启动它。
截图:
http://sourceforge.net/dbimage.php?id=200028
我英语水平菜。
翻译的很机械。
莫见怪。
虽然这两个系统看起来不能做什么。
但足够证明一点。
只要精通一门语言。无论是哪种。都是很有前途的。
:)
2009年09月19日 01点09分 3
level 8
acat1433 楼主
ReactOS里用freebasic写"hello,world!"程序。
https://imgsa.baidu.com/acat1433/pic/item/277032f89c60a332a9d3113a.jpg
2009年09月19日 12点09分 5
level 8
acat1433 楼主
纯汇编语言的系统,是指的这个吧。
menuetos.org - 100% Assembly language OS
2009年09月20日 03点09分 7
level 8
acat1433 楼主
freebasic是先将*.bas(basic语法文件)翻译成*.asm(即汇编语法文件)。
然后用GNU的as.exe和ld.exe生成程序。
例如,freebasic里的hello程序。
print "hello,world!"
用"fbc.exe -r hello.bas"命令就得到了它对应的汇编语言文件。
D:\freebasic>type hello.asm
        .intel_syntax noprefix
        #01.bas' compilation started at 11:49:46 (FreeBASIC v0.20.0b)
.section .text
.balign 16
_fb_ctor__01:
.Lt_0001:
push 1
push 12
push offset _Lt_0003
call _fb_StrAllocTempDescZEx@8
push eax
push 0
call _fb_PrintString@12
.Lt_0002:
ret
        #01.bas' compilation took 0.000
18158732462
47546 secs
.section .data
.balign 4
_Lt_0003:       .ascii  "hello,world!\0"
.section .ctors
.int _fb_ctor__01
不过这个是AT&T风格形式的,非intel风格形式的。GAS是AT&T风格的。nasm是intel风格的。
2009年09月20日 03点09分 8
level 6
厉害,俺又长知识了。
thank
:)
2009年09月20日 04点09分 9
level 6
此帖也设为精品,有意见就提。
:)
2009年09月20日 07点09分 10
level 8
acat1433 楼主
我觉得这只是个普通的新手帖。
-_-!!!
2009年09月20日 13点09分 11
level 8
acat1433 楼主
2009年09月21日 11点09分 12
level 8
acat1433 楼主
不过这个程序会变成无法自动关闭的程序。
因为,它的cat线程要等待键盘事件才能退出。
而主进程却要等待cat线程结束才能结束。
但,最后主进程却抢了cat线程的键盘事件。
恩,各位大牛随便拍砖吧。
我初学程序的人。
2009年09月21日 13点09分 13
level 6
太深奥,兄弟我只有佩服
:)
2009年09月21日 15点09分 14
level 8
acat1433 楼主
反正,这到最后总是会变成一个僵死程序。
-_-!!!
我是初学者,汗,这个水平。。。
2009年09月22日 10点09分 15
level 6
如果仅从一个程序是一个无限循环或等待激活的进程而断定该程序
是一个僵死程序就有些偏颇了。关键是这种性能应该使用在何处。
不能说一个进程是一个无限循环或等待激活的进程就不好,
窗口主函数的进程、捕获消息的进程、
内核中分配优先级和弹出压入进程的任务管理程序都是:
无限循环或等待激活的进程。
当登山者看见尚远离自己的封顶时常会这样像你这样感叹地,
但是也应该看到其实你又比许多人都登在前面。
比如:freebasic我就从来都没有尝试过。
2009年09月22日 11点09分 16
level 6
话讲多了难免出错,请允许我补充:
我在16楼所讲的“进程”应该为“进程以及线程”
2009年09月22日 13点09分 17
level 8
acat1433 楼主
纯文本的"hello,world!"只一个线程在运行。
带窗体的,就有三个线程了。
12楼的那个,创造出来的线程明明已经挂了。
但主进程还是没关闭。
因为发现到最后数值变成1000后,就由4个线程减少为3个线程了。
-_-!!!
我菜。没能理解原因。
2009年09月23日 09点09分 19
level 6
等你解决了这个问题后我再加精,
现在的我有一个缺点,就是已经进入到吧主这个角色里,
就是恨不得每天都有许多贴能让我理直气壮的加精。
-_-!!!
2009年09月23日 09点09分 20
level 8
acat1433 楼主
目前的状态是,忍耐寂寞才是最重要的。
没事多去做点测试,还有翻译什么的,也不错。
:)
2009年09月23日 10点09分 21
level 6
得:
听你的,多做些测试。
我没有用过freebasic, 但曾用过ASM32.
记得编译时有许多参数作为开关的,
参数的不同会导致出现迥异于最初设想的效果。
2009年09月23日 19点09分 22
level 0
nasm在reactos里完全兼容。
2009年09月24日 09点09分 23
level 6
吃程序员或者软件工程师这门饭的确是辛苦的,
常常有时写程序明明是对的但是调试时就是不对。
2009年10月03日 23点10分 24
1 2 尾页