Skip to main content

王垠终于开始搞垠语言了


标  题: 王垠终于开始搞垠语言了
发信站: BBS 未名空间站 (Thu May  8 22:26:44 2014, 美东)

还是不忘show对于体系结构的无知。

说今天的硬件设计和OS妨碍他发挥了,程序要离开OS直接跑在硬件上。
http://www.yinwang.org/blog-cn/2014/05/08/yin-lang/

“也就是说,Yin 语言最终将独立于任何操作系统,完全独立地运行于硬件之上。很多
人都没有意识到 Unix 等操作系统,其实不但给程序员带来了过度的复杂性,而且由于
它们的实现并不能支持现代程序语言,所以其实不能最大化的发挥硬件的效能。”



驱动在库中实现。如果只是做server跑在vmware上,其实没几个驱动要写。
他这个东西不一定能实现他说的这套理想。但是我觉得他设计出来的语言应该不至于太
差。

【 在 xiaoju (可爱的龙猫) 的大作中提到: 】
: 没有OS你自己驱动硬件?


Xen和其他类型的VM一样,都是架构在Linux kernel上面的,所以不需要OS的想法是非
常荒唐可笑的。

【 在 alanine (尺子) 的大作中提到: 】
: Haskell 早几年前就已经跑在 Xen Hypervisor 上面了,也不需要多少新代码。硬件驱
: 动主要看想支持什么,有些是很简单的。
: http://halvm.org/
: 当然啦,王同学这个一大桶的想法还是很可笑的,就如同所有一大桶的想法一样。


真正的不需要OS的系统就是某些功能及其简单的8位或者16位嵌入式系统,没有OS,全
部靠简单的中断,然后代码只有几个C文件和assembly,比如MicroChip的PIC MCU。



Xen和其他类型的VM一样,对上层程序提供一个硬件的抽象层,它和实际硬件有差别,
但是差别很小。

要让上层程序能够跑起来所需要的硬件环境,只和 Xen 所提供的接口相关,和 Xen 本
身的架构是基于什么 OS 什么 kernel 应该没有关系。

【 在 domini (none) 的大作中提到: 】
: Xen和其他类型的VM一样,都是架构在Linux kernel上面的,所以不需要OS的想法是非
: 常荒唐可笑的。

这是两个问题。我前面只是指出让一个高级语言的 runtime 跳过 OS 层面直接跑在(虚
拟的或者实际的)硬件环境上并非难事。



你这个就是偷换概念了,Xen等等VM底层还是Linux kernel或者其他OS kernel,所以所
谓跳过OS来支持上层程序的说法是根本不存在的。


我来作个图,假设以下成立:

Windows | Linux | Guest
-------------------------
        Xen
-------------------------
      Hardware

如果下面两个行得通:

Windows     
--------
Hardware



Linux
--------
Hardware

那么是什么阻止了这个?

Guest
--------
Hardware

如果 Guest 利用了一些 Xen 的特殊接口,那么我可以理解为什么 Guest 不能直接跑
在硬件上。但我还是要说,差别不大。\\



Comments

Popular posts from this blog

CKA Simulator Kubernetes 1.22

  https://killer.sh Pre Setup Once you've gained access to your terminal it might be wise to spend ~1 minute to setup your environment. You could set these: alias k = kubectl                         # will already be pre-configured export do = "--dry-run=client -o yaml"     # k get pod x $do export now = "--force --grace-period 0"   # k delete pod x $now Vim To make vim use 2 spaces for a tab edit ~/.vimrc to contain: set tabstop=2 set expandtab set shiftwidth=2 More setup suggestions are in the tips section .     Question 1 | Contexts Task weight: 1%   You have access to multiple clusters from your main terminal through kubectl contexts. Write all those context names into /opt/course/1/contexts . Next write a command to display the current context into /opt/course/1/context_default_kubectl.sh , the command should use kubectl . Finally write a second command doing the same thing into /opt/course/1/context_default_no_kubectl.sh , but without the use of k

OWASP Top 10 Threats and Mitigations Exam - Single Select

Last updated 4 Aug 11 Course Title: OWASP Top 10 Threats and Mitigation Exam Questions - Single Select 1) Which of the following consequences is most likely to occur due to an injection attack? Spoofing Cross-site request forgery Denial of service   Correct Insecure direct object references 2) Your application is created using a language that does not support a clear distinction between code and data. Which vulnerability is most likely to occur in your application? Injection   Correct Insecure direct object references Failure to restrict URL access Insufficient transport layer protection 3) Which of the following scenarios is most likely to cause an injection attack? Unvalidated input is embedded in an instruction stream.   Correct Unvalidated input can be distinguished from valid instructions. A Web application does not validate a client’s access to a resource. A Web action performs an operation on behalf of the user without checking a shared sec