- 论坛徽章:
- 0
|
本帖最后由 crazyhadoop 于 2014-04-22 09:21 编辑
以前搞了好几年的监控程序和多平台程序开发,对系统编程有一些感想:
(1) api 差别
踩的坑多了,就开始留意标准 api 和系统 api的差别,以及便利性。比如:一开始你在linux下编程可能习惯
打开文件使用open调用,当你尝试在windows平台编译你的程序时,或许会发现open调用并不存在,而需要调用_open等操作。
最后,你会发现,某些时候,你只需要调用fopen,fread,fclose就能很好的处理这些问题。
(2) 多线程,多进程机制。
编写多线程/多进程程序,难免会涉及到系统层面的API,也就是系统编程,因此,要开发并行程序,就需要在系统编程方面学习不少知识。
(3) 多平台程序
接触多平台/多语言程序,就需要对不同平台,例如windows和linux上的程序运行环境,编译方法,运行库等进行深入了解,这也是学习系统编程的一个必然的途径。
(4) 内核/驱动开发
参与一些windows下驱动程序,linux内核/驱动程序的开发,逐渐就会对系统编程的方法,注意点和差别积累起来经验。
以上是个人的一些感想好建议。 |
评分
-
查看全部评分
|