Tags:
Node Thumbnail

คุณ Fabrice Bellard ได้ทดลองสร้าง PC emulator ขึ้นมาโดยใช้ JavaScript ล้วนๆ (ต้องรองรับ W3C Typed Arrays) โดยสามารถจำลองการทำงานได้ใกล้เคียงกับ 486 ที่ไม่มี FPU แต่ว่ามี MMU ที่สมบูรณ์เพื่อจะเล่น Linux ได้

บรรยายไปก็ไม่เท่าเห็นของจริง ไปลองเล่นกันเลยดีกว่า (ใช้ได้กับ Firefox 4 และ Chrome 11)

เค้าเตรียมไฟล์ hello.c และโปรแกรม tcc สำหรับคอมไฟล์โปรแกรมไว้ด้วย พร้อมกับโปรแกรม vi และ qemacs สำหรับใช้แก้ไขไฟล์

น่าลองเอามาใช้ประกอบเว็บสอน Linux เบื้องต้น หรือหัดเขียนโปรแกรมจริงๆ

ที่มา: Javascript PC Emulator - Technical Notes

Get latest news from Blognone

Comments

By: EThaiZone
ContributorAndroidUbuntuWindows
on 20 May 2011 - 18:12 #291177
EThaiZone's picture

ใช้ ls ได้ด้วย O_o


มันไม่ง่ายเลยที่จะทำ GIF ให้มีขนาดน้อยกว่า 20kB

By: dafty
AndroidWindowsIn Love
on 20 May 2011 - 18:26 #291181

เทพ+

By: nowingnoid
iPhoneAndroidUbuntu
on 20 May 2011 - 18:30 #291182
nowingnoid's picture

เทพพพพพ

By: 9neo on 20 May 2011 - 18:33 #291185
9neo's picture

เทพพพพพพพ!!!! โคตรๆ

By: TRoy888
AndroidUbuntu
on 20 May 2011 - 18:34 #291186

เทพมาก

By: soginal
AndroidIn Love
on 20 May 2011 - 18:50 #291194
soginal's picture

มี vi ด้วย - -!

By: kswisit
ContributoriPhoneAndroidIn Love
on 20 May 2011 - 19:14 #291202

rm -rf ได้ไหม


^
^
that's just my two cents.

By: hereblur on 20 May 2011 - 19:43 #291209 Reply to:291202

พังครับ ต้อง refresh (boot) ใหม่ -.-'

By: cloverink
iPhoneAndroidUbuntuWindows
on 20 May 2011 - 19:21 #291204
cloverink's picture

อ๊ากกกกกกก

By: PiKO
ContributorAndroid
on 20 May 2011 - 19:21 #291206

โคตรเทห์อ่ะ ลง Win95 ได้มั้ย :D


:: DigiKin8 ::

By: mekpro
ContributorAndroidUbuntu
on 20 May 2011 - 19:57 #291217
mekpro's picture
  • มี environment $PATH
  • รัน top ได้ด้วยนะ
  • คอมไพล์โปรแกรมได้ใช้ tcc hello.out
By: mekpro
ContributorAndroidUbuntu
on 20 May 2011 - 20:48 #291218
mekpro's picture
  • ซ้ำจ้า *
By: nowingnoid
iPhoneAndroidUbuntu
on 20 May 2011 - 19:57 #291219
nowingnoid's picture

เอามาลง พวก Linux จิ๋ว หรือ kolibri OS ได้ไหมนะ

แล้วก็ให้รันเป็น Cloud OS

By: ipats
ContributorNOOBIn Love
on 20 May 2011 - 20:03 #291223

google ซื้อ เอาไปจับยัด Chrome OS โอ้ว เย ฮ่าๆ


iPAtS

By: totiz
ContributoriPhoneAndroidRed Hat
on 22 May 2011 - 11:59 #291224
totiz's picture

บน Chrome 12.0.742.60 beta ติดอยู่บรรทัด Freeing unused kernel memory: 124k freed
แต่ถ้า firefox ไม่มีปัญหา

~ # df -h
Filesystem                Size      Used Available Use% Mounted on 
/dev/root                 2.0M      1.4M    442.0K  77% /
tmpfs                    14.8M         0     14.8M   0% /tmp

ใช้พื้นที่แค่ 1.4M เอง

ปล. โครตเทพ
By: iStyle
ContributoriPhoneAndroidSymbian
on 20 May 2011 - 20:48 #291248
iStyle's picture

เห้ย!


