首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
N. Wirth 《Software》1977,7(1):67-84
This paper gives an account of some design decisions made during the development of the programming language Modula. It explains the essential characteristics of its implementation on the PDP-11 computer, in particular its run-time administration of processes and the mechanism of signalling. The paper ends with some comments on the suitability of the PDP-11 for this high-level multiprogramming language.  相似文献   

2.
N. Wirth 《Software》1977,7(1):1-35
This paper defines a language called Modula, which is intended primarily for programming dedicated computer systems, including process control systems on smaller machines. The language is largely based on Pascal, but in addition to conventional block structure it introduces a so-called module structure. A module is a set of procedures, data types and variables, where the programmer has precise control over the names that are imported from and exported to the environment. Modula includes general multiprocessing facilities, namely processes, interface modules and signals. It also allows the specification of facilities that represent a computer's specific peripheral devices. Those given in this paper pertain to the PDP-11.  相似文献   

3.
The programming language Modula is reviewed for its ability to support the wide variety of time usages required in a process control system. It is shown that in many instances concurrent languages supporting device control and multiprogramming may need additional facilities for the support of time.  相似文献   

4.
Modula is a new programming language for implementing dedicated, parallel systems. Following a systematic design technique, this paper illustrates the use of Modula for the design of a message switching communication system. A message switching system poses a number of interesting. problems: a high degree of concurrent activity exists, a variety of I/O devices need to be controlled, messages can have multiple destinations, and messages can be preempted. The strengths and weaknesses of Modula with respect to these specific problems and its utility as a general purpose language are evaluated.  相似文献   

5.
Manuel Reimer 《Software》1984,14(10):945-956
Modula/R is a database programming language that integrates the programming language Modula-2 and the relational database model. This paper describes the language concepts of Modula/R and its implementation on the personal computer Lilith within the database project LID AS. A transaction concept as an extension of the procedure concept is integrated into Modula/R to support its implementation in a multi-user environment with access to shared distributed databases through a network of personal computers.  相似文献   

6.
驱动程序的不稳定是造成操作系统内核崩溃的主要原因,该文采用类型安全的Java语言开发Linux设备驱动程序以提高系统的稳定性,并分析驱动模型的结构、内核态Java虚拟机(JVM)的设计以及Java驱动程序的编写。USB网卡的测试验证了Java驱动在提高系统稳定性上的优势。  相似文献   

7.
传统程序设计语言的面向对象扩充的若干技术   总被引:3,自引:0,他引:3  
本文论述用转换方式实现传统程序设计语言的面向对象扩充,给出了一组关键技术以解决由子类型多态和动态定连所引出的问题,其基本思想是将类和对象类型分开处理,从而避免转换过程中的重复工作.这些技术具有适用性强、功效高的特点,并且在PASCAL语言的面向对象扩充NDOOP和MODULA-2语言的面向对象扩充NDOOM的实现中被采用,效果令人满意.  相似文献   

8.
9.
The design of a database is a rather complex and dynamic process that requires comprehensive knowledge and experience. There exist many manual design tools and techniques, but the step from a schema to an implementation is still a delicate subject. The interactive database design tool Gambit supports the whole process in an optimal way. It is based on an extended relational-entity relationship model. The designer is assisted in outlining and describing data structures and consistency preserving update transactions. The constraints are formulated using the database programming language Modula/R which is based upon first-order predicate calculus. The update transactions are generated automatically as Modula/R programs and include all defined integrity constraints. They are collected in so-called data modules that represent the only interface to the database apart from read operations. The prototype facility of Gambit allows the designer to test the design of the database. The results can be used as feedback leading to an improvement of the conceptual schema and the transactions.  相似文献   

10.
The StarMod language is designed to provide its users with abstractions for distributed computations. The language is based on Wirth's definition of a “module” as impiemented in Modula. The paper discusses abstraction mechanisms for distributed access control and scheduling: in addition, several examples are used to illustrate these concepts.  相似文献   

11.
WDM设备驱动程序的设计与实现   总被引:3,自引:0,他引:3  
设备驱动程序是硬件设备连接到计算机系统的软件接口。WDM是一种新的设备驱动程序模型,对它的研究对设计优秀的设备驱动程序有重要指导作用。文章分析了WDM的结构,并给出基本的编程技巧。  相似文献   

