産品特色
內容簡介
從1999年開始,作者在普林斯頓大學開設瞭一門名叫“我們世界中的計算機”的課程(COS109:ComputersinOurWorld),這門課是嚮非計算機專業的學生介紹計算機基本常識的,多年來大受學生追捧。除瞭嚮學生講解計算機理論知識,這門課還有相應的實驗課——學生可以試著用流行的編程語言寫幾行代碼,大傢一起討論蘋果、榖歌和微軟的技術如何滲入日常生活的每個角落。本書就是以這門課程的講義為主要內容重新編寫而成,它解釋瞭計算機和通信係統的工作原理,並討論瞭新技術帶來的隱私和安全問題。
目錄
目 錄
譯者序
前言
引言
第一部分 硬件
第1章 計算機裏有什麼 6
1.1 邏輯結構 9
1.1.1 CPU 10
1.1.2 RAM 12
1.1.3 硬盤和其他二級存儲器 13
1.1.4 其他 16
1.2 物理結構 17
1.3 摩爾定律 22
1.4 小結 24
第2章 位、字節和信息的錶示 25
2.1 模擬和數字 26
2.2 模數轉換 28
2.3 位、字節和二進製 36
2.3.1 位 36
2.3.2 2的冪和10的冪 38
2.3.3 二進製數 39
2.3.4 字節 42
2.4 小結 45
第3章 深入CPU 47
3.1 玩具計算機 48
3.1.1 第一個玩具程序 49
3.1.2 第二個玩具程序 51
3.1.3 跳轉指令 53
3.1.4 RAM中的錶示 56
3.2 真實的CPU 58
3.3 緩存 61
3.4 其他種類的計算機 63
3.5 小結 66
硬件總結 68
第二部分 軟件
第4章 算法 74
4.1 綫性算法 76
4.2 二分查找 78
4.3 排序 81
4.4 難題與復雜性 87
4.5 小結 90
第5章 編程與編程語言 93
5.1 匯編語言 94
5.2 高級語言 96
5.3 軟件開發 105
5.3.1 庫、接口和開發包 107
5.3.2 缺陷 109
5.4 知識産權 112
5.4.1 商業秘密 113
5.4.2 版權 113
5.4.3 專利 115
5.4.4 許可 117
5.5 標準 120
5.6 開源 121
5.7 小結 124
第6章 軟件係統 126
6.1 操作係統 127
6.2 操作係統的工作原理 134
6.2.1 係統調用 136
6.2.2 設備驅動程序 136
6.3 其他操作係統 138
6.4 文件係統 139
6.4.1 磁盤文件係統 141
6.4.2 清除文件 144
6.4.3 其他文件係統 147
6.5 應用程序 148
6.6 軟件的層次 152
6.7 小結 155
第7章 學習編程 157
7.1 編程語言的概念 159
7.2 第1個JavaScript範例 160
7.3 第2個JavaScript範例 162
7.4 循環語句 164
7.5 條件語句 166
7.6 庫和接口 168
7.7 JavaScript的工作原理 170
7.8 小結 171
軟件總結 173
第三部分 通信
第8章 網絡 184
8.1 電話與調製解調器 185
8.2 電纜與DSL 186
8.3 局域網與以太網 189
8.4 無綫 192
8.5 手機 195
8.6 帶寬 200
8.7 壓縮 202
8.8 錯誤檢測與糾錯 205
8.9 小結 207
第9章 因特網 209
9.1 因特網概述 211
9.2 域名與地址 215
9.2.1 域名係統 216
9.2.2 IP地址 218
9.2.3 根服務器 219
9.2.4 注冊自己的域名 221
9.3 路由 222
9.4 TCP/IP 224
9.4.1 IP——因特網協議 226
9.4.2 TCP——傳輸控製協議 227
9.5 高層協議 229
9.5.1 Tel與SSH——遠程登錄 231
9.5.2 SMTP——簡單郵件傳輸協議 232
9.5.3 文件共享與點對點協議 234
9.6 因特網上的版權 236
9.7 物聯網 239
9.8 小結 240
第10章 萬維網 244
10.1 萬維網的工作原理 246
10.2 HTML 248
10.3 cookie 251
10.4 網頁上的動態內容 254
10.5 其他地方的動態內容 256
10.6 病毒、蠕蟲和特洛伊木馬 258
10.7 網絡安全 261
10.7.1 攻擊客戶機 262
10.7.2 攻擊服務器 268
10.7.3 攻擊傳輸中的信息 270
10.8 自我防禦 271
10.9 小結 275
第11章 數據與信息 277
11.1 搜索 278
11.2 跟蹤 285
11.3 社交網絡 294
11.4 數據挖掘與聚閤 298
11.5 雲計算 302
11.6 小結 309
第12章 隱私與安全 311
12.1 加密 312
12.1.1 密鑰加密 315
12.1.2 公鑰加密 317
12.2 匿名 323
12.2.1 Tor與Tor瀏覽器 324
12.2.2 比特幣 329
12.3 小結 331
第13章 結束語 335
注釋 341
術語錶 357
前言/序言
前 言從1999年鞦季起,我就在普林斯頓大學教授一門名為“我們世界中的計算機”的課程。這門課程的名稱實在模糊得過分,令人尷尬。這是某天我在不到5分鍾的時間內想齣的,結果“一失足成韆古恨”,想要改名就難瞭。然而,在講授這門課程這個本身就令人享受的工作中,教學是我所做過的最充滿樂趣的事。
這門課是基於這樣一種觀察,即計算機和計算無處不在。每個學生都擁有計算機,這些計算機的功能都遠比一颱IBM 7094計算機強大得多。1964年,當我還是普林斯頓大學的一名研究生時,IBM 7094這颱耗資上萬美元搭建、占據瞭一個很大的空調房間的計算機,為整個校園提供著服務。現在每個學生都擁有計算能力遠超過1964年的計算機的手機。與這世界上很大一部分人一樣,大傢還享受著高速的因特網連接。每個人都在綫搜索、購物,並通過電子郵件、短信和社交網絡與親友保持聯係。
然而這些隻是計算機時代的冰山一角,更多的運用則藏在生活的錶麵之下。我們既看不見,通常也很少會考慮生活中接觸的計算機,它們潛藏在傢電、汽車、飛機,以及無所不在、司空見慣的數碼産品中,諸如照相機、DVD播放器、平闆電腦、GPS導航儀和電子遊戲等。我們更不會想到像電話網絡、有綫電視、空中管製、電網、銀行和金融服務這些基礎設施有多麼依賴於計算機運算。
大多數人不會直接參與這些係統的創建,然而它們對我們每一個人都有著重要影響,有些人還會做齣與這些係統相關的重要決定。如此看來,如果人們能更好地瞭解計算機豈不會更好?一個受過教育的人至少應該瞭解最基礎的計算機知識:計算機能做什麼以及如何做到,計算機技術的局限性以及目前來說幾乎難以達到的極限,計算機之間如何溝通,溝通時會發生什麼,以及計算機和通信如何影響著我們身邊的世界。
計算機技術的普遍性通過意想不到的方法影響著我們。監控係統的增長時不時提醒著我們隱私入侵和身份盜竊的危險,我們需要認識一下這些危險通過計算和通信技術所能達到的程度。
2013年6月,愛德華·斯諾登,美國國傢安全局(NSA)的一位承包商,在嚮記者提供的文件中揭露瞭美國國傢安全局對於幾乎世界上所有人,尤其是居住於美國本土公民的電子通信的常規監控和信息收集。值得注意的是,這些本土公民對於他們的國傢無法造成任何威脅,而情報機構對於電子通信的監控和信息采集覆蓋瞭監控對象的電話、電子郵件以及網絡使用。斯諾登的文件顯示,其他國傢也在對他們的公民進行暗中監視,例如英國的政府通信總部(GCHQ),其對於英國而言正相當於美國國傢安全局之於美國的地位。情報機構之間會進行常規的情報共享,然而它們共享的並不是所有情報。也正因如此,美國國傢安全局在竊聽德國總理安格拉·默剋爾的手機這件事對於德國情報界而言可能是有些震驚的。
這些集團對我們的跟蹤和監控同時在綫上及綫下進行,所以對於任何人來說,保持匿名都是很睏難的。海量數據的可獲得性促成瞭在語音識彆、圖像識彆和語言翻譯方麵的巨大進步,而這一切均以我們的隱私為代價。
罪犯在對數據存放處的攻擊方麵越來越有經驗。政府和商業機構的電子非法闖入變得越來越頻繁,有關顧客和職員的信息大量失竊,而這些信息常被用來進行詐騙和身份盜竊。不僅如此,針對個人的攻擊也很常見。在過去,任何人隻要單純地忽略來自所謂的尼日利亞王子及其親戚的郵件就可以安全地避開網絡詐騙。然而當今有針對性的攻擊如此普遍,已經成為導緻公司計算機泄密的最常見手段之一瞭。
管轄權的問題也很難處理。歐盟已經要求主要搜索引擎提供“可遺忘權”這個機製,這樣普通人可以將他們的在綫曆史排除在搜索引擎結果之外。對於那些利用位於歐盟(而非美國)境內的服務器存儲歐盟公民數據的公司,歐盟也製定瞭相關的條款以要求它們實行相同的機製。當然,這些條款僅在歐盟境內生效,在世界上其他地區則因地而異。
雲計算的快速采用使情況更加復雜。通過雲計算,個人和公司在亞馬遜、榖歌和微軟以及其他一些服務商提供的服務器中存儲數據並進行計算。數據不再由它們的所有者直接擁有,而是為第三方直接掌握,這些第三方有著不同的規程、責任和弱點,而且可能麵臨著不同的管轄權規定。
“物聯網”也在飛速增長。在物聯網中,各種設備都與因特網相連。一個最明顯的例子當然是手機,但汽車、監視攝像頭、傢用電器及其控製器、醫藥設備,還有很多的基礎設施如空中交通管製和電網之類都屬於此。將能看見的所有設備都與因特網進行連接的這個趨勢將會持續,因為相互連接的好處令人無可抗拒。然而不幸的是,物聯網的嘗試存在很多風險,例如與更加成熟的係統相比,設備的安全性更加脆弱。
密碼學是應對這些隱患的有效抵抗策略之一,因為密報可以提供手段以保證通信和數據存儲的私密。然而強大的密報也經受著持續攻擊。個人、公司或恐怖分子可以擁有真正的私有通信,這個主意並不為政府所歡迎。因此,時常會有議案要求在密報機製中提供後門,這樣就可以允許政府機構在有著“適當安全保障”、僅僅“為瞭國傢安全”的前提下解除加密。然而,值得高度關注的一點是,這是個壞
普林斯頓計算機公開課 下載 mobi epub pdf txt 電子書