入职学习(1)--一个程序员的成长史(21)

简介: 看到邹总发的邮件之后,唐师傅马上在公司的内部即时通讯工具zQQ上给代是雄发了一个消息,问他对于计算机的基础知识掌握得怎样。

看到邹总发的邮件之后,唐师傅马上在公司的内部即时通讯工具zQQ上给代是雄发了一个消息,问他对于计算机的基础知识掌握得怎样。zQQ是Z公司开发的一个类似于QQ这样的专门用于内部沟通的工具,最开始的时候,代是雄觉得有点奇怪:为什么公司不直接让员工用QQ进行沟通呢?后来,代是雄才了解到,公司这样做的目的是为了“信息安全”。在我大天朝的很多软件公司里有着种种奇葩的规定,不准员工在工作电脑上安装QQ、微信、微博等即时通讯工具便是其中一项。之所以有此规定,是因为公司怕员工在上班的时候将程序代码、设计文档、专利等发送出去了,从而对公司的业务造成影响。了解到这些之后,代是雄在心中默念到:不准员工用QQ的公司不是好公司。

对于唐师傅的这个问题,代是雄真不知道怎么回答才好。也许是发现了自己刚才那个问题比较的抽象,唐师傅换了一种询问方式,叫代是雄回答下面三个问题:

问题一:简述一下计算机的硬件组成及其关键部件。
问题二:简述一下操作系统及其功能。
问题三:简述一下线程及其作用。

对于上面三个问题,唐师傅让代是雄根据自己所了解的进行回答,不要到书上或网上去查资料。

看到这几个问题之后,代是雄便开始琢磨了,自己虽然读了一个计算机专业的研究生,但实际上并不是科班出身的,并没有专门上过有关计算机组成和操作系统相关的课程,也就是大四保研之后到图书馆里面借了几本书来大致看了一下。对于书中的内容,到现在也基本上都忘光了。但是,唐师傅已经问到了,代是雄也不可能不回答。于是,他只能凭借自己有限的记忆来回答这几个问题了。

代是雄并没有急着将自己所知道的零零散散的东西直接在zQQ上发给唐师傅,而是在自己的电脑上新建了一个word文档,等将自己的思路理清楚之后,再把最终的文档发给唐师傅。

经过多番思考及多轮的心理挣扎之后,对于上面几个问题,代是雄给出了自己的回答:

问题一的回答
一个完整的计算机是由硬件部分和软件部分组成的。计算机的硬件有五大组成部件:运算器、控制器、存储器、输入设备和输出设备;其中运算器和控制器合起来组成了中央处理器(CPU),输入设备和输出设备通常合在一起被称作输入输出(I/O)设备。

计算机硬件中的关键部件有三个:中央处理器(CPU)、存储器和输入输出(I/O)设备。

问题二的回答
操作系统(Operating System,简称OS)也是一种计算机程序,它用于管理和控制计算机硬件与软件资源,任何其它软件都必须在操作系统的支持下才能够运行。

操作系统的功能非常的复杂,包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持等。简单地说,操作系统有两个主要的功能,一个是提供抽象的接口,另外一个是管理硬件资源。

问题三的回答
线程,有时被称为轻量级进程(LWP),是程序执行流的最小单位;一个标准的线程由线程ID、当前指令指针(PC)、寄存器集合和堆栈组成。

一个进程由一个到多个线程组成,各个线程之间共享程序的内存空间(包括代码段、数据段、堆等)及一些进程级的资源(如打开文件和信号)。

在很多程序中,都要使用多线程,其原因有以下几点:

1)某个操作可能会陷入长时间等待,等待的线程会进入睡眠状态,无法继续执行,多线程执行可以有效利用等待的时间。

2)某个操作会消耗大量的时间,如果只有一个线程,程序和用户之间的交互会中断。

3)程序逻辑本身就要求并发操作。

4)多CPU或多核计算机,本身具备同时执行多个线程的能力。

5)相对于多进程应用,多线程在数据共享方面效率要高很多。

