近期的面试问题

glm-4v-9b环境配置全攻略:从CUDA版本冲突到bitsandbytes异常排查(RTX A4000实测) 本文详细介绍了在RTX A4000显卡上配置GLM-4V-9B多模态大模型的完整流程,重点解决CUDA版本冲突和bitsandbytes异常问题。通过4-bit量化技术显著降低显存占用,提供从环境预检到量化部署的实战指南,帮助开发者在有限显存环境下高效运行大模型。 阅读详情

1.为什么要三次握手

TCP是一个面向连接的协议,所谓面向连接就是指通信双方任何一方向对方发送数据前,

必须将建立安全通道,就像打电话一样,必须要等到对方的手机响铃,并且对方接听电话时,才能与对方通信。


三次握手过程:

(1)第一次握手:建立连接时,客户端发送SYN包(假设序列号seq = x)给服务器,并进入SYN_SEND状态,等到服务器的确认;

(2)第二次握手:服务器收到SYN包之后,必须确认客户端,所以就要发送ACK包(ack = x+1),同时服务器还必须发送SYN包(seq = y),等客户端的确认,此时服务器进入SYN_RECV状态。

(3)第三次握手:客户端接收到SYN+ACK包后,向服务器发送确认包ACK(y+1),该发送完毕,此时客户端与服务器进入ESTABLISHED,两者就可以进行数据交换了,完成三次握手。


四次挥手过程:

(1)第一次挥手:客户端发送数据完毕后,发送一个FIN,提出断开连接要求。

(2)第二次挥手:服务器收到该FIN包后,对其作出响应,发送一个ACK包,确认这一方向的连接将关闭。CLOSE_WAIT/FIN_WAIT_1

(3)第三次挥手:等服务器的应用程序做好关闭准备时,服务器反向发送一个FIN包给客户端,请求关闭连接请求。LAST_ACK/FIN_WAIT_2

 (4)第四次挥手:客户机对服务器发送的请求进行确认,并发送ACK包 TIME_WAIT


2.为什么需要TIME_WAIT?

最后一次主机Host1发送的ACK可能丢失导致HOST2重新发送FIN消息,TIME_WAIT维护连接状态

另外,TIME_WAIT为连接中“离群的段“提供从网络中消失的时间。


3.同步与异步,阻塞与非阻塞的区别?

同步:是指在发出一个功能调用时,在没用得到结果之前,该调用就不返回,

也就是必须一件一件事做等前一件做完了才能做下一件事情。

异步:和同步相对,当一个异步过程调用发出后,调用者不能立即得到结果,

实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。

阻塞:阻塞调用时指调用结果返回之前,当前线程会被挂起。函数只有得到结果后

才会返回。

非阻塞:和阻塞是相对的,指在不能立即得到结果之前,该函数不会阻塞当前线程,

而会立即返回。

1. 同步,就是我调用一个功能,该功能没有结束前,我死等结果。
2. 异步,就是我调用一个功能,不需要知道该功能结果,该功能有结果后通知我(回调通知)


3. 阻塞,      就是调用我(函数),我(函数)没有接收完数据或者没有得到结果之前,我不会返回。
4. 非阻塞,  就是调用我(函数),我(函数)立即返回,通过select通知调用者

同步IO和异步IO的区别在于:数据拷贝的时候,进程是否阻塞;

阻塞IO和非阻塞IO的区别在于:应用程序的调用是否立即返回。


4. select, poll和epoll的区别?

select的缺点:

(1)单个进程可监视的fd数量被限制,即能监听的端口大小有限。

(2)多socket进行扫描是线性扫描,即采用轮询的方法,效率低下。

(3)需要维护一个用来存放大量fd的数据结构,这样会使得用户空间和内核空间传递

该结构时复制开销大。

 poll:

poll和select没有本质的区别,它将用户传入的数组拷贝到内核空间,然后查询每个fd对应的设备状态。

如果设备就绪则在设备等队列中加入一项并继续遍历,如果遍历完所有fd后,没有发现就绪设备,则挂起

当前进程,直到设备就绪或主动超时,被唤醒后它又要再遍历fd。

poll的缺点:

大量的fd数组被整体复制于用户态和内核地址空间之间。

