2009年1月24日 星期六

MSN Web Messenger

最近小弟發現微軟推出了Web版的MSN,經小弟試用,還不錯,但用FireFox似乎無法打字,不過用IE就沒問題了:
Web Messenger 和 Messenger 有什麼不同?
MSN Messenger 是擁有完整功能的即時傳訊軟體。您可以安裝在自己或您有權限安裝的電腦上。MSN Web Messenger 則是讓您不必安裝任何軟體就可以在瀏覽器上迅速簡單地使用即時傳訊的基本功能。
資料來源:http://webmessenger.msn.com/default.aspx?R=1

2009年1月18日 星期日

快速刪除kavo.exe!

之前因無法登入Yahoo即時通,上網查了一下,發現是中了kavo的病毒,而小弟我有找到一位大大所寫出來的小程式,很方便,它會不定期更新:
書維的部落格
資料來源:書維的部落格

2009年1月11日 星期日

Google雲端運算的關鍵:從軟體層突破硬體限制

文/王宏仁 (記者) 2008-05-19
Google與Yahoo相繼在臺灣推廣雲端運算,培養平行運算的開發人力。Google建議中小企業應該善用雲端運算的服務,而Yahoo也建議企業可使用雲端運算處理大量批次資料。
繼上個月Yahoo來臺推廣雲端運算之後,Google全球副總裁李開復也趁Google臺灣辦公室落成的同時,發表演講介紹Google的雲端運算服務。
李開復表示,雲端運算的特色是以服務為中心來創造軟體應用。他說:「包括6項特性:以用戶為中心、任務為中心、性能強大、智慧化、廉價硬體、平行處理。」他進一步解釋,當使用者透過瀏覽器使用Google服務時,Google透過平行處理技術,將使用者的指令分派到上千臺電腦上執行,讓使用者存取大量資料時,又能有很高的效率,例如Gmail使用雲端運算的技術,即使有上百萬使用者,登入不用幾秒鐘就能完成密碼確認。
為了能讓網路應用服務處理大量使用者和大量資訊,Google雲端運算的前提,假定每個系統每天都有可能故障,再利用軟體層來創造容錯,並且將機器設備標準化,隨著資料量增加,只需要不斷擴充機器,幾乎不需要修改原來的應用程式。這個軟體層包括3項技術:Google文件系統(GFS)、分散式資料庫Google BigTable,以及MapReduce。
透過雲端運算技術,Google能做出供全球使用的服務,這也讓Google找到產品免費的營運模式。李開復認為中小企業可以善用這些免費產品,將繁瑣的IT日常服務,例如企業郵件轉移到Google或其他服務供應商,不需要自行維護系統。
這並非是Google第一次在臺灣介紹雲端技術,今年初Google已經舉辦過雲端運算技術的研討會,同時也和臺灣大學、交通大學的教授合作,在大學部課程中,教授相關技術。
除了Google在臺推廣雲端運算技術之外,稍早在四月初時,Yahoo也從印度分公司派出雲端運算的開源平臺Hadoop作者之一Vivek Ratan,來臺向開發人員介紹雲端運算技術與Hadoop使用經驗。Vivek說:「任何企業有需要批次處理的巨量資料,都可以利用Hadoop,自行建置一套雲端運算平臺來作資料探勘的分析。」目前最大規模的Hadoop應用,是Yahoo結合上千臺伺服器,使用1萬多個Linux核心來處理5 Petabytes的網頁索引資料,不過,Vivek表示目前使用的企業,大多使用20~100臺伺服器,就可以建置出夠用的雲端運算環境。
Google和Yahoo還將在臺灣舉辦開發者日,更進一步的介紹更多雲端運算技術的細節。Google將於6月14日在臺北國際會議中心舉辦臺北程式開發日,Yahoo則預定於今年下半年舉辦。文⊙王宏仁
資料來源:
http://www.ithome.com.tw/itadm/article.php?c=48970

雲端運算

文 / 蔡學鏞

★ 這是舊文章的改版

雲(Cloud)是網路的象徵,所以雲端運算(Cloud Computing),最廣義的解釋就是「網路運算」。這恐怕是目前大家對於雲端運算的最大公約數,在這之外,大家對於雲端運算的理解和定義,都不太一樣。這篇文章試圖用最淺顯的方式,向大家說明我所知道的雲端運算。

【雲端的組成與架構】
網路是由許多伺服器所組成,雲端運算的基礎是大量的伺服器。如果只用一部超級電腦當伺服器,一樣可以提供相當大的運算威力,這樣可以算是雲端嗎?恐怕不行,因為雲端運算強調的是許多伺服器聯合起來提供強大的運算能力。只有一部超級電腦或少數幾部電腦,恐怕太薄弱,無法形成雲,充其量是「水蒸氣」。

良好的雲端運算架構方式,必須具備規模彈性、容錯、平衡負載:
1 當運算規模增加,雲端要可以彈性變大,只要加上新的節點就可以了,這樣的能力稱為水準擴充(horizontal scalability)。
2 資料重複(redundancy)存放在不同位置,確保資料安全。
3 讓伺服器之間的負載盡量平衡,免得某些伺服器太忙,某些卻太悠閒。

