2010-01-05 14 views
8

在回答有關Java使用示例的問題時,我碰到了一些NASA使用Java進行地面控制的文章,但是我無法確定它是否曾用於地球之外。你知道有這種情況嗎?Java是否曾被用於外太空?

+0

我會大膽猜測並說「不」。 – cx0der 2010-01-05 01:57:54

+10

如果是這樣,那會解釋最後一次班車碰撞 – Pierreten 2010-01-05 02:04:54

+0

好吧,我知道在外太空發現了電腦病毒。 http://www.geekwithlaptop.com/astronauts-took-virus-infected-laptops-into-space – 2010-01-05 02:06:11

回答

8

在這裏,你會發現一個文件在討論空間應用使用Java的當前狀態:

REAL-TIME JAVA IN SPACE: POTENTIAL BENEFITS AND OPEN CHALLENGES

他們說:

在很短的時間,這是不可能的 當前Java實現 整個航天器機載軟件 可以用Java編寫。然而, 的Java可以用作隔離 平臺軟件還沒有 被分配最高關鍵性, 而關鍵的代碼仍然會寫在阿達或C.

這裏同樣的一個在無人機使用OVM(UAV)(開源RTSJ(實時規範的Java)實現)的成功試飛作者報告:

A Real-time Java Virtual Machine for Avionics

+0

這是一篇關於面臨挑戰的好文章在太空中使用RTSJ。 2004年的一篇類似文章發表於Golden Gate項目,該項目的目標是將Java用於太空任務,但除此之外沒有發現任何東西 - http://trs-new.jpl.nasa.gov/dspace/bitstream/2014/ 1分之37998/ 04-0051.pdf – Anurag 2010-01-05 02:29:29

2

可能在文檔筆記本電腦上,它們至少在Shuttle上佔據了那裏。

的Java這裏也被提及,這意味着至少有Java代碼,可以談一些飛船,如果不是他們實際運行:

+0

我認爲這是「太空中的Java」的最佳選擇 - 很多普通的Windows筆記本電腦都運行在Shuttle和ISS任務上,所以很可能有些Java進程正在運行(儘管可能不是關鍵任務容量.. ) – 2010-01-05 03:34:57

+0

我也這麼認爲。像Project Golden Gate這樣的項目很少嘗試將Java用於與任務相關的任務,並且早在2004年就有了。它可能是計算世界的永恆,但絕對不是在太空探索中。 – Anurag 2010-01-05 12:44:25

1

根據這篇文章,地面作戰中心使用它來3D Mapping and Planning。 A comment on this forum claims the Mars Lander runs VxWorks.

編輯:由Wind River確認,Spirit and Opportunity run VxWorks RTOS.沒有其他引用在Java中已明確地在Space中使用。

+0

發現這篇文章(http://www.sun.com/aboutsun/media/features/mars.html)是在sun.com的Jan 16(no year)發佈的,該文章聲明Java在地面上用於命令和控制系統稱爲Maestro。 Java被用來遠程控制流動站,但沒有一個Java的實例在車上。 – Anurag 2010-01-05 10:11:08

+0

打算自己發佈,直到我看到它已經發布 - 事實上,你甚至可以下載(縮減版本)Maestro:讓你渲染漫畫在圖像馬賽克中的位置,並模擬給流浪者命令序列。 – monojohnny 2010-01-05 13:55:54

+0

感謝您的提示..迫不及待地下載Maestro並與它一起玩,只要他們的網頁變得可用,它現在就下來 - http://mars.telascience.org/ – Anurag 2010-01-05 14:23:46

0

我覺得我讀了幾咋以前某些探測器或衛星使用Java作爲其分析設備的一部分,但我懷疑今天Java中將開發關鍵任務軟件。

但是:宇航員在他們的筆記本電腦上使用的所有應用程序,如果有用Java編寫的應用程序,我不會感到驚訝。也許一些本地安裝的webapp被用作bugtracker。

6

經常忽略的一個事實是,大多數空間探測器使用較舊的處理器。他們根本無法運行當前的商業軟件。它們不夠快或不夠強大。太空中的IC芯片暴露於高水平的宇宙射線中。高能粒子可以破壞現代CPU和其他IC芯片上的小型納米元件。爲了在太空中可靠地工作,您需要特殊設計的具有冗餘組件的IC,花費大量的重金屬屏蔽,或者使用具有較大元件的舊IC芯片,這些IC芯片可以在不被破壞的情況下從宇宙射線中擊中。

大多數這些較舊的CPU將運行在RTOS(如VxWorks)上,並且可以在彙編程序中編程或使用像C這樣的語言,並且仍然可以獲得不錯的性能。

0

我不能和任何有關軟件載體航天器的權威人士交談,但我可以肯定地說,NASA(或其附屬公司)使用Java來處理來自各個任務的數據。我最近在空間物理實驗室工作,負責處理在軌航天器的數據和遙測,而開發團隊(我是其中一員)幾乎完全在Java中工作。

相關問題