如何不经内存,直接操作硬盘上的数据?

Slahser__ 发布于 2014/04/02 22:05
阅读 2K+
收藏 4
如题

以下是问题补充:

@Slahser__:补充一下.这是一道面试题...我被面到的时候目瞪口呆..应该是都需要过内存吧.如果有实现方法希望指点一二. (2014/04/02 22:34)
加载中
2
0x0001
0x0001

估计出题者的目的是想问 zero copy,看看这里 http://www.ibm.com/developerworks/cn/linux/l-cn-zerocopy1/

0
滔哥
滔哥
滔哥
回复 @Slahser__ : 肯定不是,我已经一年多没面过了
Slahser__
Slahser__
莫非面我的前辈是您?...
0
wharf_zhang
wharf_zhang
好像是没有可能吧。估计你需要的不是硬盘对拷。
Slahser__
Slahser__
回复 @wharf_zhang : 大概题目有bug吧,大家都表示不科学.
wharf_zhang
wharf_zhang
想不出linux下如何办到。不熟悉内核。难道内核有提供这么低级的接口?指针似乎也不对题,它不也是在内存中么。
Slahser__
Slahser__
回复 @wharf_zhang : 显然不是啊,面的是开发岗,当时语境是在问我linux相关问题.
wharf_zhang
wharf_zhang
硬件方面如果熟悉硬盘驱动器的相关芯片技术的话,理论上说应该也是能够做到的,毕竟都是通过驱动器芯片间接操作的。不过,一般人还真不知道怎么弄。我猜测市售的对拷机大概就是这样做的。
Slahser__
Slahser__
回复 @wharf_zhang : 组成原理的确是这么学的,但我被面到了..想来做一下review反省下
下一页
0
雨翔河
雨翔河

打开记事本,编辑、保存。

Slahser__
Slahser__
buffer在内存里吧
0
自由PHP
自由PHP

如果是PHP的面试,那可能问的是,如何在文件不用全部加载到内存的情况下操作文件,正确答案应该是操作指针

Slahser__
Slahser__
回复 @小小程序员 : 目前也没搜索到靠谱的答案,大概是题目有bug把
自由PHP
自由PHP
回复 @Slahser__ : 对我来说太难了
Slahser__
Slahser__
某Java大厂.当时语境是在问我linux相关的问题.
0
南湖船老大
南湖船老大

我觉得应该是你理解错了吧。。。哪有这么问的,除非那人抽疯了。。

Slahser__
Slahser__
回复 @南湖船老大 : 大概是题目bug了.我面的是研发岗,没道理扯上运维的吧..
南湖船老大
南湖船老大
回复 @Slahser__ : 我觉得他要的答案是类似nginx的sendfile功能,可以节省内存资源,但更可能是面试官装逼装错了。。难道他搞底层驱动,搞内核?反正我也没听过这种技术
Slahser__
Slahser__
很短的一句,我没什么可能记错啊,当时我还反问了一句大概都过内存的吧?面试官说我回去查..
0
leo108
leo108

操作数据?删除算不算?

Slahser__
Slahser__
这难道是智力题....
0
gnefil.nil
gnefil.nil

把硬盘拆了拿根磁铁在上面画圈圈

Slahser__
Slahser__
哈哈,后来都去了美国那个段子
0
excepiton
excepiton

等待面试官来指点一二

Slahser__
Slahser__
哪敢啊,备不住是以后的teamleader呢,以后有机会见面当面问问,哈哈.
0
excepiton
excepiton

http://www.ibm.com/developerworks/cn/linux/l-cn-directio/

我觉得问direct IO的可能性较大

Slahser__
Slahser__
阅读了一下,应该面试官是这个想法,先存个书签,明天翻翻书再来看.web开发久了,组成原理什么的记不太清楚了
返回顶部
顶部