成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

作為程序員,你必須了解這些關(guān)于計(jì)算機(jī)的知識(shí)

移動(dòng)開(kāi)發(fā)
作為一個(gè)程序員,除了編程能力之外,你還需要了解以下知識(shí)

[[130302]]

存儲(chǔ)—-塊設(shè)備,文件系統(tǒng),集群文件系統(tǒng),分布式文件系統(tǒng),光纖SCSI,iSCSI,RAID等。

網(wǎng)絡(luò)—-以太網(wǎng),光纖網(wǎng),蜂窩網(wǎng)絡(luò),WIFI,VLAN等。

計(jì)算機(jī)體系結(jié)構(gòu),主要就是CPU指令集。x86,ARM等。

USB協(xié)議。需要知道URB包。

PCI協(xié)議,PCI-E協(xié)議。現(xiàn)代計(jì)算機(jī)的外設(shè)都是PCI協(xié)議和PCI-E協(xié)議的。顯卡現(xiàn)在全是通過(guò) PCI-E協(xié)議連接到計(jì)算機(jī)上的。相對(duì)來(lái)說(shuō)減少了很多需要學(xué)習(xí)的知識(shí)。搞虛擬化就需要深入掌握PCI協(xié)議。

圖像處理–圖像壓縮,視頻實(shí)時(shí)編碼等。

3D游戲

關(guān)系數(shù)據(jù)庫(kù)

NoSQL數(shù)據(jù)庫(kù)

操作系統(tǒng)

分布式操作系統(tǒng)

編譯原理

機(jī)器學(xué)習(xí)–現(xiàn)在大數(shù)據(jù)要用哦!

了解這些領(lǐng)域知識(shí),也包括了解該領(lǐng)域現(xiàn)有的商用硬件、商用軟件和開(kāi)源軟件。很多時(shí)候,你要完成的工作,已經(jīng)有現(xiàn)成的工具了。你只要使用現(xiàn)成的工具就可以完成任務(wù),不需要進(jìn)行開(kāi)發(fā)。有時(shí)候,只需要組合現(xiàn)有的工具,寫(xiě)一些腳本就可以完成任務(wù)。

如,我一次要實(shí)現(xiàn)一個(gè)雙向同步任務(wù)。找到了一個(gè)優(yōu)秀的開(kāi)源軟件Unison,編寫(xiě)一下配置文件就圓滿(mǎn)地完成了任務(wù)。不需要編寫(xiě)任何代碼。

還有一次,要做高可用,用Python調(diào)用了幾個(gè)開(kāi)源軟件就輕松實(shí)現(xiàn)了。

編寫(xiě)安裝程序,定制操作系統(tǒng),知道了操作系統(tǒng)的領(lǐng)域知識(shí),寫(xiě)幾行腳本就可以輕松搞定。

不具備領(lǐng)域知識(shí)的人,就可能不得不進(jìn)行大量無(wú)謂的開(kāi)發(fā),甚至開(kāi)發(fā)很久之后才發(fā)現(xiàn),這根本就是一條死路。

另外,扎實(shí)的領(lǐng)域知識(shí),可以大大提高編程調(diào)試、查錯(cuò)的能力。知道編譯器和編程語(yǔ)言運(yùn)行時(shí)工作原理,就能快速根據(jù)編譯錯(cuò)誤和警告信息修改代碼。

知道操作系統(tǒng)底層運(yùn)行機(jī)制,就能快速找到運(yùn)行時(shí)錯(cuò)誤的問(wèn)題根源。如,有一次我編寫(xiě)一個(gè)windows升級(jí)服務(wù)程序。它是一個(gè)windows服務(wù),需要執(zhí)行dos腳本,這個(gè)腳本會(huì)替換掉這個(gè)windows服務(wù)本身。發(fā)現(xiàn)有時(shí)腳本執(zhí)行無(wú)效,查了一晚上,發(fā)現(xiàn)當(dāng)windows服務(wù)安裝后,***次啟動(dòng)就執(zhí)行腳本時(shí)就會(huì)有權(quán)限問(wèn)題,log都正確,但實(shí)際執(zhí)行這個(gè)腳本沒(méi)有任何效果。但一旦windows服務(wù)程序啟動(dòng)一次之后就ok。這必然是windows操作系統(tǒng)底層安全機(jī)制的問(wèn)題,因?yàn)槲覍?duì)Windows內(nèi)核了解不多,因此花了很長(zhǎng)時(shí)間才發(fā)現(xiàn)這個(gè)問(wèn)題,并對(duì)造成這個(gè)問(wèn)題的根源并不清楚。

