Polling efficiently on stock hardware
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
From system F to typed assembly language
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A dependently typed assembly language
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
An expressive, scalable type theory for certified code
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Static prediction of heap space usage for first-order functional programs
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Toward a foundational typed assembly language
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Trustless Grid Computing in ConCert
GRID '02 Proceedings of the Third International Workshop on Grid Computing
Linear types and non-size-increasing polynomial time computation
Information and Computation - Special issue: ICC '99
Enforcing resource bounds via static verification of dynamic checks
ACM Transactions on Programming Languages and Systems (TOPLAS) - Special Issue ESOP'05
More typed assembly languages for confidentiality
APLAS'07 Proceedings of the 5th Asian conference on Programming languages and systems
Hi-index | 0.00 |
Certified code systems protect computers from faulty or malicious code by requiring untrusted software to be accompanied by checkable evidence of its safety. This paper presents a certified code solution to a problem in grid computing, namely, controlling the CPU usage of untrusted programs. Specifically, we propose to endow the runtime system supervising local execution of grid programs with a trusted "yield" operation, and require the untrusted code to execute this operation with at least a certain frequency. Compliance with this requirement is enforced by a special typed assembly language, which we describe.We also describe a compilation strategy for a general-purpose programming language that can enforce and certify conformance to such policies automatically without any sophisticated program analyses. This means that owners of hosts participating in the computation network can be confident that executing foreign code will not compromise the availability of their machines for running their own processes, and application programmers do not need to modify their coding style in order to produce compliant software.