logo资料库

2020 兴业数金Java笔试题.docx

第1页 / 共2页
第2页 / 共2页
资料共2页,全文预览结束
1.输入一个正整数计算输出距离他最近的对称数 2.计算机存储系统分为几个层次?你是如何理解分层存储的? 3.Java jdk 额外提供了那些的辅助工具?分别是什么作用? 4.关于 mysql 中的 innodb 引擎的理解 5.Java 重载的几种方式 6.Delete 和 truncate 的差别 7.什么是堆? 补充: 问答题 1、多线程同步和互斥有几种实现方法,都是什么? 线程同步是指线程之间所具有的一种制约关系,一个线程的执行依赖另外一个线程的 消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒。 线程互斥是指对于共享的进程系统资源,每个线程访问时的排他性。当有若干个线程 都要使用某一个共享资源时,任何时刻最多只允许一个线程去使用,其他线程必须等待,直 到占用资源者释放该资源。线程互斥可以看成是一种特殊的线程同步。 线程间的同步方法大体可以分为两类:用户模式和内核模式 1、用户模式:原子操作(例如一个单一的全局变量),临界区 2、内核模式:事件、信号量、互斥量 内核模式就是利用系统内核对象的单一性来进行同步,使用时需要切换内核态与用户态, 而用户模式就是不需要切换内核态,只在用户态完成操作 1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2、互斥量:为协调共同对一个共享资源的单独访问而设计的。 3、信号量:为控制一个具有有限数量用户资源而设计。 4、事件:用来通知线程有一些事件已发生,从而启动后继任务的开始。 2、当前计算机系统一般会采用层次结构存储数据,请介绍下典型计算机存储系统一般分为 哪几个层次,为什么采用分层存储数据能有效提高程序的执行效率? 答:所谓存储系统的层次结构,就是把各种不同存储容量,存取速度和价格的存储器按照层 次结构组成多层存储器,并通过管理软件和辅助硬件有机的组合成为一个整体,使所存放的 程序和数据按照层次分布在各种存储器中。目前,在计算机系统中通常采用三级层次结构来 构成存储系统,主要是由高速缓冲存储器 cache,主存储器,和辅助存储器组成。 存储系统多级层次结构中,由上向下分为三级,其容量逐渐增大,速度逐渐降低,成本则逐
次减少。整个结构又可以看成两个层次:他们分别是主存---辅存层次和 Cache---主存层次。 这个层次系统中的每一种存储器都不再是孤立的存储器,而是一个有机的整体。他们在辅助 硬件和计算机操作系统的管理下,可以把主存--辅存层次作为一个存储整体,形成的可寻存 储空间比主存储器空间大得多。由于辅存的容量大,价格低,是的存储系统的整体平均价格 低。由于 Cache 的存取速度可以和 cpu 的工作速度相媲美,所以 cache--主存层次可以缩小 主存和 cpu 之间的速度差距,从整体上提高存储器系统的存取速度。尽管 cache 成本高,但 是由于容量小,故不会使存储系统的整体价格增加。 综上所述,一个较大的存储系统是由各种不同类型的存储设备构成的,是一个具有多级层次 结构的存储系统。该系统既有与 cpu 相近的速度,又有极大的容量,而且成本较低。其中 高速缓存解决了存储系统的速度问题,辅助存储器则解决了系统的容量问题。采用多级层次 结构的存储器可以有效的解决存储器的速度,容量,价格之间的矛盾。 编程题 找出最接近的对称数字
分享到:
收藏