0段—領(lǐng)域知識(shí)菜鳥(niǎo)

對(duì)領(lǐng)域知識(shí)沒(méi)有多少認(rèn)知,通過(guò)搜索引擎找到一些該領(lǐng)域的軟件和硬件的介紹性文章,按照文章指示配置和使用軟件。勉強(qiáng)能夠使用現(xiàn)有軟硬件。

1段—領(lǐng)域知識(shí)行家

了解領(lǐng)域內(nèi)常用硬件,深入掌握領(lǐng)域內(nèi)常用軟件的配置和使用技巧。能夠使用現(xiàn)有軟硬件熟練搭建解決方案,能夠解決實(shí)際工作中遇到的種種問(wèn)題。

2段—領(lǐng)域知識(shí)專(zhuān)家

當(dāng)你不僅僅掌握了該領(lǐng)域的軟件和工具,知道怎么用,還知道其原理,“知其然,也知其所以然”,就是該領(lǐng)域的知識(shí)專(zhuān)家了。

你知道網(wǎng)絡(luò)協(xié)議的原理,你才能在網(wǎng)絡(luò)出現(xiàn)問(wèn)題時(shí)知道是哪里可能出現(xiàn)了問(wèn)題。是mac沖突,ip沖突,還是網(wǎng)絡(luò)環(huán)路?

你知道存儲(chǔ)的原理,你才能知道為什么這種存儲(chǔ)方式不適合虛擬化,那種存儲(chǔ)方式適合虛擬化,另一種方式適合資料備份。

你知道PCI協(xié)議,你才能知道你怎樣才能虛擬化一個(gè)硬件設(shè)備。

你知道網(wǎng)卡硬件協(xié)議,你才能模擬出一個(gè)虛擬機(jī)能正常使用的虛擬網(wǎng)卡。

你知道視頻編碼格式和原理,才能知道什么視頻格式占用帶寬最少,什么視頻格式占用CPU最少。

你了解IntelVT/Amd V指令集,才能知道虛擬化是怎樣實(shí)現(xiàn)的。

你明白工作流其實(shí)就是狀態(tài)機(jī),在遇到復(fù)雜工作流程時(shí),你才能知道怎樣設(shè)計(jì)滿(mǎn)足要求的工作流引擎。

3段—科學(xué)家

你是領(lǐng)域知識(shí)專(zhuān)家,但你的知識(shí)都是來(lái)自于書(shū)本,來(lái)自于其他人的。

如果你滿(mǎn)足于當(dāng)領(lǐng)域知識(shí)專(zhuān)家,你只能拾人牙慧,永遠(yuǎn)別想超越。別人的研究成果,未必愿意告訴你。當(dāng)別人告訴你的時(shí)候,它可能已經(jīng)發(fā)現(xiàn)了更新的理論,并且新一代產(chǎn)品可能馬上就要發(fā)布了。

科學(xué)家是探索未知,勇于創(chuàng)新的人,是推動(dòng)人類(lèi)社會(huì)進(jìn)步的人。

傳說(shuō),思科的一位高管曾經(jīng)半開(kāi)玩笑地說(shuō)過(guò):“如果思科停止了新技術(shù)的研發(fā),華為就會(huì)找不著方向”。這是在嘲笑華為只是處在領(lǐng)域知識(shí)專(zhuān)家的水平,只能山寨無(wú)法超越。我不知道華為的實(shí)際情況,但希望現(xiàn)在的華為已經(jīng)走到了領(lǐng)跑者的位置。

歐文·雅各布斯發(fā)現(xiàn)了CDMA碼分多址的原理,并發(fā)現(xiàn)它在通訊上大有可為,組建了高通公司。高通公司主要以專(zhuān)利授權(quán)費(fèi)為生,它雇傭了大量科學(xué)家在通訊領(lǐng)域展開(kāi)研究。有人說(shuō)高通是專(zhuān)利流氓。這些人不明白知識(shí)的價(jià)值。在他們眼里,Windows的合理價(jià)格就應(yīng)該是5元錢(qián),一張光盤(pán)的價(jià)格。iPhone就應(yīng)該是1000多元裸機(jī)的價(jià)格。高通是專(zhuān)利流氓,那你也流氓一個(gè)CDMA,LTE出來(lái)給我看看!

