zoukankan      html  css  js  c++  java
  • 计算机理论基础

    1.什么是计算机?为何要有计算机?

      计算机就是人类的奴隶,取代人去干活,提高效率

    2、什么是编程语言?什么是程序?什么是编程?为何要编程?

      编程:让计算机用人的逻辑去思考,用编程语言翻译下来

      编程语言:计算机能听懂的语言

      程序:就是一堆代码文件

      为何编程:让计算机取代人去工作

    3.程序是计算机的灵魂,程序分为哪几类?

      1.操作系统:就是一个协调、管理、控制计算机硬件资源与应用软件资源的一个控制程序

      2.应用软件:为了某种特定的用途而被开发的软件。

    4.计算机体系结构图

    5.程序开发流程图

     

     1.需求分析阶段:

        PM产品经理调研市场,分析需求,画出原型草图,召集相关技术人员开需求分析会,明确需求。

      2.项目开发阶段

        2.1项目设计

          大家分头行动,UE与PM经常沟通,出交互原型图,UI根据原型图画出设计图,FE拿到设计图,理解需求设计前端,RD后端技术设计,QA设计测试用例,运维人员要设计好架构设计。

      2.2项目开发

        前后端确定开发项目整体结构,前端、程序、数据库之间的对接方式,定制开发规范、代码规范、源码管理、版本管理,然后分头开发。

      2.3项目测试
        开发人员进行code review,过一遍代码,审查一下,开发人员自测,改bug,QA专业测试,开发人员改bug

      2.4项目上线
        运维人员编写上线方案,测试

      2.5环境
        测试、staging、线上1:1

        PS:

          

          PM====》产品经理

          UE====》交互式设计师

          UI=====》视觉设计师

          FE====》前端设计

          RD====》后端设计

          QA====》测试人员

          OP====》运维人员

    什么是上线?通常在什么时间上线?上线失败的话怎么办?你们公司大概多久上线一次?

      1.实现产品价值,为用户提供服务。

      2.产品测试没有发现bug,即可上线。

      3.上线失败解决方案:小bug找开发人员修改,重大bug问题需要回滚到上一个版本。

      4.一到两周一个一个小版本,一个月一次大版本,期间不定个数bug修改版本

    6运维的三大职责

      1.优化网站,提升用户体验

      2.做好数据备份,保证数据安全

      3、保证服务器7X24小时不间断运行,不宕机,做好监控

    7.1u服务器代表什么?

      按照服务器的尺寸分类,1U=4.45cm

    8简述机架式服务器、刀片式服务器、塔式服务器、云主机、小型机

    机架式:

    外型类似抽屉,安装在标准机柜中,多为功能性服务器

    刀片:

    独立的卡式服务器单元,每个刀片就是一个系统,单片性能较低,成本高,适合用于集群服务器,热插拔维护时间小;(一种高可用、高密度服务器架构,是专门为特殊应用行业和高密度计算环境设计的,其中每一块刀片实际上就是一块系统母板,类似于一个独立的服务器。在这种模式下,每一个母板运行自己的系统,服务于指定的不同用户群,相互之间没有关联。不过可以使用系统软件将这些母板集合成一个服务器集群。)

    塔式:

    塔式服务器无需专用的机柜,噪音较小,适用于办公室等环境,像台式机一样,占用空间比较大。

    小型机:

    采用精简指令集CPU,高端定制,专用操作系统,高可靠、高可用、高服务性,价格昂贵,已经被淘汰;

    云主机:

    把底层硬件资源和网络资源虚拟化后,对外提供计算资源服务;

    什么是buffer与cache,它们各自的作用是什么?

        buffer:缓冲区,攒一大波数据,再刷入硬盘
        cache:缓存,把硬盘的数据在内存中缓存好,cpu取的时候可以直接从内存取

    什么是内核态与用户态?

        内核态——>操作系统正在控制硬件
        用户态-->应用程序正在运行

    9、简述你使用过的服务器品牌、尺寸、型号、配置信息

    戴尔:R720   2U 双路   16个SAS硬盘   32G  64 G

       1个CPU   4个核心   16G

    DELL 2U R720

    16核心32线程 主频2.0 E5-2650 *2个、

    32G内存、

    600GSAS硬盘*4块 

    DELL H710阵列卡

    512缓存+电池、单750W电源

    10.什么是去IOE运动?

      I---IBM服务器提供商

      O---Oracle数据库软件

      EMC--储存设备提供商

      用PC服务器代替IBM服务器,MYSQL代替Oracle,消除这三家企业对商用数据库市场的垄断,降低企业费用成本

    11简述计算机五大组成部分及作用

    控制器:是计算机的指挥系统,负责控制所有其他硬件的运行-------------》大脑
    运算器:负责数学运算与逻辑运算---------------------------------》大脑
    控制器+运算器=》cpu中央处理器

    存储器:存取数据
    内存:比如内存条----------------------------------------》大脑的记忆功能
    基于电存取数据,断电数据全部丢失
    用于临时保存数据,存取速度都快
    外存:比如磁盘------------------------------------------》本子
    基于磁存取数据,断电数据仍然存在
    用于永久保存数据,存取速度都慢
    输入设备
    键盘、鼠标
    输出设备
    显示器、打印机

    12什么是复杂指令集?什么是精简指令集?

       复杂指令集:用简单的指令去做复杂的事情

      精简指令集:用复杂的指令去做简单的事情

    13 X86-64代表的意思是什么?

       X86:是一种架构的统称

       64:一次性能从内从中读取64位二进制指令

    复杂指令集-64位架构(代码CPU每次读取64位二进制指令)

    14 4核8线程代表物理几核?逻辑几核心?

       物理4核心,逻辑上8核心

    15.什么是RAM?什么是ROM?

      RAM:随机存取储存器,又称主存(内存)

      ROM:只读储存器。

    16机械磁盘的IO延迟时间=xxx时间+xxx时间?一个7200转的硬盘带来的IO延迟大概是多少ms?

      平均寻道时间+平均延迟时间=机械磁盘IO延迟时间:9ms

    17什么是swap分区?它的作用是什么?

      虚拟内存,当物理内存不够用时,系统会把比较老的数据临时放到swap中,可以腾出一部分空间给应用程序使用

    18.简述操作系统启动流程

      1.计算机加电

      2,启动BIOS系统,扫描启动设备,从启动设备中找到操作系统

      3读取启动设备中第一个扇区的大小。

         446 bootloader==》grub程序

         64 分区信息

         2结束标志位

      4 grub程序负责将操作系统内核装载入内存,启动操作系统

      5操作系统会让BIOS检测驱动程序

    19.简述防止服务器的解决方案

      选双电源机房,配备ups设备,让电源接到ups设备上

      配备小型柴油发电机

    20简述硬盘类型与硬盘接口的组合以及应用场景?什么是冷数据?什么是热数据?

       SSD+SAS===》土豪,性能最好,价格昂贵

      SSD+SATA===》对读写速度有要求,常规

      机械硬盘+SAS=》对读写速度要求常规,比较核心业务使用

      机械硬盘+SATA=》个人PC,公司内部服务使用

      

      热数据:用户经常访问的数据

      冷数据:用户不经常访问的数据

    21.什么是硬raid?什么是软raid?那种效率高?

      硬raid:通过硬件来实现磁盘阵列

      软raid:通过软件来实现磁盘的阵列

      硬raid效率高

    22简述raid0、raid1、raid5、raid10的特点及应用场景?

      

     raid0
        至少1块盘
         
        容量:n块盘何在一起的总容量
        性能:理论上是N块盘合在在一起的读写速度,实际上是要略低一些
        冗余性:不允许坏任何一块盘
        场合:追求读写性能,但是对数据安全性没有啥要求,列如集群服务器
        特点:追求速度,不考虑数据安全
        
      raid1
        至少2块盘
        容量:1快盘的容量
        性能:几乎就是一块盘的读写速度
        冗余性:可以坏一块盘,另外一块盘有完整的数据
        场合:对数据安全有要求,对速度读写速度没有特殊要求,列如服务器的系统盘
        特点:追求数据安全,不考虑速度
     
      raid5(介于raid0和raid1之间,是一种折中的方案)
        至少3块盘,两两之间做校验===》异或运算,相同结果为0,不同结果为1
        容量:废掉一块盘的容量,等量盘的情况下,容量低于raid0
        性能:读写速度低于raid0,高于raid1
        冗余性:可以坏一块盘,其余两块盘可以通过奇偶校验推导出坏盘的数据
        场合:一般的场合都可以用
     
      raid10
        至少4块盘
        raid1和raid0之间整合的产物,兼顾了raid1和raid0的性能,但是成本大幅度提升
        通常用于数据库服务器

    23什么是IDRAC

      集成戴尔远程控制卡

    24.什么是操作系统

      控制计算机软件资源和计算机硬件的应用程序

    25什么是多用户多任务操作系统,什么是单用户多任务操作系统?

      多用户多任务:多个用户连接到同一终端执行多个任务

      单用户多任务:只有一个用户但是可以执行多个任务

    26、什么是多道技术

      时间上的复用:多道程序在运行前必须加载到内存中

      空间上的复用:CPU在多个程序之间来回切换

    简述批处理系统与分时操作系统以及什么叫多用户多任务

      1.批处理操作系统=》单用户单任务:一次把一个或者一道程序读入内存中,运行完毕后,在执行下一条程序,没有并发, 

      优点:充分利用了计算机资源

      缺点:1.整个过程是需要人参与的

         2.让程序员明显感觉到等待

         3.程序的运行是串行

      #串行:多个任务一个任务运行完毕后在运行下一个

      2.分时操作系统=>多用户多任务:应用多道技术来实现多个任务的并发的运行

        多道技术应用:操作系统

         1.空间上的复用:多道程序在运行前必须加载到内存中

         2.时间上的复用:多个任务复用CPU的时间片,通俗的讲就是CPU在程序之间来回切换

          多道技术任务之间的切换:

            I:当一个任务遇到IO是,肯定要切换=》提升效率

            II:当一个任务没有遇到IO时,但是它长时间占用CPU,有也要切换=》降低效率

      PS:

        多个进程在运行时内存空间是相互隔离的,而且是物理隔离。

        并发:多个任务看起来是同时运行的

        并行:真正意义上的同时运行,只有CPU才能实现并行

             6个核心只能并行6个任务,但是可以并发n个任务

      3.多用户多任务:多个连接终端连接操作系统,一个机器上可以运行多个任务。

    27、什么是进程?什么是线程?

      进程:操作系统控制硬件来运行的过程

      线程:程序内代码运行过程

      进程:程序读取到内存中运行的状态就进程,进程是资源单位;

      线程:进程下会起多个线程执行程序,线程是执行单位

     

    28、简述并发、并行、串行

      并发:看起来是多个任务在同时运行

      并发:真正意义上的多个任务在同时进行

      串行:当多个任务一个任务执行完在执行下一条

    29一个任务运行的三种状态是什么?以及三种状态会在什么情况下会彼此转换?

    运行态,就绪态,阻塞态

      就绪态抢到CPU资源时转换为运行态

      阻塞态在读写完IO后转换为就绪态

      运行态在进行IO操作时进入阻塞态

      运行态在失去CPU资源时进入就绪态

    30什么是GNU?什么是GPL?

      gnu:开源计划=》创建一套完全自由的操作系统。

       gpl:开源协议=》保证自由软件对所有用户是自由的。

    GNU计划:

    由理查德.斯托曼发起的自由软件运动,目的是创建一套完整自由的操作系统GNU;

    GPL协议:

    任何个人或公司可释放出自由软件

    任何释放出自由软件的个人或公司,均可由自己的服务来收取适当的费用

    该软件的原始代码需要随软件附上,并且是可公开发表的

    任何人可透过任何正常渠道获取得此自由软件,且均可取得此授权模式

    31 网络的构成与作用是什么?

    网络物理连接介质+网络通信协议

     数据之间的通信和传输

    作用:实现计算机资源共享,互相通信

    32 OSI七层每一层的作用以及数据的名字

    应用层    规定应用程序的数据格式   消息message

    表示层      数据处理和加密

    会话层      建立连接

    传输层    建立端口到端口的通信       数据段fragment

    网络层    使用网络地址来区分不同的域/子网  数据包packet

    数据链路层   定义了电信号的分组方式     数据帧frame

    物理层      基于电器特性发送电信号      数据位bit

     

    33、结合ARP协议原理详细描述两台同一LAN的计算机以及不同LAN的计算机的通信流程

    首先通过ip地址和子网掩码分析源IP与目标IP是否处于同一网络

    LAN:

    这个包会以广播的方式在LAN内发送,所有主机接收后拆包,发现目标ip为自己的,就响应,返回自己的mac,收到对方mac后即可建立连接进行通信

    不同LAN:

       这个包会附上目标IP,发送给交换机,再向外逐层发送,找到对方所在LAN,再由对方交换机广播发送,对方主机收到后,返回对方mac,收到后即可建立连接进行通信

    34、什么是socket

    socket是在应用层和传输层之间的一个抽象层,把TCO/IP层的操作简化为几个接口供应用层调用;

    35、dhcp的工作流程

    广播发送请求包,DHCP服务器收到后,分配好IP并发送“DHCP响应”数据包,计算机收到这个响应包,就知道了自己的IP地址、子网掩码、网关地址、DNS服务器等等参数

    36、什么是dns, 它的作用是什么?

    域名解析,把域名解析成IP

    37、简述dns的两种查询方式及过程

    递归:每次查询由现域名服务器向下一级域名服务器查询,最后逐级返回结果

    迭代:每次查询获得下一级服务器IP,再由本地服务器向下一个域名服务器查询

    38、结合dns的查询描述浏览器上网的完整通信流程

    解析域名的IP地址,本地缓存或域名服务器查询

    发起连接请求,TCP三次握手

    发送HTTP请求信息

    接受服务器返回的数据并渲染到页面

    断开TCP连接,四次挥手

    39、我们用浏览器上网需要用到dns解析, dns解析的优先级是什么? 如何清理谷歌浏览器缓存? 如何清理windows系统缓存?

    1、浏览器DNS缓存->本地系统DNS缓存->本地计算机HOSTS文件->ISP DNS缓存->递归or迭代搜索

    2、登录chrome://net-internals/,选择DNS,点击 clear host cache

    3、cmd=》ipconfig /flushdns 

  • 相关阅读:
    poj1220(短除法实现任意进制转换)
    poj1061(扩展欧基里德定理)
    快速乘+快速幂(用于模数超过int范围)
    poj3761(反序表)
    Educational Codeforces Round 64 -C(二分)
    牛客小白月赛13-H(单调栈+树状数组)
    poj3321(dfs序+树状数组)
    Codeforces Round #598 (Div. 3)E(dp路径转移)
    记忆化dp博弈
    2-sat
  • 原文地址:https://www.cnblogs.com/taoxiaoxin/p/13812308.html
Copyright © 2011-2022 走看看