前一陣子花時間看這本書,
這本算是滿適合新手入門的書,
很多觀念說明很清楚,不過要讀本書;還是需要一些基礎:
1.略懂組合語言
使用NASM,作為一些低階操作。
2.C 語言 (絕大部分程式使用。)
3.略懂環境Shell,Gnu Make
Windows 批次檔
Linux: Bash or Csh 等等
從環境設定,到Boot 流程、多執行序、記憶體、檔案系統的實作等等,
許多重要的OS元素均有詳細的介紹。
這本書環境設部分,很貼心的介紹了Linux 及windows 開發環境的設定。
對於不習慣使用Linux的讀者提供另一種選擇。
本人習慣使用Linux 環境,所以電腦環境如下:
OS: XUbuntu 10.10 , 桌面:Xfce
Tool: gcc 4.4.5, GNU Make 3.81, Bash 4.1.5, qemu 0.12.5
Editor: vim + ctags + cscope
一邊看書,一邊利用範例修改編繹,讓自己更容易瞭解,來龍去脈。
其實研究OS的原理,可讓自己更知道系統如何運作,加強自己的功力喔!!!
有空不妨看看!!!
2011年4月20日 星期三
2011年4月18日 星期一
把常用的UNIX 環境重建到MAC OS X (1)
把常用的UNIX 環境重建到MAC OS X
最近舊的Mac壞了,
換了新的Macbook pro,環境要重灌真是一件煩人事。
之前都是用Macports, 這次想試試Homebrew 與最近的MACOSX 及Xcode 會不會簡單些?
實驗環境:
硬體:2.3 GHz Intel i5, 4GB DDR3
軟體:Mac OS X 10.6.7, Xcode 4.01 and iOS SDK 4.3
參考官方安裝說明(https://github.com/mxcl/homebrew/wiki/installation),以我所使用的環境為例,在安裝前請注意下列事項:
* Mac 必須為Intel CPU
* Mac OS X 必須10.5 (Leopard) 以上 (目前在10.6 上使用也OK)
*建議移除 /usr/local/include 和 /usr/local/lib 以避免一些相容的問題。
*安裝目錄:
﹣ 免避包含空白的目錄
﹣ 免避使用Macports 所用目錄(/opt/local 和 /sw)
﹣ 建議使用/usr/local, 因為簡單、安全,因預設路徑已包含、Apple 保留這個目錄給大家使用。
安裝Homebrew,執行如下:
$ ruby -e "$(curl -fsSLk https://gist.github.com/raw/323731/install_homebrew.rb)"
==> This script will install:
/usr/local/bin/brew
/usr/local/Library/Formula/...
/usr/local/Library/Homebrew/...
Press enter to continue
==> /usr/bin/sudo /bin/mkdir /usr/local
WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.
To proceed, enter your password, or type Ctrl-C to abort.
Password:
==> /usr/bin/sudo /bin/chmod g+w /usr/local
==> /usr/bin/sudo /usr/bin/chgrp staff /usr/local
==> Downloading and Installing Homebrew...
==> Installation successful!
安裝成功!!
接下來,先試安裝一下原始碼管理工具 git 吧!!
$ brew install git
==> Downloading http://kernel.org/pub/software/scm/git/git-1.7.4.4.tar.bz2
######################################################################## 100.0%
==> make prefix=/usr/local/Cellar/git/1.7.4.4 install
==> Downloading http://kernel.org/pub/software/scm/git/git-manpages-1.7.4.4.tar.
######################################################################## 100.0%
==> Downloading http://kernel.org/pub/software/scm/git/git-htmldocs-1.7.4.4.tar.
######################################################################## 100.0%
==> Caveats
Bash completion and emacs support have been installed.
The rest of the "contrib" folder has been copied to:
/usr/local/Cellar/git/1.7.4.4/share/contrib
==> Summary
/usr/local/Cellar/git/1.7.4.4: 1054 files, 19M, built in 49 seconds
馬上可供使用,滿方便。
結論
使用無障礙,很簡單清爽的介面,提供剛好資訊給使用者。
就個人而言,偏好(Information Just fit)工具,所以推廌給大家使用。
更新10-01: 使用下列命令可下載或更新並安裝,最新版的Qemu
brew install qemu
2011年4月14日 星期四
實戰Three20心得(1)
如果您是開發iPhone/iPad程式的新手, 推廌使用 Three20. 可以省下不少慢工細活的瑣事喔!
瞭解細節由此去Three20
使用git下載,目前開發中的程式碼
/dev$ git clone https://github.com/facebook/three20.git
Initialized empty Git repository in /dev/three20/.git/
remote: Counting objects: 18387, done.
remote: Compressing objects: 100% (6066/6066), done.
remote: Total 18387 (delta 14468), reused 14930 (delta 11244)
Receiving objects: 100% (18387/18387), 11.88 MiB | 1.12 MiB/s, done.
Resolving deltas: 100% (14468/14468), done.
參考資料:
瞭解細節由此去Three20
使用git下載,目前開發中的程式碼
/dev$ git clone https://github.com/facebook/three20.git
Initialized empty Git repository in /dev/three20/.git/
remote: Counting objects: 18387, done.
remote: Compressing objects: 100% (6066/6066), done.
remote: Total 18387 (delta 14468), reused 14930 (delta 11244)
Receiving objects: 100% (18387/18387), 11.88 MiB | 1.12 MiB/s, done.
Resolving deltas: 100% (14468/14468), done.
/dev$ cd three20/
/dev/three20$ tree -L 1
├── AUTHORS
├── Build
├── config.template
├── diffstrings.py
├── extensions
├── LICENSE
├── project.dev
├── README.mdown
├── samples
├── src
└── templates
參考資料:
訂閱:
文章 (Atom)