没有最大连接数限制。


epoll_create

epoll_ctl

epoll_wait


epoll的优点:

1. 没有最大并发连接的限制

2. 效率提升,不是采用轮询方式。

3. 内存拷贝,利用mmap文件映射内存加速与内核空间的消息传递。


五,什么是数据库索引?

索引是一种提高数据库查询速度的机制,它是一个在数据库的表或视图上按照某个关键字段值,升序或降序排序创建的对象。

用户查询索引字段是,它可以快速地执行检索操作。


索引的类型有:聚集索引和非聚集索引


提高性能:

(1)通过创建唯一索引,可以保证数据库表中每一行数据的唯一性;

(2)通过索引,可以大大加快数据的检索速度;

(3)通过索引可以加速表和表之间的连接,从而有效实现数据的参考完整性;


建立索引注意:

(1)创建索引和维护索引要耗费时间,空间。

(2)每个索引需要占用一定的物理空间。

(3)对表中数据进行增加,删除和修改,索引也要动态地维护,从而降低了数据的维护速度。


六,MySql中的存储引擎

MyISAM索引实现:

(1)使用B+树作为索引结构,叶子节点的data域存放的数据记录的地址。

(2)MyISAM的索引方式也叫”非聚集的“。

MyISAM索引的原理图:

主索引:

MySQL索引背后的数据结构及算法原理

MyISAM辅助索引:

MySQL索引背后的数据结构及算法原理



InnoDB索引实现:

(1)使用B+树作为索引结构,具体实现方式与MyISAM截然不同。

(2)InnoDB的数据文件本身就是索引文件,叶子节点data域保存了完整的数据记录

(3)InnoDB的辅助索引data域存储响应记录主键的值而不是地址。

聚集索引这种实现方式使得按主键的搜索十分高效,但是辅助索引搜索需要

检索两遍索引:首先检索辅助索引获得主键,然后通过主键到主索引中检索记录。


InnoDB实现原理图:

主索引:

MySQL索引背后的数据结构及算法原理


InnoDB的辅助索引:

MySQL索引背后的数据结构及算法原理


七,GDB使用


> gcc -g mygdb.c

> gdb a.out

> b 4

> r

> bt       //查看运行时的堆栈

> p a    //打印变量a

> p b

>up


1. 加入断点:

break 行号

break 函数名

break ... if  


(1) list

(2) run

(3) countinue

(4) next

(5) step

(6) enter

(7) until

(8) info locals

(9) clear


多线程中:

info threads

threads IDX

break file.c 20 thread all


当程序奔溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员调试。

> gdb core

用gdb同时调试一个运行程序和core文件,core是程序非法执行后core dump后产生的文件。

core dump 一般是在segmentation fault(段错误)的情况下产生的文件,需要通过ulimit来设置才会得到的。

ulimit -c 1024

ulimit  -c  unlimited

调试的话输入: gdb filename core 

filename就是产生core文件的可执行文件


八,Nginx和Apache区别

LNAMP = Linux + Nginx + Apache + MySQL + PHP

Apach服务器是重量级Web服务器,功能强大,而且性能稳定;

缺点:每建立一个网络连接就会创建一个进程;


Nginx服务器是轻量级Web服务器,处理静态Web十分出色,可以作为

负载均衡服务器,反向代理服务器,高并发。

(1)轻量级,占用更少内存资源,抗并发,异步非阻塞

(2)高并发下,能保存低资源,低消耗,高性能;

(3)高度模块的设计,编写模块相对简单;


Apache相对Nginx的优点:

(1)rewrite比Nginx的rewrite要强大;

(2)模块超多,少bug



【系统架构设计师】二十六、论文写作要点 论文写作概述:时间所需120分钟;题目可四选一,必有一题考察软件架构,总有一款适合你;考察形式是机试(开心,再也不用担心字丑了),约2500字。 阅读详情

相关推荐

Palantir Vertex:数字孪生模拟与决策系统深度指南

Palantir Vertex是Foundry系统中的核心数字孪生模块,本质上是一个决策模拟器而非简单的数据可视化工具。它基于本体层构建,通过对象关系网络模拟现实世界实体,填补数据模型与业务决策间的鸿沟。核心功能包括:创建隔离的沙盒场景进行假设测试、修改参数模拟不同干预方案、对比虚实数据发现异常,并最终将最优决策回传至业务系统。典型应用场景涵盖供应链韧性评估、资产维护优化和应急方案制定等,帮助用户在复杂环境中做出更优决策。