【雲端的前世今生】
既然雲端運算是將許多電腦聯合起來提供運算能力,那麼就會用到網格運算(grid computing)。比較知名的網格運算應該是SETI(尋找外星人)計畫,幾年前SETI流行時,許多人的電腦都下載安裝了SETI程式,奉獻出電腦多餘的運算能力,為尋找外星人這種無聊之舉貢獻心力。

以往的網格運算似乎是供專家使用居多,著重在需要複雜運算的「單一任務」,例如基因定序、核爆模擬。但雲端運算則比較偏大眾應用,相當高比例的大眾應用其實不需要進行複雜的運算,但是由於「大眾」相當多,所以累積起來的運算需求也相當可觀。所以在應用上,雲端運算可以被視為平民化的網格運算。

除了上述的差別,雲端運算和網格運算的差別還有兩點。第一,為了方便管理,並充分運用伺服器的效能,雲端運算也經常會使用到「虛擬化」技術。第二,以往的網格運算通常也只使用專屬的應用協定和資料格式,但雲端運算則受到近年Web潮流的影響很深。

【雲端的操作介面】
雲端運算的願景是以Web為前端,資料全都放在後端,不放在使用者手上。如此一來使用者可以不用擔心不同裝置上資料同步化的問題,也可以隨時取用資料(如果網路沒斷線的話)。既然資料都放在雲端,運算都在雲端進行也就理所當然。因為這樣的效率最好,可以減少資料在使用者和雲端之間的傳輸。

至於Web前端,微軟和Adobe等公司會希望你使用他們各自的RIA技術,但IBM、Google、Apple等沒有RIA技術的廠商,則會希望你使用Web瀏覽器(JavaScript/CSS/HTML),以免被(其他)廠商綁死。

操作介面的程式碼透過Web Browser動態地送到客戶端執行,重要的邏輯部分放在Web伺服器上。這樣的運作方式,其實就是SaaS。所以雲端運算和SaaS是相輔相成的技術概念。

除了Web瀏覽器和RIA之外,許多標準的應用也會隨著雲端運算的興起,開始支援從雲端開啟文件,或寫入文件到雲端,這些讀寫的動作會透過標準的HTTP協定、FTP協定、或WebDAV來達成。說不定以後軟體在「File」選單中,除了「Save」、「Save As」之外,還會多出一個「Save To Cloud」。

【雲端的隱憂】
但是雲端畢竟是在遠方,資料的存取速度自然遠比不上自己電腦上的硬碟。所以除非客戶端連線到雲端的速度夠快,否則這會成為推廣雲端運算的障礙。更不用提萬一像Google App Engine來個大斷線、或者太平洋海底光纖斷線,頓時白雲變烏雲,你可就求救無門了。

在雲端的廠商會將服務列在網頁上,讓你選擇要執行的程式。這些雲端上的程式都可以設定參數,以記錄你的名稱、喜好,以提供更好的服務。甚至過去的一舉一動,也會被記錄下來,你的隱私資料成為廠商的資產。如果公司利用雲端處理ERP/CRM等資料,那麼公司的運作機密以及客戶資料也都會被雲端的廠商知道。是的,雲端廠商都會強調他們重視顧客的權益,這就看你信不信了。

除了可以使用廠商原本就提供的雲端程式,利用參數設定來符合自己需求之外,你也可以上傳程式到雲端。Google App Engine允許你將程式上傳到雲端,在雲端執行。使用Google App Engine,可以省去你建置與管理伺服器的困擾。上傳程式一樣有暴露機密的可能,如果你是一家搜尋引擎的公司,你發明瞭比Google更準確的搜尋演算法,你敢把這樣的服務放到Google的雲端上,只是為了省去「建置與管理伺服器的困擾」嗎?

【雲端對軟體開發者的影響】
你想用什麼方式實踐你的雲端系統,會受到雲端供應商(Cloud Provider)的平台限制。

雲端供應商提供這類的服務,都會限定所使用的語言和框架。Google目前只支援Python和相關的Web框架。以後才會支援其他語言和框架。Python是最適合雲端的語言嗎?恐怕不是,但應該已經符合大眾的需求。

你的Python程式會被Google複製到不同的伺服器上各自執行,這樣的程式無法協同完成一件複雜的任務(例如基因定序)。比較適合雲端的語言其實是函數式語言,例如Erlang。而微軟預計會以F#當作雲端運算的語言。

另外,最厲害的雲端運算設計方式,甚至會向Mobile Agent技術借鏡,讓程式碼可以流動。我認為能結合Mobile Agent的雲端,才是真正先進的雲端。

【雲端的商業模式】
雲端運算會讓軟體產業由原本的「銷售套裝軟體」改成「銷售服務與租賃軟體」。在這樣的商業模式之下,牽涉到的業者包括了ISP(Internet Service Provider)、ASP(Application Service Procider)、DSP(Data Service Provider)、以及Cloud Provider,形成一個緊密的產業結構,由ISP提供網路(例如ADSL)、ASP提供軟件、DSP提供資料、Cloud Provider提供運算能力。