线程的主要作用是提高程序的执行效率,合理使用本来就很稀缺的计算机资源。

简单回答了唐师傅提出的几个问题之后,代是雄将答案都放在了word文档中,并按照毕业论文的格式排好了版,然后发给了唐师傅。在工作中,每个人不光是要准备好答案,还要注意让别人阅读起来比较的方便,这也算是一个人的一种素质吧。很多职场中人可能见过身边有很多牛人虽然脑子里懂的东西很多,但就是不能简单明了地表达他们的想法,这也影响了他们的职业发展。
读了代是雄的答复之后,唐师傅回答了一个“还不错”。代是雄也不知道他的这个不错是什么意思,师傅之心如海底针啊!

那么,接下来,唐师傅会为代是雄制定什么样的学习计划呢?

目录
相关文章
|
11月前
|
设计模式 人工智能 缓存
🚗我毕业/转行了,怎么适应我的第一份开发工作?
你是怎么从一个什么都不懂的小萌新变成现在的大佬模样的呢?我最近一直在回顾自己的职业生涯,思考自己在这几年里做了什么、成为了什么,实现了什么,失去了什么。希望可以给你带来帮助。
57 0
|
消息中间件 移动开发 安全
移动开发者升职加薪的8项技能,写给正在求职的安卓开发
移动开发者升职加薪的8项技能,写给正在求职的安卓开发
移动开发者升职加薪的8项技能,写给正在求职的安卓开发
|
架构师 Java 程序员
程序员迷茫:毕业时就已26,工作4年就已大龄,码农出路在哪?
为什么很多公司不招大龄码农,这个问题最近很沸腾,初看这个问题时扎心了,终有一天,我们都会成为大龄码农,那么首先定义下大龄码农,一般认为是35岁以上。按现在推算是1983年(含1983)前出身的。有很多还在一线开发,有些已经是中高层管理人员了。
2283 0
|
人工智能 程序员
为什么都瞧不起培训班出来的程序员?
​ 来源:CSDN程序人生 培训机构出来的程序员怎么了? 不怎么,就是容易招偏见! 某培训机构毕业的程序员大雄,和同班同学,一起伪造学历和经验,被HR发现后,全部被开除了。 而我在北京某大型培训机构(以下简称“五洲”,当然这个只是一个代称,事实上没有这个机构名称)工作的15个月,亲眼见证了,一个个高中生甚至初中生,如何经过12个月的培训,“速成”为月薪N万的西二旗码农。
|
算法 Java 应用服务中间件
java开发,入职半年。对未来迷茫,如何发展?
工作三年多,就个人方面而言,很多的工作都是面试造核弹,工作拧螺丝。但是不要因为自己是个拧螺丝的就不学哪些难啃的技术。当项目出问题的时候,就是考验技术沉淀的时候。
1236 0
|
机器学习/深度学习 架构师 Java
每位程序员都应该有危机感,高薪不会从天而降!
30岁现象人人都明白,但要给出一个定义并不容易。列举几个表现,也许你会觉得心有戚戚焉。 面临职业瓶颈,程序写不动,上升又困难。 薪水较高,加班变少,后浪追前浪,面临失业压力;生活压力剧增,不敢跳槽; 招聘程序员年龄限制在30岁以下成为行业潜规则,跳槽困难。
1684 0
|
前端开发 程序员
招聘本科程序员好,还是专科有经验的程序员?网友答案很现实!
大家可能已经发现,最近几年来的各种招聘,很多岗位都要求本科以上学历,小型的创业互联网公司艰苦的工作岗位,才有部分专科岗位 。这对于专科生来说,看下面这位HR的经历着实郁闷,怎么破? 网友评论: 也...
1199 0
|
程序员
程序员是金饭碗?培训班出身没人要,不造假就没工作?
作为一名想从事开发工作的学员,首先应该将“钱”摆在一遍,将兴趣提到首位,有兴趣自然好,没兴趣就应该培养兴趣,摆正心态,才能学有所成。
8020 0