The cache is a general buffer for addressable main memory. The incentives for using a cache are discussed along with the objectives of the cache designer. Three cache organizations; direct mapping, fully associative, and set associative are described using a single notation, and two caches are examined in detail. Interactions between the replacement algorithm and the degree of associativity are discussed as well as other possible approaches to cache design.
{"title":"Cache organizations","authors":"J. J. Rothschild","doi":"10.1145/503506.503524","DOIUrl":"https://doi.org/10.1145/503506.503524","url":null,"abstract":"The cache is a general buffer for addressable main memory. The incentives for using a cache are discussed along with the objectives of the cache designer. Three cache organizations; direct mapping, fully associative, and set associative are described using a single notation, and two caches are examined in detail. Interactions between the replacement algorithm and the degree of associativity are discussed as well as other possible approaches to cache design.","PeriodicalId":258426,"journal":{"name":"ACM-SE 17","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1979-04-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126888733","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}
As programming has evolved from a black art practiced by eccentric geniuses to a common occupation of ordinary persons, the importance of program structure and programming style has been increasingly recognilled. Although there is surely no "theory of programming" yet, there is enough concensus about what techniques have and have not proven effective that this knowledge is being codified and widely disseminated.
{"title":"Implementation of programming standards in a computer science department","authors":"Lionel E. Deimel, Mark Pozefsky","doi":"10.1145/503506.503535","DOIUrl":"https://doi.org/10.1145/503506.503535","url":null,"abstract":"As programming has evolved from a black art practiced by eccentric geniuses to a common occupation of ordinary persons, the importance of program structure and programming style has been increasingly recognilled. Although there is surely no \"theory of programming\" yet, there is enough concensus about what techniques have and have not proven effective that this knowledge is being codified and widely disseminated.","PeriodicalId":258426,"journal":{"name":"ACM-SE 17","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1979-04-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129431106","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}
A compller for a relational language, called MENTAT, has been described and implemented. This compiler takes the high level language of MENTAT and translates it into an intermediate language which allows a user to create, traverse, and obtain data from a physical data model. The data model is constructed to provide a level of non-redundancy within the elements of the relation. However, this structure posed significant problems when attempts were made to produce a deletion algorithm for it. This paper provides a detailed description of the deletion algorithm.
{"title":"Deletion in a relational data base defined on a non-redundant data model","authors":"Marc Oldham","doi":"10.1145/503506.503549","DOIUrl":"https://doi.org/10.1145/503506.503549","url":null,"abstract":"A compller for a relational language, called MENTAT, has been described and implemented. This compiler takes the high level language of MENTAT and translates it into an intermediate language which allows a user to create, traverse, and obtain data from a physical data model. The data model is constructed to provide a level of non-redundancy within the elements of the relation. However, this structure posed significant problems when attempts were made to produce a deletion algorithm for it. This paper provides a detailed description of the deletion algorithm.","PeriodicalId":258426,"journal":{"name":"ACM-SE 17","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1978-04-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128409675","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}