操作系统,计算机网络,数据库刷题笔记9

操作系统,计算机网络,数据库刷题笔记9

2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开
测开的话,你就得学数据库,sql,oracle,尤其sql要学,当然,像很多金融企业、安全机构啥的,他们必须要用oracle数据库
这oracle比sql安全,强大多了,所以你需要学习,最重要的,你要是考网络警察公务员,这玩意你不会就别去报名了,耽误时间!
考网警特招必然要考操作系统,计算机网络,由于备考时间不长,你可能需要速成,我就想办法自学速成了,课程太长没法玩
刷题笔记系列文章:
【1】Oracle数据库:刷题错题本,数据库的各种概念
【2】操作系统,计算机网络,数据库刷题笔记2
【3】数据库、计算机网络,操作系统刷题笔记3
【4】数据库、计算机网络,操作系统刷题笔记4
【5】数据库、计算机网络,操作系统刷题笔记5
【6】数据库、计算机网络,操作系统刷题笔记6
【7】数据库、计算机网络,操作系统刷题笔记7
【8】数据库、计算机网络,操作系统刷题笔记8


将分区管理发展为分页管理的主要目的是()。提升吞度量和内存利用率

链接:https://www.nowcoder.com/questionTerminal/f086ea084b894d6a97076bd93519a198
来源:牛客网
在这里插入图片描述

分区,一般是固定分区和可变分区。

固定分区往往存在很难利用的内部碎片,而可变分区则会产生难以利用的外部碎片,
而操作系统则需要负责动态地使用紧凑和拼接技术调整程序的位置,从而达到利用空余内存的目的
而紧凑和拼接的过程降低了系统的吞吐量。

使用了分页技术后,则平均的页内碎片为半页,在页大小合理的情况下,是可以接受的,
因此一般分页技术下不使用紧凑和拼接技术,吞吐量提升了。

另外,内存被分为很小的页加以利用,内存的利用率也提升了。

这俩是主要目的
D 不是主要目的

malloc和new 都是在堆上请求内存空间的

在这里插入图片描述
链接:https://www.nowcoder.com/questionTerminal/0f7f3a7c5c704b67a884bfef620019db
来源:牛客网

malloc()是一个API,这个函数在库中封装了系统调用brk。

因此如果调用malloc,那么首先会引发brk系统调用执行的过程。

brk()在内核中对应的系统调用服务例程为SYSCALL_DEFINE1(brk, unsigned long, brk),
参数brk用来指定heap段新的结束地址,也就是重新指定mm_struct结构中的brk字段。
也就是在heap,也就是堆上分配内存。

不会引起指令流水线阻塞的是( )考察指令流水线的概念和解决方案

链接:https://www.nowcoder.com/questionTerminal/02826928b253436e90dadea1c06aa178
来源:牛客网
在这里插入图片描述

选D。数据旁路是解决流水线阻塞的方法。

指令流水线概述
一种将多条指令执行的过程相互重叠的实现技巧,是CPU可以通过并行执行多条指令来提高吞吐率。

流水线的三种冒险(阻塞)
——同一个部件同时被不同指令使用
——后面指令用到前面指令结果,但前面指令的结果还没有产生
——转移或异常改变指令流程,顺序执行指令在目标地址产生前已被取出