X86芯片在設(shè)計(jì)上沒(méi)有考慮虛擬化。因此會(huì)有所謂的“虛擬化漏洞”出現(xiàn)。就是說(shuō),一些CPU特權(quán)指令執(zhí)行時(shí),在虛擬機(jī)環(huán)境下不會(huì)拋出異常,因此就無(wú)法切換到Host。這樣,X86芯片上就無(wú)法運(yùn)行虛擬機(jī)。

VmWare公司是由美國(guó)的幾位科學(xué)家在1998年創(chuàng)建的。他們發(fā)現(xiàn)可以使用二進(jìn)制翻譯的技術(shù),在X86計(jì)算機(jī)上運(yùn)行虛擬機(jī)。

Xen虛擬化軟件也是幾位科學(xué)家發(fā)明的。他們發(fā)現(xiàn)只要修改虛擬機(jī)操作系統(tǒng)和Host操作系統(tǒng)的內(nèi)核,在需要執(zhí)行“虛擬化漏洞”指令時(shí)直接調(diào)用Host的功能,就可以實(shí)現(xiàn)虛擬化,而且大大提高了虛擬機(jī)的運(yùn)行性能。

后來(lái),Intel為自己的芯片添加了IntelVT指令集,Amd為自己的芯片添加了AmdV指令集,彌補(bǔ)了“虛擬化漏洞”。于是就有了KVM虛擬機(jī)軟件,它直接用CPU硬件指令實(shí)現(xiàn)虛擬化。

KVM在執(zhí)行CPU指令時(shí),是直接在物理CPU上運(yùn)行的,因此效率極高。但是,虛擬機(jī)運(yùn)行虛擬外設(shè)時(shí),就必須用軟件模擬,因此虛擬機(jī)的IO訪(fǎng)問(wèn)速度很慢。

IBM科學(xué)家RustyRussell,借鑒了Xen的研發(fā)經(jīng)驗(yàn),創(chuàng)建了VirtIO技術(shù)。就是在虛擬機(jī)中編寫(xiě)一套PCI虛擬設(shè)備和驅(qū)動(dòng),這套虛擬PCI設(shè)備有一塊虛擬設(shè)備內(nèi)存。這個(gè)虛擬設(shè)備內(nèi)存Host是可以訪(fǎng)問(wèn)的,虛擬機(jī)通過(guò)VirtIO驅(qū)動(dòng)程序也可以訪(fǎng)問(wèn)。也就是一塊內(nèi)存在虛擬機(jī)和Host中共享,這就解決了虛擬機(jī)的IO性能問(wèn)題。

再講一個(gè)搜索引擎的故事:

很久以前,我要給一個(gè)程序添加搜索功能。剛開(kāi)始使用sql查詢(xún)實(shí)現(xiàn),發(fā)現(xiàn)實(shí)在太慢了。后來(lái)找了開(kāi)源的Lucene項(xiàng)目。它使用反向索引技術(shù),通過(guò)在文件中創(chuàng)建反向索引,大大提高了搜索速度。

Google的兩位創(chuàng)始人發(fā)現(xiàn)了html中l(wèi)ink的秘密,他們發(fā)現(xiàn)可以通過(guò)html頁(yè)面的link關(guān)系來(lái)為每一個(gè)html頁(yè)面設(shè)置權(quán)重。也就是PageRank算法。于是,Google的自動(dòng)搜索引擎擊敗了Yahoo人工分類(lèi)的搜索引擎。

OK,利用反向索引技術(shù)和PageRank,以及一個(gè)簡(jiǎn)單的html爬蟲(chóng)機(jī)器人,我們就可以創(chuàng)建一個(gè)搜索引擎了。但是,互聯(lián)網(wǎng)很大,每天產(chǎn)生大量新網(wǎng)頁(yè),要為整個(gè)互聯(lián)網(wǎng)建立反向索引是很困難的。

若干年后Google又公開(kāi)了三篇論文:Googlefs、Mapreduce、Bigtable。于是Lucene項(xiàng)目的開(kāi)發(fā)者根據(jù)Google的Mapreduce論文開(kāi)發(fā)了Hadoop項(xiàng)目。MapReduce就是使用大量計(jì)算機(jī)存儲(chǔ)數(shù)據(jù)并計(jì)算,***匯總結(jié)果。使用Hadoop+反向索引+PageRank,就可以創(chuàng)建搜索引擎了。Yahoo,Baidu等公司紛紛基于Hadoop開(kāi)發(fā)了自己的搜索引擎。

