Author Archives: cash

Webkit 歷史圖示

最早的技術擁有者應該是 Netscape, 但 KDE 用了一套自訂的 Javascript engine – KJS 和 webcore engine – KHTML. 其中 KHTML 做得比 Netscape Navigator 的 Gecko 還小, 所以被 Apple 相中拿來開發 Webkit. KDE 原本沒有做 webview 的部分, 所以 Webkit 的名稱是 Apple 取的.

Apple 除了開發 Webkit, 又以兩手策略開發封閉性的 Safari. 到了 2010 年, Apple 做出 multi-process 的技術, 把 main process 和 render process 分開, 因此把 Webkit 改為不相容的 Webkit 2.0.

Google 的策略是借用 Webkit 的 Webcore, 其他自己搞. 後來開發出  V8 Javacript engine, 算是有了重大突破. 接著 Google 又做出 Blink engine, 把 webcore 換掉, 這些好料都放進了 Chrome. 當然 Google 也是兩手策略, 不會平台讓 Apple 佔便宜.

QT 和 GTK 都基於 Webkit 2.0 做出新版. 同理, WPE (Wayland for Webkit) 當然也是 ‘for’ Webkit 2.0 才聰明. 

那 Chrome 有 multi-process 嗎? Chrome (Chromium) 的做法是起好幾個 Webkit [1]. 以空間換取時間. 至於沒有 mutli-process 的弱點, 據說是用 timer 來多工執行, 沒有用到多核的優點 [3].

那 Blink 比起原來的 Webcore 差多少? 根據 [2], Blink 從 Webkit 裡面刪掉 8.8 百萬行的 source code…身輕如燕, 難怪叫做 blink. 不意外地, Qt 等等上層 API 也 port 到了 Blink.

對了, Chromium 是鉻, Cobalt 是鈷, 看起來是兄弟關係. 那麼 Google 的 Cobalt 又是做甚麼的? 這個資訊很難找, keyword 下錯絕對搜尋不到, 客官要看這裡 [4]. Cobalt 的作者本來是負責維護 Chromium 裡面的一段代碼, 叫做  H5VCC (HTML5 Video Container for Consoles). 他在各種平台 porting 這段 9 百萬行的 code  好幾年後, 終於受不了了. 決定要推出符合下面特色的功能:

  • Limited Memory. 記憶體少.
  • Slow CPUs. CPU 慢.
  • Fewer cores. 更少核.
  • Sometimes No GPU. 可能沒 GPU.
  • Sometimes No JIT. 考量安全性, 也不需要支援 just in time 代碼.
  • Heterogenous Development Environments. 跨平台環境.
  • No navigation. 不用瀏覽, 只要呈現.
  • No scrolling. 不需要捲動畫面.

因為 Cobalt 弱弱地不用處理很多事情, 連 Javascript engine 都可以偷掉. We have, perhaps surprisingly, not written our own JavaScript Engine from scratch. Because of the JITing constraint, we have to be flexible with which engine(s) we work with. We have a bindings layer that interfaces with the JS Engine so that application script can interface with natively-backed objects (like DOM elements). 因此近來成為 porting Youtube 的主流.

[REF]

  1. https://www.chromium.org/developers/design-documents/multi-process-architecture
  2. http://browserg.nom.es/
  3. https://www.zhihu.com/question/20930880
  4. https://cobalt.googlesource.com/cobalt/+/refs/heads/master/src/README.md

ATSC 3.0 小整理

ATSC 3.0 的消息愈來愈多, 在此整理一下. 首先補充 ATSC 2.0 發生了什麼事? 由於 2.0 的主旨只在於提升解析度, 因此還來不及推廣就被格局更大的 ATSC 3.0 取代了.

參考下圖 (取自 [2]), ATSC 3.0 除了可以走 broadcast (廣播), 也可以走 broadband (寬頻). Broadband 意味著可以用 USB 或是 HDMI dongle 透過 WIFI 路由器播放 ATSC 3.0 而不用換電視或是 tuner. 當然, 我們可以看到若走 broadcast 這路, 3.0 和 1.0 的差異甚大. 