解决流水线冒险(阻塞)的方法
硬件阻塞(stall
软件插入“NOP”指令
转发(Forwarding)或旁路(ByPassing)技术
编译优化,调整指令顺序

固定分区不能全局置换

不懂哟

在这里插入图片描述
链接:https://www.nowcoder.com/questionTerminal/6f92e1d28cc647b8aefd6a8926c9f037
来源:牛客网

局部置换只置换本进程内的物理页面。

一个进程占用的物理页面总数是限定的,当需要置换时,即总数已经用完,新进来一个页面,本进程就需要出去一个老的页面。
所谓,朋友圈就那么大,有人进来自然需要有人出去。

但是需要注意的是,如果分配给你的总数还没用完,自然是不用置换的,那是最初的红利时期,竞争还不激烈,先到先得。

全局置换指的是进程缺页时,可能置换的是内存中所有可换出的物理页面。
即要换进的是A进程的页面,出去的可以是B进程的页面,因此分配给进程的页面总数是动态变化的。

这两种总的置换策略下有各自的方法:

局部置换:

最优算法
先进先出算法(有Belady异常)
Least Recently Used(最近最久未使用算法)
时钟算法
最不常用算法(Least Frequently Used)算法

全局置换:

工作集算法
缺页率算法
http://blog.csdn.net/u011240016/article/details/53128209

总之:固定分区不能全局置换

虚拟内存本来就是为了把所有的能用的存储空间都统一起来。所以,基于非连续分配技术看起来很适合。

在这里插入图片描述

而虚拟内存的容量是受到内外存容量和计算机地址位数限制的。
在这里插入图片描述
需要建立在离散分配的内存分配管理基础之上,就是说非连续分配技术

在这里插入图片描述
有笔,我可以算,现在没有笔

反正首先干A
然后干CDEB,最短时间的先走
就好说了
记住这些概念

关于IP报文头的TTL字段,以下说法正确的有( )(多选)

链接:https://www.nowcoder.com/questionTerminal/515fb5c88af848209d58108b0fd6f5ee
来源:牛客网

生存时间(TTL):长度8比特, 最大 值为255。
当IP包进行传送时,先会对该字段赋予某个特定的值【推荐为64】。
用来控制数据报在网络中存在的时间。

目前TTL的值并不代表时间,而是代表经由路由器的跳数。

数据报每经过一台路由器时,路由器将TTL值减1,
一旦TTL=0,系统就丢弃该数据报,并返回错误信息。
这样避免了路由出现环路时数据报在路由器之间无休止地循环。
在这里插入图片描述
在这里插入图片描述
当时学过TTL是8位,最大255

能使TTL减一的网络设备至少要有网络层的路由器但是不包括集线器Hub和交换机switch

如果在IP包到达目的IP之前,TTL减少为0,路由器将会丢弃收到的TTL=0的IP包
并向IP包的发送者发送 ICMP time exceeded消息。

TTL的主要作用是避免IP包在网络中的无限循环和收发,节省了网络资源,并能使IP包的发送者能收到告警消息。
【而不是浪费资源,这是必要的事情哦】

在这里插入图片描述
链接:https://www.nowcoder.com/questionTerminal/f911564524de40a69a6883efbfc19437
来源:牛客网

htons 把unsigned short类型从主机序转换到网络序
htonl 把unsigned long类型从主机序转换到网络序
host–network

ntohs 把unsigned short类型从网络序转换到主机序
ntohl 把unsigned long类型从网络序转换到主机序
WSANtohs() 将一个以网络字节顺序表示的无符号短整形数转换为主机字节顺序。
network–host

下列关于 IP 地址和域名的关系,说法错误的是(  )

在这里插入图片描述

一台主机通常只有一个IP地址是不对的
比如你现在正在用的笔记本,里面有两个网卡,一个有线网卡,一个无线网卡
你从有线切换到无线时,IP地址也变了。
A错误

通常一个主机,就一个域名

主机移动,ip和域名都可以不改
ip可以不变:若主机一般指的是以太网的IP,改变位置不需要修改IP,因为有DHCP自动分配,但是,IP本身还是变了,所以这里改不改不知道题目什么意思,若是服务器主机,通过桥接***甚至映射可能存在可以不改变的实现方法,毕竟是内网,随便映射,不冲突就行。

域名可以不变:服务器的域名可以在IP发生变化之后重新进行解析,将域名绑定到新的IP上。可以玩一下云服务器就理解这个说法了。

gg,这题目争议是很大的。

网络号=ip地址&子网掩码

在这里插入图片描述
121=64+32+16+8+1
01111001
248=128+64+32+16+8
255-248=7,421没有,其他都有
即11111000
所以
两个与之后=01111000
没有128,没有421
那就是248-128=120
所以选C

gg
这是很常规的题目哦
别搞错了

在这里插入图片描述
rollback

update,select,insert,操作语言DML

revoke,grant 数据库控制语言DCL

在这里插入图片描述

alter user hr identified by 123456
给hr用户密码修改为123456
grant create view to usr
给usr赋予创建试图的权限
grant select on hr.employees to usr
赋予访问hr.employees的权限

所以用户可以跨用户访问
B是对的,
D是一个条件,但还不够,你得 有查询的权限
在这里插入图片描述
DDL,create, alter,truncate,drop
DML,增删改,delete,insert,upgrade,query,select
DCL,授权,grant,revoke
TCL事务,commit savepoint rollback

所以CD都可以啊,为啥只有D
在这里插入图片描述
后来老师说了,CD都对,嘻嘻呵呵哈哈哈
在这里插入图片描述

在这里插入图片描述
连接条件就是部门id

select e.last_name,e.department_id,e.salary,d.department_name from employees e left outer join departments d on e.department_id = d.department_id

e表左,
d表右
不管有没有部门,左边的员工都得展示
这就是左外连接
如果是内连接,就只有交集

在这里插入图片描述在这里插入图片描述
F对的
在这里插入图片描述
查询每个部门——按照部门分组
的不同工种的数量,job去重哦
这波也容易
B对

select deptno,count(distinct job) from empno group by deptno;

统计有几个部门

select count(distinct deptno) from empno;
部门也得去重哦

如果是直接从部门id那种表里面,就可以不去重
因为部门不会重复哦

在这里插入图片描述在这里插入图片描述
没有雇员,没有部门都行
那就是全外连接

——内外连接的区别
内连接只是显示符合连接条件的东西
外连接,可以查询不符合连接条件的东西
在这里插入图片描述
在这里插入图片描述
本题就好说了,找full
在这里插入图片描述
在这里插入图片描述
感觉这题选B吧
人家是雇员,部门,都没有无所谓,都要展示,B对啊,不是C
在这里插入图片描述
在这里插入图片描述
删除表里面的某些数据的语法,可不是上面那样的

delete from table where...

delete后面不能放字段
delete只能一行所有字段的所有数据,而不是删除特定的几个字段,
你删除字段,是drop吧

SQL>  alter table dept drop(salary);

Table altered


SQL> desc dept;
Name   Type         Nullable Default Comments 
------ ------------ -------- ------- -------- 
DEPTNO NUMBER(2)    Y                         
DNAME  VARCHAR2(30) Y                         
LOC    VARCHAR2(13) Y  

你看这个,alter table dept drop(salary)删除薪水这个字段,可以用drop
但是你不能说我delete salary!!!
懂?
本题选C

在这里插入图片描述
执行顺序
我们讲过了很多次
sql的执行顺序

在这里插入图片描述
在这里插入图片描述
Martin同一天,他哪天下的?子查询
然后主查询是查所有人,在这一天下单的人
俩表还得连接

Martin同一天,他哪天下的?子查询

select c.ord_date from orders o,customers c where o.cust_id=c.cust_id and c.cust_name="Martin"

然后限定这个日期的条件,找题目需要的东西

select o.ord_id,o.cust_id,o.ord_total from orders o where o.ord_date=(select c.ord_date from orders o,customers c where o.cust_id=c.cust_id and c.cust_name="Martin")

在这里插入图片描述
我看C跟我写的一样,就它了

美滋滋

在这里插入图片描述

select a,count(b) group by a
a必须出现在分组那
b必须用组合函数处理

A order by必须放在最后哦

B的话,压根没有用聚合函数处理薪水
gg

C就可以,你可以不写a,没事
问题不大
在这里插入图片描述
D也对,可以给a,可以不给a

随意
在这里插入图片描述
在这里插入图片描述
全小写,CDE
substr从start开始截取几个,1?
不对
E:trim,去空格,去掉特定的字符

select trim('s' from 'str') from dual;
tr
只去首尾的那个字符
中间的不去

总结

提示:重要经验:

1)
2)学好oracle,操作系统,计算机网络,即使经济寒冬,整个测开offer绝对不是问题!同时也是你考公网络警察的必经之路。
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
"Labuladong"是一个著名的算法题解博主,他的刷题笔记非常受欢迎。他的笔记具有以下几个特点: 1. 思路清晰:Labuladong的刷题笔记总是能够很清晰地阐述解题思路。他善于将复杂的问题简化为易于理解的小问题,并通过逐步引入关键概念和方法,帮助读者理解并掌握解题思路。 2. 逻辑严谨:Labuladong的刷题笔记经过深思熟虑,逻辑严谨。他会从问题的定义开始,逐步引入相关的概念和解题思路,循序渐进地解决问题。这种严谨的逻辑结构有助于读者理解和消化算法的核心思想。 3. 举例详细:Labuladong的刷题笔记通常会通过具体的例子来说明解题思路。这种举例的方式不仅能够帮助读者更好地理解解题方法,还可以帮助读者更好地应用这些方法解决其他类似的问题。 4. 知识点整合:Labuladong的刷题笔记不仅仅是一个题解,而是将相关的算法知识点整合起来,构建出一个完整的学习体系。他会引入一些底层的算法原理,将不同的解题方法进行比较和总结。这种整合的方式能够帮助读者更好地理解和掌握算法的本质。 总之,Labuladong的刷题笔记以其思路清晰、逻辑严谨、举例详细和知识点整合等特点,为广大读者提供了一种深入学习和理解算法的有效途径。通过阅读他的刷题笔记并进行实践,读者能够提高解题能力,并在面对各种算法问题时能够找到正确、高效的解决方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰露可乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值