Hadoop面试题 内容参考_第1页
Hadoop面试题 内容参考_第2页
免费预览已结束,剩余14页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.Hadoop集群可以运行的3个模式?单机(本地)模式伪分布式模式全分布式模式2. 单机(本地)模式中的注意点?在单机模式(standalone)中不会存在守护进程,所有东西都运行在一个JVM上。这里同样没有DFS,使用的是本地文件系统。单机模式适用于开发过程中运行MapReduce程序,这也是最少使用的一个模式。3. 伪分布模式中的注意点?伪分布式(Pseudo)适用于开发和测试环境,在这个模式中,所有守护进程都在同一台机器上运行。4. VM是否可以称为Pseudo?不是,两个事物,同时Pseudo只针对Hadoop。5. 全分布模式又有什么注意点?全分布模式通常被用于生产环境,这里我们使用N台主机组成一个Hadoop集群,Hadoop守护进程运行在每台主机之上。这里会存在Namenode运行的主机,Datanode运行的主机,以及task tracker运行的主机。在分布式环境下,主节点和从节点会分开。6. Hadoop是否遵循UNIX模式?是的,在UNIX用例下,Hadoop还拥有“conf”目录。7. Hadoop安装在什么目录下?Cloudera和Apache使用相同的目录结构,Hadoop被安装在cd/usr/lib/hadoop-0.20/。8. Namenode、Job tracker和task tracker的端口号是?Namenode,70;Job tracker,30;Task tracker,60。9. Hadoop的核心配置是什么?Hadoop的核心配置通过两个xml文件来完成:1,hadoop-default.xml;2,hadoop-site.xml。这些文件都使用xml格式,因此每个xml中都有一些属性,包括名称和值,但是当下这些文件都已不复存在。10. 那当下又该如何配置?Hadoop现在拥有3个配置文件:1,core-site.xml;2,hdfs-site.xml;3,mapred-site.xml。这些文件都保存在conf/子目录下。11. RAM的溢出因子是?溢出因子(Spill factor)是临时文件中储存文件的大小,也就是Hadoop-temp目录。12. fs.mapr.working.dir只是单一的目录?fs.mapr.working.dir只是一个目录。13. hdfs-site.xml的3个主要属性?.dir决定的是元数据存储的路径以及DFS的存储方式(磁盘或是远端)dfs.data.dir决定的是数据存储的路径fs.checkpoint.dir用于第二Namenode14. 如何退出输入模式?退出输入的方式有:1,按ESC;2,键入:q(如果你没有输入任何当下)或者键入:wq(如果你已经输入当下),并且按下Enter。15. 当你输入hadoopfsck /造成“connection refused java exception”时,系统究竟发生了什么?这意味着Namenode没有运行在你的VM之上。16. 我们使用Ubuntu及Cloudera,那么我们该去哪里下载Hadoop,或者是默认就与Ubuntu一起安装?这个属于Hadoop的默认配置,你必须从Cloudera或者Edureka的dropbox下载,然后在你的系统上运行。当然,你也可以自己配置,但是你需要一个Linux box,Ubuntu或者是Red Hat。在Cloudera网站或者是Edureka的Dropbox中有安装步骤。17. “jps”命令的用处?这个命令可以检查Namenode、Datanode、Task Tracker、 Job Tracker是否正常工作。18. 如何重启Namenode?点击stop-all.sh,再点击start-all.sh。键入sudo hdfs(Enter),su-hdfs (Enter),/etc/init.d/ha(Enter),及/etc/init.d/hadoop-0.20-namenode start(Enter)。19. Fsck的全名?全名是:File System Check。20. 如何检查Namenode是否正常运行?如果要检查Namenode是否正常工作,使用命令/etc/init.d/hadoop-0.20-namenode status或者就是简单的jps。21. mapred.job.tracker命令的作用?可以让你知道哪个节点是Job Tracker。22. /etc /init.d命令的作用是?/etc /init.d说明了守护进程(服务)的位置或状态,其实是LINUX特性,和Hadoop关系不大。23. 如何在浏览器中查找Namenode?如果你确实需要在浏览器中查找Namenode,你不再需要localhost:8021,Namenode的端口号是50070。24. 如何从SU转到Cloudera?从SU转到Cloudera只需要键入exit。25. 启动和关闭命令会用到哪些文件?Slaves及Masters。26. Slaves由什么组成?Slaves由主机的列表组成,每台1行,用于说明数据节点。27. Masters由什么组成?Masters同样是主机的列表组成,每台一行,用于说明第二Namenode服务器。28. hadoop-env.sh是用于做什么的?hadoop-env.sh提供了Hadoop中. JAVA_HOME的运行环境。29. Master文件是否提供了多个入口?是的你可以拥有多个Master文件接口。30. Hadoop-env.sh文件当下的位置?hadoop-env.sh现在位于conf。31. 在Hadoop_PID_DIR中,PID代表了什么?PID代表了“Process ID”。32. /var/hadoop/pids用于做什么?/var/hadoop/pids用来存储PID。33. perties文件的作用是?perties被用做“Reporting”,控制Hadoop报告,初始状态是“not to report”。34. Hadoop需求什么样的网络?Hadoop核心使用Shell(SSH)来驱动从节点上的服务器进程,并在主节点和从节点之间使用password-less SSH连接。35. 全分布式环境下为什么需求password-less SSH?这主要因为集群中通信过于频繁,Job Tracker需要尽可能快的给Task Tracker发布任务。36. 这会导致安全问题吗?完全不用担心。Hadoop集群是完全隔离的,通常情况下无法从互联网进行操作。与众不同的配置,因此我们完全不需要在意这种级别的安全漏洞,比如说通过互联网侵入等等。Hadoop为机器之间的连接提供了一个相对安全的方式。37. SSH工作的端口号是?SSH工作的端口号是NO.22,当然可以通过它来配置,22是默认的端口号。38. SSH中的注意点还包括?SSH只是个安全的shell通信,可以把它当做NO.22上的一种协议,只需要配置一个密码就可以安全的访问。39. 为什么SSH本地主机需要密码?在SSH中使用密码主要是增加安全性,在某些情况下也根本不会设置密码通信。40. 如果在SSH中添加key,是否还需要设置密码?是的,即使在SSH中添加了key,还是需要设置密码。41. 假如Namenode中没有数据会怎么样?没有数据的Namenode就不能称之为Namenode,通常情况下,Namenode肯定会有数据。42. 当Job Tracker宕掉时,Namenode会发生什么?当Job Tracker失败时,集群仍然可以正常工作,只要Namenode没问题。43. 是客户端还是Namenode决定输入的分片?这并不是客户端决定的,在配置文件中以及决定分片细则。44. 是否可以自行搭建Hadoop集群?是的,只要对Hadoop环境足够熟悉,你完全可以这么做。45. 是否可以在Windows上运行Hadoop?你最好不要这么做,Red Hat Linux或者是Ubuntu才是Hadoop的最佳操作系统。在Hadoop安装中,Windows通常不会被使用,因为会出现各种各样的问题。因此,Windows绝对不是Hadoop的推荐系统。Hadoop就业面试宝典 1.0 简要描述如何安装配置apache的一个开源hadoop,只描述即可,无需列出具体步骤, 列出具体步骤更好。 答:1使用root账户登录 2 修改IP 3 修改host主机名 4 配置SSH免密码登录 5 关闭防火墙 6 安装JDK 7 解压hadoop安装包 8 配置hadoop的核心文件 hadoop-env.sh,core-site.xml , mapred-site.xml , hdfs-site.xml 9 配置hadoop环境变量 10 格式化 hadoop namenode-format 11 启动节点 start-all.sh 2.0 请;列出正常的hadoop集群中hadoop都分别需要启动 哪些进程,他们的作用分别都是什么,请尽量列的详细一些。 答:namenode:管理集群,存储数据的原信息,并管理记录datanode中的文件信息。 Secondname:可以做冷备,对一定范围内数据做快照性备份。 Datanode:存储数据 Jobtracker :管理任务,并将任务分配给 tasktracker。 Tasktracker: 执行JobTracker分配的任务。 3.0请写出以下的shell命令 (1)杀死一个job (2)删除hdfs上的 /tmp/aaa目录 (3) 加入一个新的存储节点和删除一个节点需要执行的命令 答:(1)hadoop job list 得到job的id,然后执 行 hadoop job -kill jobId就可以杀死一个指定jobId的job工作了。 (2)hadoop fs -rmr /tmp/aaa (3) 增加一个新的节点在新的几点上执行 Hadoop daemon.sh start datanode Hadooop daemon.sh start tasktracker 然后在主节点中执行 hadoop dfsadmin -refreshnodes 删除一个节点的时候,只需要在主节点执行 hadoop mradmin -refreshnodes 4.0 请列出你所知道的hadoop调度器,并简要说明其工作方法 答:Fifo schedular :默认,先进先出的原则 Capacity schedular :计算能力调度器,选择占用最小、优先级高的先执行,依此类推。 Fair schedular:公平调度,所有的 job 具有相同的资源。 5.0 请列出你在工作中使用过的开发mapreduce的语言 答:java,hive 6.0 当前日志采样格式为 a , b , c , d b , b , f , e a , a , c , f 请你用最熟悉的语言编写mapreduce,计算第四列每个元素出现的个数 Static final String 答: public class WordCount1 public static final String INPUT_PATH = hdfs:/hadoop0:9000/in; public static final String OUT_PATH = hdfs:/hadoop0:9000/out; public static void main(String args) throws Exception Configuration conf = new Configuration(); FileSystem fileSystem = FileSystem.get(conf); if(fileSystem.exists(new Path(OUT_PATH) fileSystem.delete(new Path(OUT_PATH),true); Job job = new Job(conf,WordCount1.class.getSimpleName(); /1.0读取文件,解析成key,value对 FileInputFormat.setInputPaths(job,new Path(INPUT_PATH); /2.0写上自己的逻辑,对输入的可以,value进行处理,转换成新的key,value对进行输出 job.setMapperClass(MyMapper.class); job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(LongWritable.class); /3.0对输出后的数据进行分区 /4.0对分区后的数据进行排序,分组,相同key的value放到一个集合中 /5.0对分组后的数据进行规约 /6.0对通过网络将map输出的数据拷贝到reduce节点 /7.0 写上自己的reduce函数逻辑,对map输出的数据进行处理 job.setReducerClass(MyReducer.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(LongWritable.class); FileOutputFormat.setOutputPath(job, new Path(OUT_PATH); job.waitForCompletion(true); static class MyMapper extends Mapper Override protected void map(LongWritable k1, Text v1, org.apache.hadoop.mapreduce.Mapper.Context context) throws IOException, InterruptedException String split = v1.toString().split(t); for(String words :split) context.write(split3, 1); static class MyReducer extends Reducer protected void reduce(Text k2, Iterable v2, org.apache.hadoop.mapreduce.Reducer.Context context) throws IOException, InterruptedException Long count = 0L; for(LongWritable time : v2) count += time.get(); context.write(v2, new LongWritable(count); 7.0 你认为用java , streaming , pipe方式开发map/reduce , 各有哪些优点 就用过 java 和 hiveQL。 Java 写 mapreduce 可以实现复杂的逻辑,如果需求简单,则显得繁琐。 HiveQL 基本都是针对 hive 中的表数据进行编写,但对复杂的逻辑很难进行实现。写 起来简单。 8.0 hive有哪些方式保存元数据,各有哪些优点 三种:内存数据库 derby,挺小,不常用 。 本地 mysql。常用 远程端 mysql。不常用 上网上找了下专业名称:single user mode.multi user mode.remote user mode 9.0 请简述hadoop怎样实现二级排序 第一种方法是,Reducer将给定key的所有值都缓存起来,然后对它们再做一个Reducer内排序。但是,由于Reducer需要保存给定key的所有值,可能会导致出现内存耗尽的错误。 第二种方法是,将值的一部分或整个值加入原始key,生成一个合成key。这两种方法各有优势,第一种方法可能会更快一些(但有内存耗尽的危险),第二种方法则是将排序的任务交给MapReduce框架,更符合Hadoop/Reduce的设计思想。这篇文章里选择的是第二种。我们将编写一个Partitioner,确保拥有相同key(原始key,不包括添加的部分)的所有数据被发往同一个Reducer,还将编写一个Comparator,以便数据到达Reducer后即按原始key分组。 10.简述hadoop实现jion的几种方法 利用dataJoin来实现mapreduce的jion问题。 11.0 请用java实现非递归二分查询 1. public class BinarySearchClass 2. 3. 4. public static int binary_search(int array, int value) 5. 6. int beginIndex = 0;/ 低位下标 7. int endIndex = array.length - 1;/ 高位下标 8. int midIndex = -1; 9. while (beginIndex = endIndex) 10. midIndex = beginIndex + (endIndex - beginIndex) / 2;/防止溢出 11. if (value = arraymidIndex) 12. return midIndex; 13. else if (value TextInputFormat - RecordReader - LineRecordReader - LineReader 5、 参考下列M/R系统的场景:hdfs块大小为64MB,输入类为FileInputFormat,有3个文件的大小分别为64KB, 65MB, 127MB Hadoop框架会把这些文件拆分为多少块? 5块 6、 hadoop中RecordReader的作用是什么? RecorderReader是一个接口,主要是用来读取文件的输入键值对的,我们也可以自定义输入的key,value对的读取规则 7、 Map阶段结束后,Hadoop框架会处理:Partitioning, Shuffle和Sort,在这个阶段都发生了什么? Partition是对输出的key,value进行分区,可以自定义分区,按照业务需求,将map的输出归分到多个不同的文件中 将map的输出作为输入传给reducer 称为shuffle sort是排序的过程,将map的输出,作为reduce的输入之前,我们可以自定义排序,按照key来对map的输出进行排序 8、 如果没有定义partitioner,那数据在被送达reducer前是如何被分区的? hadoop有一个默认的分区类,HashPartioer类,通过对输入的k2去hash值来确认map输出的k2,v2送到哪一个reduce中去执行。 9、 什么是combiner? combiner就是规约操作,通过对map输出的数量进行规约,可以减少reduce的数量,提高执行效率 combiner的输入输出类型必须和mapper的输出以及reducer的输入类型一致 10、分别举例什么情况要使用 combiner,什么情况不使用? 求平均数的时候就不需要用combiner,因为不会减少reduce执行数量。在其他的时候,可以依据情况,使用combiner, 来减少map的输出数量,减少拷贝到reduce的文件,从而减轻reduce的压力,节省网络开销,提升执行效率 11、Hadoop中job和tasks之间的区别是什么? 首先通过jobTracker接收到了用户的操作请求之后,就会产生job任务,job然后将任务分配给tasks分配给多个机器去并行的 执行,通过将job任务分解为多个tasks任务并行的执行,提高了执行的效率。 12、hadoop中通过拆分任务到多个节点运行来实现并行计算,但某些节点运行较慢会拖慢整个任务的运行,hadoop采用全程机制应对这个情况? 对于那些较慢的tasks任务,hadoop 13、流API中的什么特性带来可以使map/reduce任务可以以不同语言(如perl, ruby, awk等)实现的灵活性? 14、有可能使hadoop任务输出到多个目录中吗?如果可以,怎么做? 可以,hadoop 15、如何为一个hadoop任务设置mappers的数量? 1 map的数量 map的数量通常是由hadoop集群的DFS块大小确定的,也就是输入文件的总块数,正常的map数量的并行规模大致是每一个Node是10100个,对于CPU消耗较小的作业可以设置Map数量为300个左右,但是由于hadoop的没一个任务在初始化时需要一定的时间,因此比较合理的情况是每个map执行的时间至少超过1分钟。具体的数据分片是这样的,InputFormat在默认情况下会根据hadoop集群的DFS块大小进行分片,每一个分片会由一个map任务来进行处理,当然用户还是可以通过参数mapred.min.split.size参数在作业提交客户端进行自定义设置。还有一个重要参数就是mapred.map.tasks,这个参数设置的map数量仅仅是一个提示,只有当InputFormat 决定了map任务的个数比mapred.map.tasks值小时才起作用。同样,Map任务的个数也能通过使用JobConf 的conf.setNumMapTasks(int num)方法来手动地设置。这个方法能够用来增加map任务的个数,但是不能设定任务的个数小于Hadoop系统通过分割输入数据得到的值。当然为了提高集群的并发效率,可以设置一个默认的map数量,当用户的map数量较小或者比本身自动分割的值还小时可以使用一个相对交大的默认值,从而提高整体hadoop集群的效率。 16、如何为一个hadoop任务设置要创建reduder的数量? 2 reduece的数量 reduce在运行时往往需要从相关map端复制数据到reduce节点来处理,因此相比于map任务。reduce节点资源是相对比较缺少的,同时相对运行较慢,正确的reduce任务的个数应该是0.95或者1.75 *(节点数 mapred.tasktracker.tasks.maximum参数值)。如果任务数是节点个数的0.95倍,那么所有的reduce任务能够在 map任务的输出传输结束后同时开始运行。如果任务数是节点个数的1.75倍,那么高速的节点会在完成他们第一批reduce任务计算之后开始计算第二批 reduce任务,这样的情况更有利于负载均衡。同时需要注意增加reduce的数量虽然会增加系统的资源开销,但是可以改善负载匀衡,降低任务失败带来的负面影响。同样,Reduce任务也能够与 map任务一样,通过设定JobConf 的conf.setNumReduceTasks(int num)方法来增加任务个数。 xxx信息技术有限公司 1、你们的集群规模? 开发集群:10台(8台可用)8核cpu 2、你们的数据是用什么导入到数据库的?导入到什么数据库? 处理之前的导入:通过hadoop命令导入到hdfs文件系统 处理完成之后的导出:利用hive处理完成之后的数据,通过sqoop导出到mysql数据库中,以供报表层使用 3、你们业务数据量多大?有多少行数据?(面试了三家,都问这个问题) 开发时使用的是部分数据,不是全量数据,有将近一亿行(8、9千万,具体不详,一般开发中也没人会特别关心这个问题) 4、你们处理数据是直接读数据库的数据还是读文本数据? 将日志数据导入到hdfs之后进行处理 5、你们写hive的hql语句,大概有多少条? 不清楚,我自己写的时候也没有做过统计 6、你们提交的job任务大概有多少个?这些job执行完大概用多少时间?(面试了三家,都问这个问题) 没统计过,加上测试的,会与很多 7、hive跟hbase的区别是? 这个可以百度 8、你在项目中主要的工作任务是? 利用hive分析数据 9、你在项目中遇到了哪些难题,是怎么解决的? 某些任务执行时间过长,且失败率过高,检查日志后发现没有执行完就失败,原因出在hadoop的job的timeout过短(相对于集群的能力来说),设置长一点即可 10、你自己写过udf函数么?写了哪些? 这个我没有写过 11、你的项目提交到job的时候数据量有多大?(面试了三家,都问这个问题) 不清楚是要问什么 12、reduce后输出的数据量有多大? 不清楚 1.一个网络商城1天大概产生多少G的日志? 2.大概有多少条日志记录(在不清洗的情况下)? 3.日访问量大概有多少个? 4.注册数大概多少? 5.我们的日志是不是除了apache的访问日志是不是还有其他的日志? 6.假设我们有其他的日志是不是可以对这个日志有其他的业务分析?这些业务分析都有什么(*) 1.问:你们的服务器有多少台? 2.问:你们服务器的内存多大? 3.问:你们的服务器怎么分布的?(这里说地理位置分布,最好也从机架方面也谈谈) 4.问:你平常在公司都干些什么(一些建议) 下面是HBASE我非常不懂的地方: 1.hbase怎么预分区? 2.hbase怎么给web前台提供接口来访问(HTABLE可以提供对HTABLE的访问,但是怎么查询同一条记录的多个版本数据)? 3.htable API有没有线程安全问题,在程序中是单例还是多例? 4.我们的hbase大概在公司业务中(主要是网上商城)大概都几个表,几个表簇,大概都存什么样的数据? 5.hbase的并发问题? 1、将现有逻辑在Spark上面实现。2、数据倾斜怎么处理? 数据倾斜有很多解决方案,本例子简要介绍一种实现方式,假设表A 和表B连接,表A 数据倾斜,只有一个key倾斜,首先对A进行采样,统计出最倾斜的key,将A 表分隔为A1 只有倾斜 key, A2 不包含倾斜key, 然后分别与 表B 连接。 最后将结果合并, union3 、各完成一个awk和sed的例子,最简单的应用即可,并说明。 cat /etc/passwd |awk -F : print $1 读取文件,指定文本分隔符,然后打印第一个域 cat test.sh | sed 2,50d 读取文件的每一行,然后对每一行进行处理后打印在控制台, 有很多模式,很多方法。还可以直接修改文件4、简要描述你知道的数据挖掘算法和使用场景(一)基于分类模型的案例 ( 1)垃圾邮件的判别 通常会采用朴素贝叶斯的方法进行判别 (2)医学上的肿瘤判断 通过分类模型识别 (二)基于预测模型的案例 (1)红酒品质的判断 分类回归树模型进行预测和判断红酒的品质 ( 2)搜索引擎的搜索量和股价波动(三)基于关联分析的案例:沃尔玛的啤酒尿布(四)基于聚类分析的案例:零售客户细分(五)基于异常值分析的案例:支付中的交易欺诈侦测(六)基于协同过滤的案例:电商猜你喜欢和推荐引擎(七)基于社会网络分析的案例:电信中的种子客户(八)基于文本分析的案例(1)字符识别:扫描王APP(2)文学著作与统计:红楼梦归属5、列举你知道的常用的Hadoop管理和监控的命令、比如hdfs dfs -mkdir /usr -ls -cat -text -cp -put -chmod -chown -du -get -copyFromLocal -copyToLocal -mv -rm - tail -chgrp6、评述hadoop运行原理 站在高处,大的方面讲解 1、有hdfs 负责数据存放 是Hadoop的分布式文件存储系统将大文件分解为多个Block,每个Block保存多个副本。提供容错机制,副本丢失或者宕机时自动恢复。默认每个Block保存3个副本,64M为1个Block。将Block按照key-value映射到内存当中。 2、有mapreduce负责计算,Map(映射)和Reduce(归约) 7、讲述mapreduce的原理ApplicationMaster 是一个详细的框架库,它结合从 ResourceManager 获得的资源和 NodeManager 协同工作来运行和监控任务。ResourceManager 支持分层级的应用队列,这些队列享有集群一定比例的资源。从某种意义上讲它就是一个纯粹的调度器,ApplicationMaster 的职责有:向调度器索要适当的资源容器,运行任务,跟踪应用程序的状态和监控它们的进程,处理任务的失败原因。输入分片(input split)map阶段:combiner阶段:8、JVM&垃圾回收机制三个代:年轻代(Young Generation)、年老代(Old Generation)和持久代(Permanent Generation)。9、找出公共好友:/lucius/p/3483494.html/thread-18826-1-1.html 原理:A 有好友 B ,C,D F 有好友 D E F 其实A 的好友也是他好友的好友 其实F 的好友也是他的好友的好友 那么D 的共同好友就是 A F 10、combiner作用 Combiner最基本是实现本地key的聚合,对map输出的key排序、value进行迭代。 Combiner还有本地reduce功能(其本质上就是一个reduce): 使用Combiner先完成在map端的本地聚合,可以减少网络传输数据量,提高性能。 平均数的归约算法不能多次调用。11、在mr环节中,那些环节需要优化,如何优化,请详细说明。 1、 setNumReduceTasks 适当的设置reduce的数量,如果数据量比较大,那么可以增加reduce的数量 2、适当的时候使用 combine 函数,减少网络传输数据量 3、压缩map和reduce的输出数据 4、使用SequenceFile二进制文件。 5、通过application 的ui页面观察job的运行参数 6、太多小文件,造成map任务过多的问题,应该可以先合并小文件,或者有一个特定的map作为处理小文件的输入 7、map端效率低原因分析源文件的大小远小于HDFS的块的大小。这意味着任务的开启和停止要耗费更多的时间,就没有足够的时间来读取并处理输入数据。源文件无法分块。这导致需要通过网络IO从其他节点读取文件块。一个节点的本地磁盘或磁盘控制器运行在降级模式中,读取写入性能都很差。这会影响某个节点,而不是全部节点。源文件不来自于HDFS。则可能是Hadoop节点和数据源之间的延迟导致了性能低下。Map任务从其他数据节点读取数据。可以从JobTracker的map任务细节信息和任务运行尝试中找到输入块的位置。如果输入块的位置不是任务执行的节点,那就不是本地数据了。技术33 Reduce实例不足或过多技术34 诊断reduce段的数据倾斜的问题技术35 确定reduce任务是否存在整体吞吐量过低技术36 缓慢的洗牌(shuffle)和排序技术37 作业竞争和调度器限制1.查找硬件的失效CPU竞争3 内存交换4 磁

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论