轩哥的个人研究和成长记录 891

select调用

标签(空格分隔): Linux C/C++select 调用1. 函数调用原型int select(int maxfdp1,fd_set *readset,fd_set *writeset, fd_set *exceptset,const struct timeval *timeout)2.参数说明2.1 timeout参数结构体定义:struct timeval { long tv_sec

别时茫茫的专栏 817

【测试】echo发送和接收TCP/UDP数据包|shell 发送TCP/UDP数据包

目录 通过/dev/tcp、/dev/udp shell给tcp或udp服务发送16进制报文指令 通过/dev/tcp、/dev/udp (https://blog.youkuaiyun.com/u010039418/article/details/86251470) 通过/dev/tcp、/dev/udp可以直接在shell脚本中发起tcp、udp连接,方便又高效,平时用于测试啥的还是挺方便的。 直接发送 格式 /dev/udp/ip/port 比如要向本地10001端口发送数据,可以使用 ec.

我的笔记本 1万+

用管道(pipe)使消息队列通知(mq_notify)可以在Select和poll中使用

这是在Unix网络编程第二卷进程间通信中看到的一个技巧。它使得posix消息队列的mq_notify可以在select中使用。具体方法为: 1、建立管道; 2、在主线程中用select监听管道的读事件; 3、在mq_notify的时间处理程序中往管道里写数据,通知主线程 只是不知道这样做,效率怎么样。 UNP-IPC有一段实例代码,如下: 1 #include "unpi

yxnyxnyxnyxnyxn的专栏 2824

西门子S7-1200与汇川SV660F伺服Profinet通讯调试实战

在工业自动化领域,Profinet作为工业以太网标准协议,凭借其高实时性和灵活组网能力,已成为伺服驱动器与PLC通讯的主流选择。其核心原理是通过设备名识别、IP分配以及标准报文(如111速度报文、105定位报文)传输控制字与状态字,实现驱动器的精准控制。相比传统脉冲或CANOpen方案,Profinet直连省去了协议转换网关,降低了成本与故障点,尤其适用于绕线设备、包装机械等中小型单轴或多轴运动控制系统。本文以西门子S7-1200 PLC搭配汇川SV660F伺服为例,完整梳理了从GSDMD组态、InoDri

weixin_29184371的博客 227

FPGA人脸识别检测(先获取人脸图像以及灰度二值化)

由于图片有空洞等缺陷,所以后面要进行中值滤波、腐蚀、膨胀等算法处理,然后再对人脸进行框选,最后显示出来。最终的成像应该是下面这样的。(后面有时间再接着做哈哈哈)5、通过modelsim将操作后的图片数据写入gray_img.txt里面后,用matlab将txt转成图片。1、先用matlab将图片转换成txt数据,代码如下。读取图片的方式按照博客咸鱼里的方式来做,如下。2、FPGA读取txt数据。4、FPGA顶层模块及仿真。3、FPGA灰度二值化。

weixin_46312715的博客 2531

浅谈I/O复用:select、poll、epoll

I/O复用使锝程序能同时监听多个文件描述符,这对提高程序的性能至关重要。通常网络程序在下列情况下需要使用I/O复用技术: 客户端程序要同时处理多个socket 客户端程序要同时处理用户输入和网络连接 TCP服务器要同时处理监听socket和连接socket(这时I/O复用使用最多的场合) 服务器要同时处理TCP请求和UDP请求 服务器要同时监听多个端口,或者处理多种服务。 需要指出的是

Working... 1153

Cesium实战:如何在前端直接渲染TIFF影像(附完整代码与避坑指南)

本文详细介绍了如何在前端利用Cesium直接加载和渲染TIFF影像的完整技术方案。针对TIFF格式的地理影像数据,文章提供了从文件解析、坐标转换到像素处理与Cesium集成的全流程代码实现,并分享了性能优化与常见问题的避坑指南,帮助开发者高效实现三维地理可视化。

weixin_29290947的博客 315

近期java面试问到的一些问题

这里写自定义目录标题近期java面试问到的一些问题1,HashMap和HashTable的区别2,list的排序3,SpringMVC的流程4,Mybatis是怎么和Spring整合在一起的5,如何判断MySQL查询有没有进索引6,Nginx中怎么保证多台服务器的数据同步7,redis的五种数据类型 近期java面试问到的一些问题 最近面试遇到一些的问题,在这里记录下来,希望对自己和大家能有所帮助...

qq345173676的博客 253

SRAM compiler中 Number of banks 设置

的值时,需要考虑应用的性能需求、功耗要求和面积限制。设计者应根据具体的应用场景选择合适的bank数量,以优化整体系统性能。bank是一种用于分离存储器访问的设计结构,允许同时对不同的存储区域进行读写操作,从而提高存储器的并发访问性能。选项用于指定 SRAM 存储器的 并发存储区域。在 SRAM 编译器中,

hzmscut的博客 1872

Vue2 - 详细实现安装西瓜视频 xgplayer 插件详细配置及使用教程,利用西瓜视频播放器播放 mp4、flv、hls 格式视频文件及视频推流(直播或监控摄像头画面),支持移动端H5及PC网站!

vue2,nuxt2,西瓜视频,xgplayer,插件组件,xgplayer-hls,xgplayer-flv,xgplayer-mp4,播放视频点播和直播视频流,自定义播放器样式,截屏,监控视频,vue使用西瓜播放器播放flv、hls、mp4视频,截屏按钮,直播流,报错,黑屏,加载失败,苹果ios不兼容,重连,怎么改样式,很卡,详细教程,监控实时播放推流,倍速播放,在线flv在线推流地址,HLS播放,vue西瓜播放器,vue如何使用西瓜视频插件做直播推流回流,视频点播,flv在线视频流播放,截图功能,利用

🏆 前端领域优质创作者 1万+

近期笔面试问题总结

最近一周一直参加各种笔试

不会写代码的程序猿专栏 1008

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

近期的面试问题回忆

生活碎碎念

solicitous的专栏 979

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

近期前端面试中经常碰到的问题总结

最近想着去市场中试试水,看看自己的几斤几两。哈哈,然后大概遇到了这么几类问题吧。写出来和大家分享一下。 原生类 1.原型及原型链的问题 这个问题面试的公司都有问。其实这个问题也是好多新手特别犯难的一个问题。对于一些人来说原型和原型链要解释得清楚又准确就要把原型这块的知识点看好多遍。OK,直接说我的方法吧,我直接在纸上画了这样的一张图:...

weixin_33755557的博客 2494

近期面试常见问题汇总

在杭州一段时间面过几家公司,对于所涉及到的题目进行了汇总。主要有以下几个问题。 一、野指针 1、什么是野指针 野指针是指指针指向的位置是不可知的,指针变量定义时未初始化。 2、野指针产生原因 1)、指针定义时未初始化,其值是随机的,意味着指向一个地址是一个不确定的变量 2)、指针被释放时,没有被置空,free()或delete(); 3)指针操作超越变量作用域,不要返回指向栈内存的指针或引用,因为栈函数结束会被释放。 3、野指针产生危害 1)、指向不可访问的地址,会触发段错误。 2)、掩盖程序上的错误。 3