但是,其他公司的搜索引擎效果還是沒(méi)法和Google相比。這一點(diǎn)我們程序員最清楚。像我,就總是翻薔出去,只為了Google一下。

Google黑板報(bào)上發(fā)表了吳軍博士的一些文章,其中介紹了很多機(jī)器學(xué)習(xí)方面的知識(shí)。從文中可以知道,Google其實(shí)使用機(jī)器學(xué)習(xí)來(lái)分析搜集到的頁(yè)面。Google明顯不會(huì)把這個(gè)公式公開(kāi)出來(lái)。即使有一天Google真的公開(kāi)了這個(gè)公式,那么可以想見(jiàn)Google肯定又研發(fā)出了更加犀利的秘籍,山寨貨的搜索引擎效果還是比不上Google的。

山寨是通向創(chuàng)新的必由之路。在成為領(lǐng)域的領(lǐng)頭羊和***之前,必然要經(jīng)過(guò)學(xué)習(xí),模仿的階段。但要成為行業(yè)的老大,成為Champion,必須勇于彎道超車(chē),勇敢地走上創(chuàng)新之路,成為真正的科學(xué)家,真正的大牛!

總結(jié)

編程能力可分為兩個(gè)維度:一個(gè)是編程技能水平,另一個(gè)是領(lǐng)域知識(shí)水平。

有些程序員可能把精力都花在提升編程技能上了,領(lǐng)域知識(shí)知之甚少,這其實(shí)在日常工作中也是極其有害的。有些需求可能早已經(jīng)有了現(xiàn)成、開(kāi)源免費(fèi)的解決方案,或者只需要組合幾個(gè)現(xiàn)有軟件就可以快速搞定,而他們卻不得不自己花大量時(shí)間去開(kāi)發(fā)。另外,缺少領(lǐng)域知識(shí),在程序出現(xiàn)非預(yù)期狀況時(shí),很難快速定位到問(wèn)題的根源,很難解決bug。

責(zé)任編輯:chenqingxiang 來(lái)源: 程序師
相關(guān)推薦

2018-11-26 09:21:56

2020-03-27 09:24:39

程序員技能開(kāi)發(fā)者

2009-06-15 10:43:45

Java程序員Java程序GC

2019-11-18 10:06:44

程序員CDN靜態(tài)資源

2011-05-11 09:42:27

程序員

2017-07-14 15:40:28

2019-07-08 15:05:09

Python程序員編程語(yǔ)言

2021-02-24 09:26:03

JavaGC程序員

2021-01-04 08:37:53

動(dòng)態(tài)規(guī)劃DP

2021-04-27 22:27:19

手機(jī)安卓蘋(píng)果

2019-07-25 07:42:35

程序員編程語(yǔ)言Python

2014-06-24 10:24:53

程序員笑話(huà)

2010-12-20 09:26:44

SQL索引

2015-09-11 09:35:35

CPU

2012-04-09 09:42:56

2024-03-20 17:35:42

2015-03-19 10:15:54

程序員價(jià)值程序員價(jià)值

2012-01-11 09:12:25

程序員

2009-04-17 16:08:07

程序員職場(chǎng)軟件人才

2024-04-10 12:36:41

硬件代碼
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲欧美国产精品一区二区 | 97综合在线 | 欧美日韩亚洲系列 | 欧美精品黄 | 欧美三级三级三级爽爽爽 | 久久精品亚洲国产 | 国产精品久久久久久久久久三级 | 天色综合网 | 在线免费中文字幕 | 久久国产一区二区三区 | 在线免费观看a级片 | 国产成人a亚洲精品 | 久久综合99| 亚洲网站在线观看 | 免费一级黄色录像 | 亚洲精品久久久久avwww潮水 | 欧美乱淫视频 | 四虎在线观看 | 久久天堂网| 日本特黄a级高清免费大片 特黄色一级毛片 | 国产福利资源在线 | 91精品中文字幕一区二区三区 | 亚洲精品视频免费 | 国产成人99久久亚洲综合精品 | 亚洲狠狠爱 | 亚洲综合无码一区二区 | 孕妇一级毛片 | 国产精品欧美大片 | 久久精品一 | 免费成人在线网站 | 免费欧美| 成人欧美一区二区三区1314 | 蜜桃免费一区二区三区 | 久久婷婷国产麻豆91 | 国产精品美女久久久av超清 | 国产在线精品一区二区三区 | 男人天堂手机在线视频 | 天天插天天搞 | 欧美一级二级在线观看 | 一级黄色片日本 | 91电影院 |