什么是分布式操作系统?
-
回答一:分布式软件系统(Distributed Software
Systems),是支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式操作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。
分布式数据库系统是由若干个站集合而成。这些站又称为节点,它们在通讯网络中联接在一起,每个节点都是一个独立的数据库系统,它们都拥有各自的数据库、中央处理机、终端,以及各自的局部数据库管理系统。
因此分布式数据库系统可以看作是一系列集中式数据库系统的联合。它们在逻辑上属于同一系统,但在物理结构上是分布式的。
-
回答二:一种计算机硬件的配置方式和相应的功能配置方式。它是一种多处理器的计算机系统,各处理器通过互连网络构成统一的系统。系统采用分布式计算结构,即把原来系统内中央处理器处理的任务分散给相应的处理器,实现不同功能的各个处理器相互协调,共享系统的外设与软件。这样就加快了系统的处理速度,简化了主机的逻辑结构
软件工程的生命周期是什么?(看看就行,这是软工的题吧?)
- 软件生存周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。
什么是黑白盒测试?
什么是云计算,谈谈你的认识?
你最喜欢的一本书(偏向本专业的书)
本科期间,哪一门课程对你最有用?
本科期间,印象最深刻的课程是什么?
谈一谈你对软件工程的理解?(看看就行)
-
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。
它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用都促进了经济和社会的发展,也提高了工作和生活效率。数据库的死活锁?
-
1、活锁指的是任务或者执行者没有被阻塞,由于某些条件没有满足,导致一直重复尝试—失败—尝试—失败的过程。处于活锁的实体是在不断的改变状态,活锁有可能自行解开。
2、死锁是指两个或两个以上的线程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。
解决活锁:先来先服务
解决死锁:
预防:一次封锁法、顺序封锁法
诊断并解除:超时法、等待图法
Python的优缺点?
优点:
- Python的定位是“优雅”、“明确”、“简单”,所以Python程序看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
1、开发效率非常高————Python有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期,避免重复造轮子。
2、高级语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节
3、可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工
作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行
4、可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
5、可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
缺点
- 1、速度慢。
Python的运行速度相比C语言确实慢很多,比如你用C运一个程序花了0.1s,用Python是0.01s,这样C语言直接比Python快了0.09s。
2、代码不能加密。
因为PYTHON是解释性语言,它的源码都是以名文形式存放的。
3、线程不能利用多CPU问题
GIL即全局解释器锁(Global InterpreterLock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。
对计算机基础这门课的认识?
- 计算机基础这门课涵盖了大量的知识点,从计算机的基础知识开始,详细讲解了Windows操作系统、中文输入法、磁盘管理与维护、常用的Word、Excel和PowerPoint等办公软件的使用方法,并结合当前网络知识迅速普及的实际情况,对局域网、互联网、电子邮件等知识进行介绍,为全面地、系统地掌握计算机应用的知识和技能打下基础。
谈谈你知道的分布式数据库?
- 分布式数据库系统通常使用较小的计算机系统,每台计算机可单独放在一个地方,每台计算机中都可能有DBMS的一份完整拷贝副本,或者部分拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。
需求文档的必要性?(感觉看看就行)
-
1.作为文档形式输入,必须作为依据,版本迭代做出版本管理,
2.公司其他部门要求写,如:开发经理要求必须写,不然认为业务逻辑、功能没有整理清晰,会拒绝开发
3.对于评审的松懈,如果一个pm(产品经理)连业务逻辑都没弄明白,就进入开发中期,那是很痛苦的一件事,在后期的业务逻辑上出了问题,一定会ui界面设计师 ui交互设计师,甚至整个产品的架构都会发生变化,这只能说pm的失责,整个产品和项目只能折返式前进,pm可以再次理清业务,更好控制需求,形成正式文档
4.需求文档的完成一个开发里程碑的节点,为下一阶段起了决定意义,如:ui界面设计师介入开始设计阶段的时间点(正确的里程碑时间点),不然会出现产品对ui部门的矛盾,对于人力资源管理与团队建设起到很好作用
你以前有没有写过什么应用软件,你在一个项目中担任什么角色?
什么是图灵测试?
-
图灵测试指测试者与被测试者(一个人和一台机器)隔开的情况下,通过一些装置(如键盘)向被测试者随意提问。进行多次测试后,如果机器让平均每个参与者做出超过30%的误判,那么这台机器就通过了测试,并被认为具有人类智能。其中30%是图灵对2000年时的机器思考能力的一个预测,我们已远远落后于这个预测。
缘由:图灵提出了一种测试机器是不是具备人类智能的方法。即假设有一台电脑,其运算速度非常快、记忆容量和逻辑单元的数目也超过了人脑,而且还为这台电脑编写了许多智能化的程序,并提供了合适种类的大量数据,那么,是否就能说这台机器具有思维能力?简述tcp的三次握手过程
-
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
SYN:同步序列编号(Synchronize Sequence Numbers)
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手.
通俗的去理解: -
“喂,你听得到吗?”
-
“我听得到呀,你听得到我吗?”
-
“我听得到呀,你听得到我吗?”
-
“我能听到你”
tcp-ip的四层协议,哪儿四层?分别什么用?
人工智能是啥?怎么看待人工智能?
人工智能英文缩写为AI,它是研究、开发用于模拟、延伸和扩展人脑功能的一门新的技术。人工智能是计算机科学的一个分枝,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等等。它是对人的意识、思维的信息过程的模拟,人工智能不是人类智力,但是能像人类那样思考。