May the Force Close be with you. || @nuttyi

By: atheist
AndroidUbuntuWindows
on 20 May 2011 - 21:23 #291262

Midori 0.3.6 ก็ใช้ได้

By: username
AndroidSUSEWindows
on 20 May 2011 - 21:52 #291268
username's picture

เอางั้นเลยเรอะ

By: PaPaSEK
ContributorAndroidWindowsIn Love
on 20 May 2011 - 22:15 #291272
PaPaSEK's picture

บอกตรงๆ ว่า "งงเลย"

By: boonkhao
ContributoriPhoneBlackberryUbuntu
on 20 May 2011 - 22:55 #291278
boonkhao's picture

เปิดบน iPhone ก็เห็นมีเคอร์เซอร์กระพริบขึ้นมานะ แต่พิมพ์อะไรไม่ได้เพราะมันไม่แสดงคีบอร์ด ถ้าสนับสนุนจอสัมผัสก็น่าจะใช้งานได้นะ

By: Chad
iPhone
on 20 May 2011 - 22:55 #291281

เมพขิงๆ

By: lancaster
Contributor
on 20 May 2011 - 23:16 #291286

เฮ้ย!! ไปขนาดนี้แล้วเรอะ

By: tanit9999
iPhoneAndroidUbuntu
on 21 May 2011 - 00:08 #291302
tanit9999's picture

คือถ้ามันเป็น javascript ล้วนๆแล้วทำไมผมจึง save แล้วรันที่เครื่องผมไม่ได้หละครับ หรือมันแค่ putty ที่รันผ่านหน้าเว็ป
- -?

By: lancaster
Contributor
on 21 May 2011 - 00:32 #291312 Reply to:291302

ถ้ากด save จาก browser มันจะแปลง output ของ javascript เป็น html ให้ครับ ทำให้มันไม่สมบูรณ์ว่างั้นเถอะ

By: tanit9999
iPhoneAndroidUbuntu
on 21 May 2011 - 19:17 #291532 Reply to:291312
tanit9999's picture

เปล่าครับผมก็ดูดไฟล์มาทั้งหมดครับ = =!! ไม่ได้ทำดิบๆแบบนั้นครับ

ปล. แอบโกรธนะเนี้ย

By: lancaster
Contributor
on 21 May 2011 - 21:03 #291552 Reply to:291532

แสดงว่าไม่ได้ดึง os image มาด้วย?

By: kswisit
ContributoriPhoneAndroidIn Love
on 21 May 2011 - 00:37 #291315 Reply to:291302

เข้าใจว่า term.js เป็น terminal

ส่วน cpux86.js เป็นตัว emu เฉยๆ

ที่ขาดคือ os มันเลยไม่บูต XD


^
^
that's just my two cents.

By: anu
Contributor
on 21 May 2011 - 00:42 #291316 Reply to:291302
  • http://bellard.org/jslinux/ (HTML)
  • http://bellard.org/jslinux/cpux86.js
  • http://bellard.org/jslinux/term.js
  • http://bellard.org/jslinux/vmlinux26.bin
  • http://bellard.org/jslinux/root.bin
  • http://bellard.org/jslinux/linuxstart.bin

สำหรับ JavaScript ลองเอาไปใส่ http://jsbeautifier.org/ ละดูโค้ดครับ

By: tanit9999
iPhoneAndroidUbuntu
on 21 May 2011 - 19:11 #291531 Reply to:291316
tanit9999's picture

ไอไฟล์ .bin มัน javascript ด้วยหรือครับ = =??
ไหนว่า javascript ล้วนๆไง
ตอนแรกผมอ่านเข้าใจว่า สร้างทั้ง ระบบ ด้วย javascript พอดีผมไม่เข้าใจถ้าสะดวกช่วยแนะนำด้วยครับ

By: ipats
ContributorNOOBIn Love
on 21 May 2011 - 19:45 #291537 Reply to:291531

ถูกแล้วครับ Emulator ทั้งระบบ ใข้ javascript ครับ, ส่วน .bin นั้นคือส่วนของ OS ที่เอามารันบน Emulator อีกที ซึ่งในที่นี้คือ linux ครับ


iPAtS

By: lancaster
Contributor
on 21 May 2011 - 21:01 #291551 Reply to:291531

สร้าง PC emulator ขึ้นมาโดยใช้ JavaScript ล้วนๆ

ปกติ OS ก็ไม่ได้เป็นส่วนประกอบของ emulator อยู่แล้วนะครับ