在 IP 層以上, broadband 和 broadcast 只有 TCP 和 UDP 的不同. 再往上, 就沒有分別了. 這裡有幾個縮寫要注意. ROUTE 不是路由器那個 route, 而是 Real-Time Object Delivery over Unidirectional Transport (那 E 呢? 去哪裡了?), MMTP 是指 MPEG Media Transport Protocol, HTTP 是 hypertext transfer protocol; 後兩者沒有搞怪, 就是大家平常知道的那個. 資料路徑如下:

MPEG-DASH –> IP –> ROUTE –> HTTP Proxy –>  MPU (Media Processing Unit)

MPU 負責解碼 (decode) 和播放. 上圖的 MPU 兩層之中有個 EME, 負責解密 (decrypt) 的部分. 播放當中可能頭端還會推送一些資料, 它們會走上圖的 NRT (Non-Real-Time) file delivery. 基本的 ATSC 播放規格如下:

  • Transfer rate: Up to 57 Megabits per second on a 6 MHz channel (up from ATSC 1.0 19.4 Mbit/s)
  • Video Codec: HEVC/H.265 (ATSC 1.0 used MPEG-2)
  • Progressive Video: Up to 4K UHD or 3840 X 2160 resolution at 120 FPS
  • High Dynamic Range (HDR) imaging
  • 3D TV compatible – just in case it makes a comeback
  • Dolby AC-4 & MPEG-H 3D Audio
  • Multi-audio track by program
  • Dynamic range control
  • Audio / video water mark
  • Adaptable single frequency network transmission systems for improved over-air reception from ATSC 1.0

顯而易見地, 音視頻的水準都大幅提高了. 另外值得一提的是, ATSC 號稱改善了 AV sync. 對嘴的效果會比以前更好. ( ATSC improves lip-sync so that in any kind of delivery scenario lip-sync is maintained to a very tight tolerance.)

既然可以透過網路, 當然就可以支援手機播放 (multi-screen). 所有的內容都廣播出去之後, 接受者若在不同的區域收看, 就可以根據地理資訊 (如 GPS) 或個人喜好篩選其內容, 比方說天氣、交通資訊等等. 當然, 大家也可以對廣告投票, 反映自己的意見. 

當然, broadcast 這路也不是什麼事都沒做. 據稱 ATSC 改善了訊號強度. 我想這一部分是 OFDM (Orthogonal frequency division multiplexing) 所貢獻的. 它的目標是像手機一樣在室內也可以收到訊號 ( allowing signals to travel further and to penetrate deeper into buildings and basements within range) [1].

最後提一下 ATSC 賺錢模式, 前面講到會播廣告. 但他們更想做的是 on line shopping, 看到電視上有什麼好東西都可以直接點下去就下單. 這個夢想在 BD (藍光光碟) 已經提過一次, 但 BD 不普及, 這想法就沒有發展成功.  Netflix 的商業模式也被討論到 [1], 不過我對 Netflix 的模式除了包月之外, 認識不多.

[REF]

  1. http://www.audioholics.com/editorials/atsc-3.0-cord-cutter2019s-dream-to-tiered-internet-nightmare
  2. https://www.thebroadcastbridge.com/content/entry/6229/atsc-3.0-details-explained-part-4
  3. https://www.thebroadcastbridge.com/home/category/transmission-encoding-mux/entry/6139/atsc-3.0-mysteries-explained-part-1
  4. https://www.thebroadcastbridge.com/home/category/distribution-and-delivery/entry/6200/atsc-3.0-explained-part-2
  5. https://www.thebroadcastbridge.com/home/category/transmitters-and-rf-components/entry/6275/atsc-3-0-details-explained-part-3

我讀 «證券分析» 第六版 – 證券分析的其他方面

這段時間中, 我讀了東野圭吾的 <解憂雜貨店> (這本超好看), 秦嗣林的<學上當>. 事實上秦老闆的每一本書我都看過了, 只是對小品散文很難寫筆記. 然後又翻了兔哥的 <大話工業 4.0> 和天下雜誌的 <區塊鍊革命>,…只有 <大話> 的前一半好看, 其他一本半滿不好看, 另外沒翻開的兩本又有點硬, 只好心甘情願回來繼續讀 <證券分析>.

