linux中进程的创建和切换以及可执行文件加载的研究
原创作品转载请注明出处 + https://github.com/mengning/linuxkernel/
作为一个程序员,除了要写好程序,还有个必须的技能就是要学会调试程序,也就是debug,很多IDE都内置UI调试程序功能,但是有的时候,一个c/cpp项目是部署在服务器端的,只有终端环境,这个时候要想在线上去快速定位一个紧急的bug,就需要我们在服务器环境进行调试定位解决问题。同时,我们平时在写代码的时候,如果遇到一些疑难杂症,也需要我们进行调试。所以调试技能是必备的。
所以自己把学习gdb调试的过程记录下来作为回顾,以ubuntu环境为学习环境。
最近做自己个人的一个项目,利用python和flask开发,在Ubuntu16.04上面部署,所以记录了部署的过程,整个过程利用的工具有:Flask,Nginx,Gunicorn,Supervisor,下面我会按顺序来一一介绍
从事IT行业的人,可能有一部分人不是科班出身,或者即使是科班出身,可能对计算机的一些基础理论知识掌握的不是很牢靠,目前国内的计算机学院的专业课程中最重要的就是这四门:计算机组成、操作系统、数据结构、计算机网络。这四门也是目前计算机考研所涉及的,很重要,也很基础,虽然现在很多软件开发人员在工作中都不涉及这些知识,但是对于大公司来说,要想深入技术领域产品的研发,这些知识是很重要的,所以对于打算一直走技术路线的人来说,职业生涯很有必要抽出时间进行学习。八个字:“巩固、充实、深入、探索”。下面是整理的一些思维导图。