By: EThaiZone
ContributorAndroidUbuntuWindows
on 21 May 2011 - 22:21 #291565 Reply to:291531
EThaiZone's picture

ที่เขาจำรองคือจำลองคอมพิวเตอร์ครับ เขาไม่ได้จำลอง OS
คิดซะว่าคล้าย virtual machine ตัวหนึ่งล่ะกัน เหมือนพวก vbox vmware


มันไม่ง่ายเลยที่จะทำ GIF ให้มีขนาดน้อยกว่า 20kB

By: AK
iPhoneAndroid
on 21 May 2011 - 00:28 #291311

สุดยอดเลย

By: semicolonth
ContributoriPhoneAndroidRed Hat
on 21 May 2011 - 00:32 #291313
semicolonth's picture

เทพโคตร


blog.semicolon.in.th

By: spicydog
ContributoriPhoneAndroidUbuntu
on 21 May 2011 - 00:39 #291317
spicydog's picture

Web Browser is everything


SPICYDOG's Blog

By: criminals
iPhoneWindows PhoneAndroidUbuntu
on 21 May 2011 - 01:03 #291322

แม่เจ้า อะไรจะขนาดนั้น!

By: lexurous on 21 May 2011 - 01:13 #291326
lexurous's picture

ต่อไปก็จำลองเป็นรุ่นเพนเทียมแล้วเอาดอสมาลง windows 3.11 95 98 me .... xp 7

By: iStyle
ContributoriPhoneAndroidSymbian
on 21 May 2011 - 10:29 #291388 Reply to:291326
iStyle's picture

ข้าม vista นะเนี่ย :P


May the Force Close be with you. || @nuttyi

By: deaw on 21 May 2011 - 01:15 #291327
deaw's picture

Fabrice Bellard เค้าเทพอยู่แล้วครับ ไปอ่านประวัติเอาเถอะ http://en.wikipedia.org/wiki/Fabrice_Bellard

By: v6hp
Android
on 21 May 2011 - 02:34 #291345
v6hp's picture

เล่นบน android ได้ด้วยแฮะ

By: criminals
iPhoneWindows PhoneAndroidUbuntu
on 21 May 2011 - 18:31 #291522 Reply to:291345

เอ้อ จริงด้วยครับ!

By: HMage
AndroidWindows
on 21 May 2011 - 03:04 #291349

ลองดูงานอื่นของเค้ารู้สึกจะสนใจการหาค่า PI มากๆ เลยนะ

By: winggundamth
ContributorAndroidUbuntuIn Love
on 21 May 2011 - 04:19 #291351
winggundamth's picture

สุดยอดเกินไปแล้วววววว


I will change the world, to the better day.

By: Balll
iPhoneRed Hat
on 21 May 2011 - 08:21 #291363
Balll's picture

เจ๋งมากครับ เหมาะกับการเอาไปสอน basic linux สุดๆ

ปล. Safari 5.0.5 ใช้ได้แล้วนะครับ

By: krittikorn
iPhoneWindows PhoneAndroidBlackberry
on 21 May 2011 - 10:04 #291380

ต่อไป ติดตั้ง libreOffice ได้ไหมนี่

Cool..5000

By: BreMen
iPhoneWindows PhoneAndroid
on 21 May 2011 - 13:39 #291453
BreMen's picture

ขนาดผมเป็น User ทั่วไป ยังอึ้งเลยครับ +_+!

By: iahcapus
AndroidWindows
on 21 May 2011 - 14:58 #291467

telnet ได้ด้วย o___O"
แต่จะ telnet ไปไหนหว่า -_-'

By: cavaji
AndroidUbuntu
on 21 May 2011 - 17:47 #291516
cavaji's picture

ลองแล้ว ...สุดยอดไปเลย

By: none on 21 May 2011 - 20:56 #291548
none's picture

ใช้เวลาทำนานแค่ไหนเนี่ย ?

By: HyBRiD
ContributoriPhoneSymbianUbuntu
on 22 May 2011 - 02:11 #291594
HyBRiD's picture

คนทำ QEMU นั่นเอง เมพขริงๆ

By: joomla
iPhoneUbuntu
on 27 May 2011 - 10:11 #293385
joomla's picture

อ่านข่าวมาได้ครึ่งหนึ่งแล้วทดลองไปเล่น ก็เจ่งดีแต่สงสัยว่าจะเอาไว้ใช้ทำอะไร พอกลับมาอ่านข่าวถึงบรรทัดสุดท้าย เออจริง