Simulation and performance analysis of memory hierarchies require traces of memory address references. There are several software-based techniques to obtain the address references of user application programs, and cache and TLB simulations are usually driven by these sorts of traces. However, kernel mode address references are typically not captured by user tracing methods and are thus absent from the simulations. For some workloads, operating system activity has a significant impact on cache and TLB performance and therefore should be represented in the traces. This paper examines a single-step interrupt technique to obtain kernel-mode address references made by a Linux operating system running on an Intel x86 processor. Kernel address traces also allow a systems programmer to identify the frequent paths within the operating system and to guide optimizations.
{"title":"A technique for obtaining kernel mode address traces on a pentium-based Linux system","authors":"Sachin Shirhatti, M. Smotherman","doi":"10.1145/2817460.2817474","DOIUrl":"https://doi.org/10.1145/2817460.2817474","url":null,"abstract":"Simulation and performance analysis of memory hierarchies require traces of memory address references. There are several software-based techniques to obtain the address references of user application programs, and cache and TLB simulations are usually driven by these sorts of traces. However, kernel mode address references are typically not captured by user tracing methods and are thus absent from the simulations. For some workloads, operating system activity has a significant impact on cache and TLB performance and therefore should be represented in the traces. This paper examines a single-step interrupt technique to obtain kernel-mode address references made by a Linux operating system running on an Intel x86 processor. Kernel address traces also allow a systems programmer to identify the frequent paths within the operating system and to guide optimizations.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129427342","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
T. D. Hendrix, J. Cross, L. Barowski, Joseph C. Teate, K. S. Mathias, Tahia I. Morris
Work is reported on the development and enhancement of the GRASP software engineering and visualization tool. GRASP automatically produces visualizations of control and complexity (control structure diagrams and complexity profile graphs, respectively) of source code written in Ada 95, C, and Java. These visualizations use intuitive, compact graphical representations that allow the software engineer to holistically visualize the overall program as well as visualize the details of a small section of the code. Current features and enhancements of GRASP as well as its availability are discussed.
{"title":"A visualization and measurement environment for software engineering","authors":"T. D. Hendrix, J. Cross, L. Barowski, Joseph C. Teate, K. S. Mathias, Tahia I. Morris","doi":"10.1145/2817460.2817488","DOIUrl":"https://doi.org/10.1145/2817460.2817488","url":null,"abstract":"Work is reported on the development and enhancement of the GRASP software engineering and visualization tool. GRASP automatically produces visualizations of control and complexity (control structure diagrams and complexity profile graphs, respectively) of source code written in Ada 95, C, and Java. These visualizations use intuitive, compact graphical representations that allow the software engineer to holistically visualize the overall program as well as visualize the details of a small section of the code. Current features and enhancements of GRASP as well as its availability are discussed.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128510477","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In recent years the Internet has become increasingly popular. This increased popularity, combined with a broader range of applications, has revealed several shortcomings in the current version of the Internet Protocol, IPv4. In response the Internet community is developing an updated version of IP, IPv6. One of the new features of IPv6 is the ability to identify a stream of data within the Internet, making it possible to offer different qualities of service to different applications. A new protocol, the ImpRes protocol, is proposed in this paper to take advantage of this ability by reserving network resources for a data stream "on-the-fly". Using the IPv6 flow label field and a proposed IPv6 Hop-by-Hop option header field, a data stream can establish state information in network nodes, and adapt to changing network conditions or user requests by dynamically modifying the state information during the lifetime of the stream. Simulation results suggest that the proposed ImpRes protocol is a viable method for supporting better-than-best-effort services in an IPv6 environment.
{"title":"ImpRes: supporting services in IPv6 using the flow label and hop-by-hop option fields","authors":"M. Birkner, L. Murphy","doi":"10.1145/2817460.2817522","DOIUrl":"https://doi.org/10.1145/2817460.2817522","url":null,"abstract":"In recent years the Internet has become increasingly popular. This increased popularity, combined with a broader range of applications, has revealed several shortcomings in the current version of the Internet Protocol, IPv4. In response the Internet community is developing an updated version of IP, IPv6. One of the new features of IPv6 is the ability to identify a stream of data within the Internet, making it possible to offer different qualities of service to different applications. A new protocol, the ImpRes protocol, is proposed in this paper to take advantage of this ability by reserving network resources for a data stream \"on-the-fly\". Using the IPv6 flow label field and a proposed IPv6 Hop-by-Hop option header field, a data stream can establish state information in network nodes, and adapt to changing network conditions or user requests by dynamically modifying the state information during the lifetime of the stream. Simulation results suggest that the proposed ImpRes protocol is a viable method for supporting better-than-best-effort services in an IPv6 environment.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"88 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124565741","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Due to experience with a Web-based C programming tutorial, we have learned of the need for an authoring system for such tutorials. Here we describe an extension of HTML we call Hyper-Text Tutorial Markup Language (HTTML) and a translator that takes an HTTML file and produces the corresponding HTML files and CGI script sources.
{"title":"A hyper-text tutorial markup language","authors":"Brian L. Stuart","doi":"10.1145/2817460.2817520","DOIUrl":"https://doi.org/10.1145/2817460.2817520","url":null,"abstract":"Due to experience with a Web-based C programming tutorial, we have learned of the need for an authoring system for such tutorials. Here we describe an extension of HTML we call Hyper-Text Tutorial Markup Language (HTTML) and a translator that takes an HTTML file and produces the corresponding HTML files and CGI script sources.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128667640","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Entity-Relationship (ER) Diagrams are widely used in information requirements analysis and database modeling and capture much knowledge of relationship semantics. Even more such knowledge is captured when ER Diagrams are extended with Object Relationship Notation (ORN). Unfortunately, however, much of the relationship semantics expressed in ER Diagrams are not directly translatable into the Structured Query Language (SQL), and, therefore, the implementation of these semantics in relational database management systems is made difficult. In this paper we demonstrate the feasibility and desirability of incorporating ORN into SQL to address this problem.
{"title":"Incorporating object relationship notation (ORN) into SQL","authors":"B. Ehlmann, Michael A. Stewart","doi":"10.1145/2817460.2817532","DOIUrl":"https://doi.org/10.1145/2817460.2817532","url":null,"abstract":"Entity-Relationship (ER) Diagrams are widely used in information requirements analysis and database modeling and capture much knowledge of relationship semantics. Even more such knowledge is captured when ER Diagrams are extended with Object Relationship Notation (ORN). Unfortunately, however, much of the relationship semantics expressed in ER Diagrams are not directly translatable into the Structured Query Language (SQL), and, therefore, the implementation of these semantics in relational database management systems is made difficult. In this paper we demonstrate the feasibility and desirability of incorporating ORN into SQL to address this problem.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123758482","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Multimedia networking refers to the transfer of related audio, video, image and data streams among networked computers. A key problem in multimedia networking is the synchronization of audio and video streams to maintain their timing relationships. In addition, due to the large time--varying resource demands of real--time video, an automatic mechanism is needed to dynamically modify the video source output in order to track changing network traffic levels. We have developed a receiver--initiated feedback control scheme to allow video sources to respond to changing network conditions while maintaining synchronization with their associated audio streams. The receiver informs the sender about the current transmission quality, and the sender responds to this information by adjusting some transmission parameters which temporarily decrease video quality (if the receiver is reporting problems) or increase the video quality (if the receiver is reporting no problems but the quality is less than its target). We present simulation results which indicate that our feedback mechanism can help to maintain audio--video synchronization in Asynchronous Transfer Mode local area networks, as well as reduce the network traffic congestion which leads to glitches in the first place.
{"title":"Multimedia feedback control in ATM local area networks","authors":"P. Bindal, L. Murphy","doi":"10.1145/2817460.2817523","DOIUrl":"https://doi.org/10.1145/2817460.2817523","url":null,"abstract":"Multimedia networking refers to the transfer of related audio, video, image and data streams among networked computers. A key problem in multimedia networking is the synchronization of audio and video streams to maintain their timing relationships. In addition, due to the large time--varying resource demands of real--time video, an automatic mechanism is needed to dynamically modify the video source output in order to track changing network traffic levels. We have developed a receiver--initiated feedback control scheme to allow video sources to respond to changing network conditions while maintaining synchronization with their associated audio streams. The receiver informs the sender about the current transmission quality, and the sender responds to this information by adjusting some transmission parameters which temporarily decrease video quality (if the receiver is reporting problems) or increase the video quality (if the receiver is reporting no problems but the quality is less than its target). We present simulation results which indicate that our feedback mechanism can help to maintain audio--video synchronization in Asynchronous Transfer Mode local area networks, as well as reduce the network traffic congestion which leads to glitches in the first place.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126840760","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Jungsoon P. Yoo, Doug Smith, Sung K. Yoo, Thomas J. Cheatham
This study describes a prototype system that creates a rulebase by capturing compiler error messages and uses them as a means for building a decision tree. The rulebase is then used to assist novice programmers with cryptic C-language compiler error messages. The system, called the C-Compiler Error Message Interpreter (C-CEMI), generates a data file which is used by an inductive learning system known as C4.5 to discover the rules. The rulebase is incorporated into a dynamic C-language grading system called Ceilidh.
{"title":"C-language syntax tutoring using machine learning techniques","authors":"Jungsoon P. Yoo, Doug Smith, Sung K. Yoo, Thomas J. Cheatham","doi":"10.1145/2817460.2817469","DOIUrl":"https://doi.org/10.1145/2817460.2817469","url":null,"abstract":"This study describes a prototype system that creates a rulebase by capturing compiler error messages and uses them as a means for building a decision tree. The rulebase is then used to assist novice programmers with cryptic C-language compiler error messages. The system, called the C-Compiler Error Message Interpreter (C-CEMI), generates a data file which is used by an inductive learning system known as C4.5 to discover the rules. The rulebase is incorporated into a dynamic C-language grading system called Ceilidh.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"99 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121154261","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In the channel routing problem, terminals between cells are interconnected completely while reducing channel routing area. The crossing number, the number of crossings between two wires in the channel, is related to the channel routing area. In this paper, we present a parallel algorithm finding a maximum crossing number, density, in the channel by using a LARPBS model (Linear Array with a Reconfigurable Pipelined Bus System), which is based on the advanced fiber optic technology. The maximum crossing number algorithm on the LARPBS model runs in O(n) time using O(n) number of processors, where n is the number of nets in a channel.
{"title":"Maximum crossing number algorithm on linear array with a reconfigurable pipelined bus system","authors":"H. Kimm","doi":"10.1145/2817460.2817475","DOIUrl":"https://doi.org/10.1145/2817460.2817475","url":null,"abstract":"In the channel routing problem, terminals between cells are interconnected completely while reducing channel routing area. The crossing number, the number of crossings between two wires in the channel, is related to the channel routing area. In this paper, we present a parallel algorithm finding a maximum crossing number, density, in the channel by using a LARPBS model (Linear Array with a Reconfigurable Pipelined Bus System), which is based on the advanced fiber optic technology. The maximum crossing number algorithm on the LARPBS model runs in O(n) time using O(n) number of processors, where n is the number of nets in a channel.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121279015","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Timothy W. Dollar, L. Murphy, Kai-Hsiung Chang, B. Lee, Yifang Chang, Jonathan D. Fouss
Most traditional collaborative authoring tools offer some degree of document security and concurrency control. Document security is usually accomplished by allowing users to maintain private windows and to assign private ownership to files, perhaps through operating system mechanisms. Shared portions of a document can be manipulated through shared windows. Some form of concurrency control, such as a locking mechanism, is usually used to provide editors of a shared document with a consistent view of the document. However, few implementations focus on providing security for a document produced by a limited group of collaborators. Instead, these systems provide access to either the owner, or everyone. This paper discusses an organizational paradigm known the Collaboration. Collaborations facilitate group organization, document security, and concurrency control, not through major changes in the operating system or through the introduction of new network protocols, but instead, through features already present in the UNIX operating system and existing network protocols. This paper will also briefly discuss how the Distributed Collaborative Writing Aid (DCWA), a prototype groupware suite, uses the Collaboration paradigm to accomplish these goals.
{"title":"Supporting document organization and security in distributed collaborative authoring systems through the use of collaborations","authors":"Timothy W. Dollar, L. Murphy, Kai-Hsiung Chang, B. Lee, Yifang Chang, Jonathan D. Fouss","doi":"10.1145/2817460.2817513","DOIUrl":"https://doi.org/10.1145/2817460.2817513","url":null,"abstract":"Most traditional collaborative authoring tools offer some degree of document security and concurrency control. Document security is usually accomplished by allowing users to maintain private windows and to assign private ownership to files, perhaps through operating system mechanisms. Shared portions of a document can be manipulated through shared windows. Some form of concurrency control, such as a locking mechanism, is usually used to provide editors of a shared document with a consistent view of the document. However, few implementations focus on providing security for a document produced by a limited group of collaborators. Instead, these systems provide access to either the owner, or everyone. This paper discusses an organizational paradigm known the Collaboration. Collaborations facilitate group organization, document security, and concurrency control, not through major changes in the operating system or through the introduction of new network protocols, but instead, through features already present in the UNIX operating system and existing network protocols. This paper will also briefly discuss how the Distributed Collaborative Writing Aid (DCWA), a prototype groupware suite, uses the Collaboration paradigm to accomplish these goals.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121289393","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this paper, we re-introduce Pandemonium, an early specification for parallel processing through semiautonomous agents. The biggest advantage of the Pandemonium approach is its simplicity, which is achieved by dividing tasks among many computational units. Using Pandemonium as a metaphor, we design an interpreter for general-purpose filtering of text. To demonstrate the applicability of our design, we show how to partially parse and correct a sequence of badly ordered SQL commands. This example is not artificial; the badly ordered commands were generated by a commercial CASE tool for database development and the command set was too large for manual correction. A Pandemonium-style approach has many advantages over using full-blown parser generators and rule-based systems for such tasks.
{"title":"Filtering SQL via the principles of pandemonium","authors":"J. Lusth, N. Jukic","doi":"10.1145/2817460.2817464","DOIUrl":"https://doi.org/10.1145/2817460.2817464","url":null,"abstract":"In this paper, we re-introduce Pandemonium, an early specification for parallel processing through semiautonomous agents. The biggest advantage of the Pandemonium approach is its simplicity, which is achieved by dividing tasks among many computational units. Using Pandemonium as a metaphor, we design an interpreter for general-purpose filtering of text. To demonstrate the applicability of our design, we show how to partially parse and correct a sequence of badly ordered SQL commands. This example is not artificial; the badly ordered commands were generated by a commercial CASE tool for database development and the command set was too large for manual correction. A Pandemonium-style approach has many advantages over using full-blown parser generators and rule-based systems for such tasks.","PeriodicalId":274966,"journal":{"name":"ACM-SE 35","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-04-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129392511","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}