转眼3月还剩一天就过去,最近一周,如运维开发写作计划安排。主要回顾和复习开发前要掌握的一些计算机基础知识。包含计算机组成原理、网络、操作系统、数据结构和算法、数据库。这里还差一个硬件和安全基础知识没有回顾,硬件的话除非专业人士,一般开发确实接触较少,而安全个人认为也是综合了很多计算机基础,这块一般都需要单独拿出来了解一下。
那么今天就是简单的罗列下个人认知的硬件和安全基础知识,和大家共同学习。先说说硬件,硬件,除了前面计算机体系结构中提到的计算机硬件的基本组成部分,就是cpu、内存、输入输出设备以及通信方式。其余的就是每一个部分细分领域都有对应的行业和专业人才。涉及的行业也是很广泛,比如
电子元器件行业:不管啥高级计算机,也离不开基础的电子元器件,比如电阻、电容、晶体管、集成电路等。
计算机制造业,我们常用的主机、笔记本电脑、服务器、路由器等等。
半导体行业:半导体芯片制造、像处理器、内存芯片、各种传感器。
存储设备行业:用的机械以及固态硬盘、个人以及企业用的各种用途的存储设备。
显示器行业:有了键盘鼠标等输入设备还得有输出设备啊,不管是电脑还是手机都有大小显示屏、LED技术等等。
通讯设备制造行业:从有线到无线,都离不开基础的通信设备,我们用的各种路由器、交换机、信号发射器等等。
其余的应该就是结合软件的硬件制造:有嵌入式系统的设备、智能设备等等。
我所了解的有这些,所以一般说的程序员基本是软件类的开发,还有硬件开发工程师,会进行一些电路设计、PCB设计、嵌入式系统设计、驱动程序设计、FPGA设计、模拟以及射频电路涉及等等,所以说如果对硬件感兴趣,选择硬件行业的开发工程师也是不错的选择。之前有新闻报道的那些天才,基本都是精通硬件和软件的,做出一些自己的作品,惊艳了很多人。
再说说安全,为什么前面提到安全要单独拿出来一个系列说呢,因为安全几乎存在于从底层到高级应用的每一个环节中。想要做好安全,之前讲的基础知识都得掌握,现在安全行业也有细分领域,一般程序员接触的可能知识自己代码层面的安全知识,但如果都能有所掌握的话,对于从事安全是极为有益的。今天就来谈谈自己对于安全的皮毛认知,欢迎大家补充。
网络安全:就是说特定的网络避免未授权的访问、攻击以及滥用、网络拓扑结构、防火墙、入侵检测、网络安全策略
操作系统安全:避免计算机操作系统受恶意攻击、病毒、等影响,系统级的代码漏洞那损失是巨大的,涉及常见的访问控制、文件权限、安全补丁等
应用程序安全:包括桌面应用、web应用、app等,都会存在各种漏洞和错误、软件层面的安全、代码等等,涉及代码设计、漏洞扫描,一般我们知道的安全基本上是Web安全。Web安全又能细分很多。
数据库安全:数据库是存放数据的地方,很多系统的价值最高的部分,所以数据库安全也是重要的研究方向,高级的攻击者一定是个数据库方面的专家。
社会工程学:这以我理解就是利用人性弱点,通过各种诱惑、钓鱼、等等欺骗性手段获取攻击信息的一个研究领域。
加密学:这领域里一般都是学术研究的比较多,主要就是为了保护数据的安全,也是计算机安全里面的核心技术,常见的对称以及非对称加密算法,相信在大学里比如信息论等课程里面学过了。
而对于我们软件开发类的程序员来说,安全方面,注重了解下web应用安全即可,做好代码层面的安全。
所以除了硬件行业,安全行业也是个不错的选择,比如网络安全工程师、web安全工程师、移动应用安全工程师、云安全工程师等等职业,涉及金融、企业、政府等等。只可惜咱只懂点皮毛,就只能当兴趣爱好来学习了解了。
后面会专门写一个web应用安全的专题,从代码审计、web攻击类型、漏洞扫描工具、渗透测试、安全框架以及工具等方面展开学习,感兴趣的朋友可以关注一下。
今天咱就聊到这,明天也是三月最后一天,我们就最后一次串联起来复习一下计算机基础知识,有一个系统的大框架,为后续软件开发做好准备,也正好结束三月的学习计划,迎接四月啦!
感兴趣的同学可以后台留言或者回复硬件以及安全相关内容,获取相关的学习资料,喜欢的别忘了点赞关注呀。
END