12.
Synchronous languages are intended for programming reactive systems. Reactive systems, which include real-time systems and key operating system components, interact continually with their environment. This paper considers the applicability of imperative synchronous/reactive languages to the development of general system software, that is, to the implementation of operating system kernels, file systems, databases, networks, server architectures, device drivers, etc. The languages Esterel and Reactive C (RC) receive special attention as Esterel is the oldest and most developed such language and RC is specifically designed for compatibility with C systems programming. An alternative soft-instruction software architecture is described, which is well suited to real-world system programming. © 1997 by John Wiley & Sons, Ltd.  相似文献   

13.
Linux系统下USB设备驱动程序的开发   总被引:4,自引:0,他引:4  
开发Linux下的设备驱动程序是一项比较繁琐的工作,从具体的USB设备驱动的开发流程出发,描述了Linux系统下USB设备驱动程序的几个主要开发细节和注意点,以能够提供给大家一个开发Linux下USB设备驱动程序的向导,并在开发密码模块设备的驱动程序中得到了很好的应用。  相似文献   

14.
Device Monitors     
A driver is the part of an I/O system used for processing of an I/O request for a specific channel. The interaction of the CPU with a channel is described through the monitor concept of Hoare and Brinch Hansen. The implementation of monitors using hardware interrupt facilities is described. The resulting device monitor is compared pared with the device processes of Wirth's Modula. The concept is illustrated through an extension to Concurrent Pascal with examples drawn from the PDP11 system. Problems of missing interrupts and power failure are also discussed.  相似文献   

15.
N. Wirth 《Software》1977,7(1):37-65
Three sample programs are developed and explained with the purpose of demonstrating the use of the programming language Modula. The examples concentrate on the uses of modules, concurrent processes and synchronizing signals. In particular, they all focus on the problems of operating peripheral devices. The concurrency of their driver processes has to occur in real time. The devices include a typewriter, a card reader, a line printer, a disk, a terminal with tape cassettes and a graphical display unit. The three programs are listed in full.  相似文献   

16.
The two major design approaches taken to build distributed and parallel computer systems, multiprocessing and multicomputing, are discussed. A model that combines the best properties of both multiprocessor and multicomputer systems, easy-to-build hardware, and a conceptually simple programming model is presented. Using this model, a programmer defines and invokes operations on shared objects, the runtime system handles reads and writes on these objects, and the reliable broadcast layer implements indivisible updates to objects using the sequencing protocol. The resulting system is easy to program, easy to build, and has acceptable performance on problems with a moderate grain size in which reads are much more common than writes. Orca, a procedural language whose sequential constructs are roughly similar to languages like C or Modula 2 but which also supports parallel processes and shared objects and has been used to develop applications for the prototype system, is described  相似文献   

17.
The suitability of Concurrent Euclid, Ada and Modula for a special form of asynchronous concurrency, called master/slave concurrency, is investigated. No language is ideal, with Concurrent Euclid and Modula having major drawbacks. The conclusion lists the features desirable in a language for master/slave concurrency.  相似文献   

18.
嵌入式Linux系统中的多层次驱动程序   总被引:5,自引:2,他引:3  
嵌入式Linux设备驱动程序随着设备应用领域的扩展而愈来愈复杂,其相应的配置和编译脚本开发成为重点。简述驱动程序开发的基本原理和过程,针对多层次的驱动程序,分析其配置和编译脚本Kbuild,包括内核配置语言和内核Makefile文件。将源代码加入到Linux内核中,开发出各目录下相应的Config.in和Makefile文件,以增加内核配置菜单选项并得到遵从配置的编译结果。对构建的模块按照层叠顺序加载,模块运行良好。  相似文献   

19.
The program for a small embedded computer system has been implemented in Modula. The execution speed of this program was particularly important and the speed achieved was adequate. Some parts of this program are described using a notation derived from the Mascot approach. The use of the Mascot notation with a module-structured language is discussed and some suggestions for an appropriate style are made. Some simple optimizations of the program were made in order to achieve increased execution speed and it was observed that the final program ran at about twenty times the rate of an equivalent Fortran program. Some points on the suitability of Modula are briefly discussed and, in a similar way to previous authors, it is concluded that Modula is suitable for applications of this type.  相似文献   

20.
The programming languages Pascal, Modula and Ada are described for readers familiar with Fortran.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号