Re: 64 bit chip, os, and application
いいじまです。
> > FreeBSD:
> > http://www.jp.freebsd.org/www.FreeBSD.org/ja/platforms/amd64.html
> > NetBSD:
> > http://www.NetBSD.org/Ports/amd64/
> > Linux:
> > http://www.amd64.org/
>
> 結局、これらの OS は、64 ビットなんですか? llseek() とかありますか。
手元の FreeBSD 環境で試してみました。
% uname -a
FreeBSD sodans.usata.org 4.10-RELEASE FreeBSD 4.10-RELEASE #3: Mon Jun 14 20:22:42 JST 2004 root@sodans.usata.org:/var/obj/usr/src/sys/SODANS i386
% cd /usr/include
% grep lseek *.h
stdio.h:_BSD_OFF_T_ lseek __P((int, _BSD_OFF_T_, int));
unistd.h:off_t lseek __P((int, off_t, int));
% grep '_BSD_OFF_T' */*.h
machine/ansi.h:#define _BSD_OFF_T_ __int64_t /* file offset */
sys/types.h:typedef _BSD_OFF_T_ off_t; /* file offset */
というわけで、すでに lseek() が 64 ビット化されています。
llseek() や lseek64() はありません。
ちなみに
% grep fseek *.h
stdio.h:int fseek __P((FILE *, long, int));
stdio.h:int fseeko __P((FILE *, _BSD_OFF_T_, int));
です。
Linux の場合、http://www.freebsd.org/cgi/man.cgi で調べた限りでは、
_llseek() と fseeko() があるようです。
========================================================================
飯嶋 浩光 / でるもんた・いいじま http://www.ht.sakura.ne.jp/~delmonta/
IIJIMA Hiromitsu, aka Delmonta mailto:delmonta@ht.sakura.ne.jp
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735