weixin_42952472的博客 192

记录一下近期面试被问到的一些问题

12.父子组件渲染顺序(这个当时答成了先父组件mounted,再子组件mounted,当时确实是死记硬背了,没有去理解,面试官问我父组件mounted的时候页面挂载完了吗,我说挂载完了,面试官说都挂载完了那子组件怎么还没mounted呢,才反应过来是先子组件挂载完,再父组件)12. 判断数据类型的方法 typeof(空)的返回值是什么(这里我回答的是undefined,面试官说是object,但是我复盘时自己console了一下,发现返回的是string,typeof null的话,返回的是object)

weixin_48835514的博客 468

Java外包近期面试遇到的问题(持续更新)

1.mysql复合索引(a,b,c)where b=?5.try catch finally 在项目中怎么用的?如果 try 里有return ,finally 里会怎么执行?返回值暂存机制:try中的return会先保存返回值,即使finally修改了相关变量也不会影响已暂存的值(基本数据类型)return覆盖问题:如果finally块中也包含return语句,会覆盖try块中的return。finally优先原则:finally块中的代码一定会执行,除非JVM提前退出。6. jvm参数怎么设置的?

m0_55424451的博客 225

python近期遇到的一些面试问题(四)

去年也是这个时候吧,当时正好也是面试,所以总结了三篇面试的题目。另外前段时间我出了一个面试题的课程Python 面试题 170 道:2019 版,总结了Python的一些...

