在 Chez Scheme 中查找操作系统和机器类型
Find operating system and machine type in Chez Scheme
Chez Scheme 程序或库如何找出它 运行 在哪个操作系统和机器架构上(从 Scheme 代码中)?
来自Chez Scheme Version 9 User's Guide:
第 6.10 节。字节向量
(native-endianness) import (rnrs) or (rnrs bytevectors)
第 12.4 节。编译、评估和加载
(machine-type) import (chezscheme)
第 12.15 节。环境查询和设置
(scheme-version) import (chezscheme)
(scheme-version-number) import (chezscheme)
(petite?) import (chezscheme)
(threaded?) import (chezscheme)
(interactive?) import (chezscheme)
不幸的是,(machine-type)
是 Chez 惯用的神秘字符串(而不是像 x86-64
这样的标准符号),并且可能会因版本而异。其他程序以明显的方式工作。
我在 r7rs-benchmarks 存储库中找到了这些。
正在解析机器类型
机器类型字符串构造如下:
- 以空字符串开头。
- 对于支持线程的构建,附加字母
t
。
- 追加机器架构。
- 附加操作系统。
当前架构和操作系统:
(define arch-pairs
'(("a6" . amd64)
("arm32" . arm32)
("i3" . i386)
("ppc32" . ppc32)))
(define os-pairs
'(("fb" . freebsd)
("le" . linux)
("nb" . netbsd)
("nt" . windows)
("ob" . openbsd)
("osx" . macos)
("qnx" . qnx)
("s2" . solaris)))
要查找所有机器类型,请在 the c
directory of the Chez Scheme source repo 中查找所有名为 Mf-*
的 makefile。
Chez Scheme 程序或库如何找出它 运行 在哪个操作系统和机器架构上(从 Scheme 代码中)?
来自Chez Scheme Version 9 User's Guide:
第 6.10 节。字节向量
(native-endianness) import (rnrs) or (rnrs bytevectors)
第 12.4 节。编译、评估和加载
(machine-type) import (chezscheme)
第 12.15 节。环境查询和设置
(scheme-version) import (chezscheme)
(scheme-version-number) import (chezscheme)
(petite?) import (chezscheme)
(threaded?) import (chezscheme)
(interactive?) import (chezscheme)
不幸的是,(machine-type)
是 Chez 惯用的神秘字符串(而不是像 x86-64
这样的标准符号),并且可能会因版本而异。其他程序以明显的方式工作。
我在 r7rs-benchmarks 存储库中找到了这些。
正在解析机器类型
机器类型字符串构造如下:
- 以空字符串开头。
- 对于支持线程的构建,附加字母
t
。 - 追加机器架构。
- 附加操作系统。
当前架构和操作系统:
(define arch-pairs
'(("a6" . amd64)
("arm32" . arm32)
("i3" . i386)
("ppc32" . ppc32)))
(define os-pairs
'(("fb" . freebsd)
("le" . linux)
("nb" . netbsd)
("nt" . windows)
("ob" . openbsd)
("osx" . macos)
("qnx" . qnx)
("s2" . solaris)))
要查找所有机器类型,请在 the c
directory of the Chez Scheme source repo 中查找所有名为 Mf-*
的 makefile。