计算机:我很佩服那些写一些非常好的小程序的人,特别是一些监测程序,如:ollyDbg等监测操作系统
还有一些监测计算机硬件的程序,请问他们是怎么做到的????我想学习这方面的知识,而不是单单只会用这些程序,请问该从哪里入手,有哪些书籍麻烦你推荐下。...
还有一些监测计算机硬件的程序,请问他们是怎么做到的????我想学习这方面的知识,而不是单单只会用这些程序,请问该从哪里入手,有哪些书籍麻烦你推荐下。
展开
2个回答
展开全部
看来你的目标不小喔。
这主要涉及操作系统以及基本的硬件知识。
OllyDbg不是什么检测软件吧,这是调试软件,这也不算小程序吧,这是目前Ring3级最优秀的调试软件。
想要与计算机硬件沟通,需要学习驱动开发方面的知识。
一些检测程序,需要学习基本的操作系统方面的知识,功能强大的仍需要使用驱动。
windows方面的嘛,就学习windows呗。
这条路很长,想要学透很不容易,你能学到个一半你就可以成为十分优秀的开发人员了,年薪自己想吧。但个人觉得就业方面会有所局限。
以上纯粹个人看法吧。
====================================================
下面说下你需要掌握的知识吧。
首先,你需要掌握一门或者多门编程语言,推荐C/C++,也可以选择delphi等其他的,但个人比较喜欢C/C++,比较高效。java是在虚拟机上面运行的,所以对于这些底层的检测软件不怎么可行。
好好打好基础,精通一门语言。
推荐:
C语言的《C程序设计》谭浩强著(入门书籍)、《C陷阱与缺陷》(进阶)、《C专家编程》(进阶)
C++的《C++ Primer》(入门)、《Thinking In C++》(进阶)……
学完上面之后,学习下《数据结构》吧,书就不推荐了,我们上课的时候用的是严蔚敏那本,但那本不怎么适合初学者,适合那种需要细细咀嚼的。
可以的话,学习下算法吧,推荐《算法导论》,这些都是练内功的,也许你觉得实用性不强,那是因为还没有体现出来,前面这些决定了以后你能走到多远。
接下来了解下操作系统吧,你写的这些监控软件多在windows下执行吧。
那就学习windows编程吧
绝对经典书籍《Windows程序设计》,《windows核心编程》(进阶)
也许你初次接触这两本书的时候,有点天荒夜谈的感觉,基本看不懂。不用怕,为了能接触到windows编程的领域,你可以先学习《VC++深入解析》孙鑫著,这个主要是有一个配套视频,入门容易一点,讲的是MFC框架。
MFC框架如果你想继续学习,可以看下《深入浅出MFC》侯捷著,《Inside MFC》之类的。
等你学习到这里的时候基本都已经知道怎么学习了。学好这里,你就可以出去外面找到程序员的工作了。
你想继续深入驱动开发或者计算机安全方面的,可以看下《驱动开发深入详解》,还有几本驱网的书,就不列出来了。
慢慢地,你想要继续提升,就学习操作系统吧,Linux是开源的操作系统,学习操作系统的话,学linux也许会好点,但前面讲的都是windows下的。所以这里推荐几本windows操作系统的书吧。《深入解析:Windows操作系统》这本是绝对的经典之作,微软给内部员工培训的时候用的就是这本,个人觉得这本是最适合的,潘爱民的也有写过其他的,也可以看看。
其实到驱动那层面上都已经不是很多书了,比较有深度,想要写好它不容易。
================================================================
其实你也没必要往这方面发展,这条路比较艰辛,你可以学习在一个平台下开发后,学习网络或者图像等方面的知识,这样走的就是另外一条路了。当然,你也可以学习移动开发,现在的热门,Java目前还是比较多方面应用到的。
纯粹个人看法,有些地方有所省略,当你进入到那个殿堂里面之后,你就会知道怎么学习了。如果你还比较小,建议打好基础,循序渐进,学好数学、英语,学好数据结构、算法。如果你已经不年轻了,只是好奇,想玩下,那么那些内功修炼方面的可以不用太在意。
这主要涉及操作系统以及基本的硬件知识。
OllyDbg不是什么检测软件吧,这是调试软件,这也不算小程序吧,这是目前Ring3级最优秀的调试软件。
想要与计算机硬件沟通,需要学习驱动开发方面的知识。
一些检测程序,需要学习基本的操作系统方面的知识,功能强大的仍需要使用驱动。
windows方面的嘛,就学习windows呗。
这条路很长,想要学透很不容易,你能学到个一半你就可以成为十分优秀的开发人员了,年薪自己想吧。但个人觉得就业方面会有所局限。
以上纯粹个人看法吧。
====================================================
下面说下你需要掌握的知识吧。
首先,你需要掌握一门或者多门编程语言,推荐C/C++,也可以选择delphi等其他的,但个人比较喜欢C/C++,比较高效。java是在虚拟机上面运行的,所以对于这些底层的检测软件不怎么可行。
好好打好基础,精通一门语言。
推荐:
C语言的《C程序设计》谭浩强著(入门书籍)、《C陷阱与缺陷》(进阶)、《C专家编程》(进阶)
C++的《C++ Primer》(入门)、《Thinking In C++》(进阶)……
学完上面之后,学习下《数据结构》吧,书就不推荐了,我们上课的时候用的是严蔚敏那本,但那本不怎么适合初学者,适合那种需要细细咀嚼的。
可以的话,学习下算法吧,推荐《算法导论》,这些都是练内功的,也许你觉得实用性不强,那是因为还没有体现出来,前面这些决定了以后你能走到多远。
接下来了解下操作系统吧,你写的这些监控软件多在windows下执行吧。
那就学习windows编程吧
绝对经典书籍《Windows程序设计》,《windows核心编程》(进阶)
也许你初次接触这两本书的时候,有点天荒夜谈的感觉,基本看不懂。不用怕,为了能接触到windows编程的领域,你可以先学习《VC++深入解析》孙鑫著,这个主要是有一个配套视频,入门容易一点,讲的是MFC框架。
MFC框架如果你想继续学习,可以看下《深入浅出MFC》侯捷著,《Inside MFC》之类的。
等你学习到这里的时候基本都已经知道怎么学习了。学好这里,你就可以出去外面找到程序员的工作了。
你想继续深入驱动开发或者计算机安全方面的,可以看下《驱动开发深入详解》,还有几本驱网的书,就不列出来了。
慢慢地,你想要继续提升,就学习操作系统吧,Linux是开源的操作系统,学习操作系统的话,学linux也许会好点,但前面讲的都是windows下的。所以这里推荐几本windows操作系统的书吧。《深入解析:Windows操作系统》这本是绝对的经典之作,微软给内部员工培训的时候用的就是这本,个人觉得这本是最适合的,潘爱民的也有写过其他的,也可以看看。
其实到驱动那层面上都已经不是很多书了,比较有深度,想要写好它不容易。
================================================================
其实你也没必要往这方面发展,这条路比较艰辛,你可以学习在一个平台下开发后,学习网络或者图像等方面的知识,这样走的就是另外一条路了。当然,你也可以学习移动开发,现在的热门,Java目前还是比较多方面应用到的。
纯粹个人看法,有些地方有所省略,当你进入到那个殿堂里面之后,你就会知道怎么学习了。如果你还比较小,建议打好基础,循序渐进,学好数学、英语,学好数据结构、算法。如果你已经不年轻了,只是好奇,想玩下,那么那些内功修炼方面的可以不用太在意。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询