【為何雲端紅了】
雲端運算「這個名詞」在這兩年會這麼紅,主要是因為Web的興起所帶動的。近年Web化的趨勢是將資料都放在伺服器上,既然資料都在伺服器上,運算最好要在接近資料的地方進行,所以運算也在伺服器上才是比較好的作法。運算完成之後,將運算後的結果傳遞到客戶端即可。伺服器需要龐大的運算能力才能應付眾多使用者所提出的運算需求,所以需要將許多伺服器串接起來。

剛剛提到,運算必須要是在伺服器上進行,而不是在客戶端進行。把所有的資料都送到客戶端,然後才在客戶端進行處理,這是不合理的,因為:
1. 資料量相當大,傳輸的速度會相當慢
2. 客戶端的電腦不見得有運行此程式的能力
3. 有資料保密和程式邏輯保密的風險。
從這個角度來看,雲端運算勢在必行,要紅是遲早的事。儘管目前雲端運算有一點渾沌不明,但我不認為雲端運算會是曇花一現。

【雲端何時成熟】
儘管雲端運算不會只是曇花一現,但是要多久的時間才能成熟,就相當難以估計。我個人認為目前雲端運算還只是在萌發時期,要到達成熟還有很長的一段時間,雲端運算需要企業做出相當多改變,加上目前的國際經濟局勢相當糟糕,可能會持續好幾年的時間,在這段時間內,多數企業會保守因應新技術和新市場,所以沒有幾年以上的時間,我們很難看到雲端運算的實際成績。

綜觀目前的狀況,雲端運算正在一團雲霧之中,渾沌未明。雲端運算目前充滿不確定因素,太多事情的發展很難預料。我認為,妄想漫步在雲端,而太早踏入,小心你一腳踩空。

當經濟局勢穩定,且提倡雲端運算的這些廠商能夠彼此坐下來談,定義出一套雲端運算的標準時(Protocol、API…),或許才是大多數的企業應該投入雲端運算的時候。
資料來源:
http://jerrylovesrebol.blogspot.com/2008/12/blog-post_02.html

如何從第X頁插入頁碼

1.將游標移到第1頁的最後
2.點選目錄列的 [插入]-->[ 分隔設定]
3.在分節符號類型中選擇 [自下頁起]
4.[確定]
5.點選目錄列 [檢視]-->[頁首/頁尾]
6.點選頁首及頁尾工具列中的 [顯示下一個] icon, 切換到 節2
7.點選頁首及頁尾工具列中的 [同前] icon, 使右上角的 [同前] 字樣消失
8.切換到頁尾, 重覆第7步
9.點選頁首及頁尾工具列中的 [格式化頁碼] icon, 在 [起始頁碼] 中可以設定本節要開始的頁碼
10.在頁首或頁尾插入頁碼
資料來源:
http://tw.knowledge.yahoo.com/question/question?qid=1507032708572

2009年1月8日 星期四

寫程式辨膚色 大學生攔A片

「讀國小女兒上網找資料寫作業,都會連結上色情網站」,教授抱怨色情影片氾濫的閒聊,觸動國立高雄大學資訊管理學系六位應屆畢業生靈感,利用A片「肉搏戰」肉體膚色面積大的特色,設計出「AV OUT!」辨識程式,能有效攔阻七成以上的A片。
王方巍、林修平、魏兆言、黃明陽、譚惠心、沈妤平等資管系六人研究發現,大多數的網站過濾程式,都是針對帶有色情關鍵字的部落格、網路相簿等加以封鎖,但許多色情片名根本與色情無關,而成為漏網之魚。
[兩女生加入研究 看A片很尷尬]
為了找新的攔阻方法,六人看了數十支A片,兩位女學生譚惠心、沈妤平起初有些尷尬,但想到是學術研究又可阻擋色情氾濫戕害兒童就釋懷了。
他們分析A片共通性就是裸露面積較正常影片大、多、時間長,於是建立樣本,上傳影片必須經過資料庫的「膚色畫素」比對,高過設定參數者便被定義為A片而被攔下。
反覆測試後,攔阻效果逾七成,每則影片只需二至三秒便可完成判讀,而且使用免費的開放程式碼軟體架設網站及撰寫,沒有成本且能夠外掛在任何作業平台。
[充實資料庫 杜絕漏「網」之魚]
面對千奇百怪的A片,「AV OUT!」正持續增加資料庫範本,把「網眼」再織密些,降低系統誤判機率,減少漏網之魚。
不過「AV OUT!」也有罩門,若是黑人A片就無法辨識,因此他們正研發加入「輪廓」辨識功能,透過身體曲線、器官的判讀,提升過濾精準度,達到滴水不漏。
「AV OUT!」外掛在「純影音分享網站」,網址:http://140.127.220.98/ostube21/,歡迎大家使用。
資料來源:
http://tw.news.yahoo.com/article/url/d/a/090108/4/1cm3x.html