muzico425的博客 247

近期面试遇到问题

①数据库存储,使用FMDB,封装了系统的API,语法更方便使用; ②关于TableView的cell队列:有两个,一个是缓存Cell队列,一个是可视Cell队列,当TableView滑动时,滑出屏幕的Cell从可视队列中出栈放入缓存队列中,同时从缓存队列中取出Cell放入可视Cell队列。 ③UIk控件等在从4-5S切换到6、6P时,(因为屏幕分辨率不同?)视图或控件会被放大,应该怎么解决?

烂笔头 429

python近期遇到的一些面试问题(三)

python近期遇到的一些面试问题(三) 整理一下最近被问到的一些高频率的面试问题。总结一下方便日后复习巩固用,同时希望可以帮助一些朋友们。 前两期点这↓ python近期遇到的一些面试问题(一) python近期遇到的一些面试问题(二) 1.请写一个邮箱的正则表达式 电子邮件地址有统一的标准格式:用户名@服务器域名。用户名表示邮件信箱、注册名或信件接收者的用户标识,@符号后是你使用的邮...

dianyin7770的博客 223

近期总结的一些面试问题

Redis五种数据类型底层结构 Redis集群的三种方式 Redis是如何去执行一条指令的 Redis分布式锁 MySQL的一些锁 MySQL索引底层数据结构 设计模式,单例模式怎么实现线程安全的 说出你了解的一些算法 Linux的命令,查看内存,CPU nginx,select,epoll,poll的运行机制 nginx的负载均衡的几种方式 进程,线程,协程 docker如何进行资源隔离管理 nodejs的事件循环,闭包 c10k的问题 ...

qq_36767214的博客 170

就近期面试所见,谈谈求职者的问题和面试官的问题

废话少说,我们是金融行业的软件企业,规模不大,所以求职者普遍水平一般。薪水是还有一个问题,本文不谈。 求职者的普遍问题 1、表达能力太差,沟通能力差。    自我介绍,有人三五句话,姓甚名谁籍贯何处何时毕业就结束了;有人花了三五分钟,没说出来自己的优势特长,在项目细节中绕。    我还算友好,也有耐心。有时会提出他的问题所在,有时会先让其整理一下然后重来。 2、基础差...

weixin_34000916的博客 143

python近期遇到的一些面试问题(一)

整理一下最近被问到的一些高频率的面试问题。总结一下方便日后复习巩固用,同时希望可以帮助一些朋友们。 1.python的基本数据类型 主要核心类型分为两类不可变类型:数字(int float bool complex),字符串(string),元祖(tuple),不可变集合(frozenset)。 可变类型:列表(list),字典(dict),集合(set)这里的可变不可变,是指...

dianyin7770的博客 114

近期面试问题答得不好的知识

近期面试问题答得不好的知识。

Wang Chengchen's Blog 519

近期面试时遇到的问题

以下为我近期面试技术支持时被问到的问题总结,答案搬运自百度等,希望对大家有帮助,如有不足欢迎评论区补充

qq_44157567的博客 185

python开发面试问题_python近期遇到的一些面试问题(一)

整理一下最近被问到的一些高频率的面试问题。总结一下方便日后复习巩固用,同时希望可以帮助一些朋友们。1.python的基本数据类型主要核心类型分为两类不可变类型:数字(int float bool complex),字符串(string),元祖(tuple),不可变集合(frozenset)。可变类型:列表(list),字典(dict),集合(set)这里的可变不可变,是指内存中的值是否可以被改变补...

weixin_39743603的博客 232
上一篇: MySQL试题
下一篇: 2014年10月22日网易游戏数据库系统工程师初面
家在深圳
博客等级 码龄14年 1粉丝 22原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值