第七部分 “證券分析的其他方面:價格與價值的差異” 由大衛艾布拉姆斯 (David Abrams) 導讀, 他也坦言自己本來也沒有把 <證券分析> 讀好讀滿, 但既然受邀導讀, 就認真地看了本書. 他提到第 46 章的內容比較過時了, 主要是這章討論認股權證, 但此時衍生性金融商品還在很原始的階段, 而著名的 “認股期權估價公式” [1] 還沒有被提出來. 因此作者的分析不夠精準. 

如果我們只去分析定價錯誤- 價格明顯小於價值的案例, 就會發現這種錯誤不會維持太久、也不會經常發生. 但若逮到機會, 獲利就會非常可觀! 以 20 世紀 80 年代的日本為例, 當時日本的氣勢如日中天, 有人認為這是新世界的到來, 有人則看出又是另一場泡沫. 日本人因為看好自己, 用低價賣出日經指數的看跌期權, 而看壞日本的美國人則是買方. 後來日本崩盤, 這些低價期權大漲, 作者的老闆也賺了不少.

導讀者說自己剛出道的時候, 不懂資深同事為何可以準時下班又賺大錢. 於是請教自己的老闆 Ira 有何祕訣? 老闆說只要你能便宜地 (4.5 USD) 買進一對期權 (一個賣出和一個買進), 用貴一點點的價格 (5 USD) 賣出一對期權. 這樣來回反覆操作就可以賺 (0.5 / 0.45 ~= 11%). 那問題來了, 為何有便宜貨可以撿? 因為市場上有傻瓜. 巴菲特說 “如果你玩撲克三十分鐘後還不知道傻瓜是誰, 那你就是傻瓜.” 

第 47 章 “融資成本與管理成本” 這部分, 導讀者認為可以改名為 “小心投資銀行家”.他的朋友也說: “沒有衝突的地方, 也就沒有利益.” 基本上投資人和你的投資銀行、理專都是利益衝突的. 第 50 章和第 51 章都在講價格與價值的背離.  作者提出一個清單, 告訴讀者有很多投資標的都太便宜了! 導讀者說雖然他也很羨慕葛拉漢、巴菲特生的年代好, 但他提醒我們也有自己的肥羊可宰, 像是 2002 年債券崩盤、2007  年金融海嘯, 這些都是超好的獲利機會. Well, 大部分的人都是被宰啦!

第 52 章說到:”市場分析不存在安全邊際, 不是對便是錯, 一旦你錯了, 就會遭受損失.” (p. 805). 因此作者對讀者們的期望是: 大家都能變成業餘的證券分析師, 要懂得看數據, 為自己思考. 如果你是剛出社會的年輕人, 導讀者給大家的建議是要熱愛投資賺錢, 不要相信效率市場的說法. 雖然市場的確愈來愈有效率, 但它足夠低效到讓我們找到賺錢的機會.

以上就是第七部分導讀的內容摘要.

[REF]

  1. 引用自網站: www.fin.kuas.edu.tw/. 關於選擇權的評價理論,最早是在 1900 年,由法國 Sorbonne 大學的 Louis Bachelier 在其博士論文中,針對與買權有類似性質的認股權證做評價,但因為他 做了股價為常態分配假設,使得股價有可能是負值 ,使得股價有可能是負值,因此不符合實際情況 ,因此不符合實際情況。直到 1973 年,由 Fischer Black 和 Myron Scholes 共同在第 81 期的 Journal of Political Economy 中,發表了著名的 Black & Scholes 歐式選擇權公式(以下簡稱 B-S 公 式)推導,提供歐式選擇權理論價格一個嚴謹的數學計算工具,讓交易者不再只 ,讓交易者不再只 是依據自己的主觀預測來對歐式選擇權進行評價,而有明確公式運用,便於進行選擇權交易決策。