home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / reports / bibs.refer.2010-10-19 < prev    next >
Text File  |  2010-10-19  |  151KB  |  3,102 lines

  1. %A Perianayagam, Somu
  2. %T Rex: A Toolset for Reproducing Software Experiments
  3. %D October 19, 2010
  4. %Z Tue, 19 Oct 10 15:30:00 MST
  5. %R TR10-04
  6. %I The Department of Computer Science, University of Arizona
  7. %U ftp://ftp.cs.arizona.edu/reports/2010
  8. %X Being able to reproduce experiments is the cornerstone of the scientific method. Software experiments are hard to reproduce even if identical hardware is available because external data sets could have changed, software used in the original experiment may be unavailable, or the input parameters for the experiment may not be documented. This paper presents Rex, a toolset that allows one to record an experiment and archive its apparatus, replay an experiment, conduct new experiments, and compare differences between experiments. The execution time overhead of recording experiments is on average about 1.6% and the space overhead of archiving an experiment ranges from 5 to 7GB.
  9. %K
  10. %Y
  11.  
  12. %A Lewis, Russell
  13. %T Bodyguard: Running Protected Applications in Untrusted Operating Systems
  14. %D April 14, 2010
  15. %Z Fri, 21 May 10 10:55:00 MST
  16. %R TR10-03
  17. %I The Department of Computer Science, University of Arizona
  18. %U ftp://ftp.cs.arizona.edu/reports/2010
  19. %X In this thesis, we present a method to run an application within a commodity operating system without
  20. risking either the correctness or privacy of the application should the operating system be
  21. compromised. Using a hypervisor, we invisibly intercept all attempts by the operating system to
  22. corrupt the state of the application or access its data. We accomplish this first by tracking the current
  23. state of the virtual space and verifying all actions by the operating system which might change this
  24. state, and second by replacing the contents of physical pages with randomly generated restorable
  25. signatures when the operating system attempts to access the contents. The system is sufficiently
  26. flexible to allow a binary-unmodified operating system to perform typical tasks such as copy-on-write,
  27. fork(), and swap, and sufficiently automatic that the protected application only needs small
  28. modifications. Finally, we present automatic methods for adapting a legacy application which are able
  29. to provide complete and seamless protection for many applications.
  30. %K keywords
  31. %Y
  32.  
  33. %A Krishnamoorthy, Nithya
  34. %T Static Detection of Disassembly Errors
  35. %D May 14, 2010
  36. %Z Tue, 11 May 10 12:57:06 MST
  37. %R TR10-02
  38. %I The Department of Computer Science, University of Arizona
  39. %U ftp://ftp.cs.arizona.edu/reports/2010
  40. %X The first step in understanding the semantics of a binary executable is to extract the
  41. assembly instructions that could get executed if it is allowed to run. This sequence
  42. of assembly instructions, typically obtained by static disassembly, is assumed to be
  43. correct by many analysis techniques that build on it. However, static disassembly
  44. can be incorrect; there can be accidental errors during disassembly or a disassem-
  45. bler can be deliberately misled by binary obfuscation techniques, rendering this
  46. assumption invalid.
  47. This thesis proposes a machine learning approach to statically identify dis-
  48. assembly errors in a static disassembly, so that such potential errors can be examined
  49. more closely, using, for example, dynamic analysis. We show that a decision tree
  50. classifier that is built using this approach identifies most known disassembly errors
  51. in the malware that we used for evaluation.
  52. %K keywords
  53. %Y
  54.  
  55. %A  Madhavan, Arun
  56. %A  Zhang, Beichuan
  57. %T NAT Traversal by Tunneling
  58. %D May 11, 2010
  59. %Z Tue, 11 May 10 11:34:31 MST
  60. %R TR10-01
  61. %I The Department of Computer Science, University of Arizona
  62. %U ftp://ftp.cs.arizona.edu/reports/2010
  63. %X Network Address Translation (NAT) is widely prevalent solution adopted to
  64. alleviate the IPv4 address exhaustion problem. Due to the use of private IP
  65. addresses on hosts behind the NAT, it is not possible for external hosts to
  66. initiate communication with these hosts. This poses a hurdle to many
  67. emerging applications, such as VoIP and P2P. Although a plethora of NAT
  68. traversal solutions have been proposed in recent years, they suffer
  69. from being application-specific, complex, or requiring some behavioral
  70. compliance from the NAT.
  71. The work presents an simple technique that is generic, works with nested
  72. NATs, is incrementally deployable and only expects minimalistic common
  73. behavior across all NAT implementations. The design includes the use of UDP
  74. tunnels and a sequence of NAT addresses and private IP addresses to uniquely
  75. identify a host. Simple and incrementally deployable changes are proposed to
  76. DNS to learn the addresses.
  77. %K 
  78. %Y
  79.  
  80. %A Fowler, Joe
  81. %A Kobourov, Stephen
  82. %A Estrella-Balderrama, Alejandro
  83. %T Colored Simultaneous Geometric Embeddings and Universal Pointsets
  84. %D 5/14/09
  85. %Z Mon, 05 Jan 09 00:00:00 GMT
  86. %R TR09-02
  87. %I The Department of Computer Science, University of Arizona
  88. %U ftp://ftp.cs.arizona.edu/reports/2009/TR09-02.pdf
  89. %X Universal pointsets can be used for visualizing multiple relationships on
  90. the same set of objects or for visualizing dynamic graph processes. Using the
  91. same point in the plane to represent the same object helps preserve the
  92. viewer.s mental map. Small universal pointsets are highly desirable but often
  93. do not exist because of the restriction that a given object must be mapped
  94. to a fixed point in the plane. In colored simultaneous embeddings this
  95. restriction is relaxed, by allowing a given object to map to a subset of
  96. points in the plane. Specifically, consider a set of graphs on the same set
  97. of n vertices partitioned into k colors. Finding a corresponding set of
  98. k-colored points in the plane in which each vertex is mapped to a point of
  99. the same color so as to allow a straight-line plane drawing of each graph
  100. is the problem of colored simultaneous geometric embedding. For trees, we
  101. show that there exists small universal pointsets (1) for 3-colored
  102. caterpillars of size n, (2) for 3-colored radius-2 stars of size n+3, and
  103. (3) for 2-colored spiders of size n. For outerplanar graphs, we show that
  104. these same universal pointsets also suffice for (1) 3-colored K3-caterpillars,
  105. (2) 3-colored K3-stars, and (3) 2-colored fans, respectively. We also show
  106. that there exist (i) a 2-colored planar graph and pseudo-forest, (ii) three
  107. 3-colored outerplanar graphs, (iii) four 4-colored pseudo-forests, and (iv)
  108. three 5-colored pseudo-forests without simultaneous embeddedings.
  109. %K keywords
  110. %Y
  111.  
  112. %A Perkins, David N.
  113. %T Predicting Secondary Structure of Proteins by Linear and Dynamic Programming
  114. %D April 29, 2009
  115. %Z Mon, 05 Jan 09 00:00:00 GMT
  116. %R TR09-01
  117. %I The Department of Computer Science, University of Arizona
  118. %U ftp://ftp.cs.arizona.edu/reports/2009/TR09-01.pdf
  119. %X Proteins are sequences of amino acids that fold into secondary and tertiary structure, which plays an important role in their function. As biologists have yet to discover the rules that govern how a protein folds in nature from its underlying sequence, this thesis tries a new approach to secondary structure prediction using dynamic programming on the input protein sequence. The sequence is broken into short words, where each word has a probability of folding into the three different types of secondary structure. By combining word probabilities with an abstraction called contexts, which model a run of the same secondary structure type up to a bounded length, the optimal prediction for an entire sequence can be computed via dynamic programming. The structure probabilities for words are learned from a training set of sequences with known secondary structure using linear programming. The combined approach to prediction using linear and dynamic programming achieves high accuracy on protein sequences whose words were observed in the training set, but is far less accurate on sequences with unobserved words not seen in the training set. The challenge for future work lies in interpolating probabilities for unobserved words to achieve improved generalization.
  120. %K keywords
  121. %Y
  122.  
  123. %A Huang, Huilong
  124. %T Efficient Routing in Wireless Ad Hoc Networks
  125. %D August 12, 2008
  126. %Z Mon, 03 Jan 08 00:00:00 GMT
  127. %R TR08-05
  128. %I The Department of Computer Science, University of Arizona
  129. %U ftp://ftp.cs.arizona.edu/reports/2008/TR08-05.pdf
  130. %X abstract (see TR)
  131. %K dissertation
  132. %Y
  133.  
  134. %A Cappos, Justin
  135. %T Stork: Secure Package Management for VM Environments
  136. %D May 6, 2008
  137. %Z Mon, 03 Jan 08 00:00:00 GMT
  138. %R TR08-04
  139. %I The Department of Computer Science, University of Arizona
  140. %U ftp://ftp.cs.arizona.edu/reports/2008/TR08-04.pdf
  141. %X Package managers are a common tool for installing, removing, and
  142. updating software on modern computer systems. Unfortunately existing
  143. package managers have two major problems. First, inadequate security
  144. leads to vulnerability to attack. There are nine feasible attacks against
  145. modern package managers, many of which are enabled by flaws in the
  146. underlying security architecture. Second, in Virtual Machine (VM)
  147. environments such as Xen, VMWare, and VServers, different VMs on the
  148. same physical machine are treated as separate systems by package managers
  149. leading to redundant package downloads and installations.
  150.      This dissertation focuses on the design, development, and evaluation of
  151. a package manager called Stork that does not have these problems. Stork
  152. provides a security architecture that prevents the attacks other package
  153. managers are vulnerable to. Stork also is efficient in VM environments
  154. and reduces redundant package management actions.   Stork is a real system
  155. that has been in use for four years and has managed half a million VM
  156. instantiations.
  157. %K dissertation, Stork
  158. %Y
  159.  
  160. %A Collberg, Christian
  161. %A Nagra, Jasvir
  162. %A Snavely, Will
  163. %T bi`anli.an: Remote Tamper-Resistance with Continuous Replacement
  164. %D March 31, 2008
  165. %Z Mon, 03 Jan 08 00:00:00 GMT
  166. %R TR08-03
  167. %I The Department of Computer Science, University of Arizona
  168. %U ftp://ftp.cs.arizona.edu/reports/2008/TR08-03.pdf
  169. %X In this paper we describe bi`anli.an, a system for producing
  170. tamper-resistant clients programs running over the Internet. The basic
  171. idea is to use continuous replacement of program blocks running on the
  172. client site to make it difficult for an adversary to analyze and modify
  173. the program. There are many potential applications, for example protecting
  174. client programs in networked computer games from being tampered with.
  175. We show the basic design of a continuous replacement system for Java,
  176. including a number of obfuscating and tamperproofing transformations. In
  177. achieving tamper-resistance bi`anli.an incorporates two novel ideas. First,
  178. it maintains an incorrect pool of code on the client such that no snapshot
  179. that an adversary takes contains the complete correct program. In addition,
  180. the type of incorrect code introduced ensures that on different input,
  181. executing the same trace of instructions will produce incorrect results.
  182. Secondly, bi`anli.an achieves scalability through a distributed protection
  183. scheme which allows the server to offload the tamper-detection of one client
  184. to another client.
  185. %K bi`anli.an, tamperproofing, tamper-detection
  186. %Y
  187.  
  188. %A Fowler, Joe
  189. %A Junger, Michael
  190. %A Kobourov, Stephen
  191. %A Schulz, Michael
  192. %T Characterizing Simultaneous Embedding with Fixed Edges
  193. %D February 8, 2008
  194. %Z Mon, 01 Jan 08 00:00:00 GMT
  195. %R TR08-01
  196. %I The Department of Computer Science, University of Arizona
  197. %U ftp://ftp.cs.arizona.edu/reports/2008/TR08-01.ps.Z
  198. %X A set of planar graphs share a simultaneous embedding if they can be
  199. drawn on the same vertex set V in the plane without crossings between edges
  200. of the same graph. Fixed edges are common edges between graphs that share
  201. the same Jordan curve in the simultaneous drawings.While any number of planar
  202. graphs have a simultaneous embedding without fixed edges, determining which
  203. graphs always share a simultaneous embedding with fixed edges (SEFE) has
  204. been open.
  205. We partially close this problem by giving a necessary condition
  206. to determine when pairs of graphs have a SEFE. As a direct application, we
  207. are able to determine for the set of planar graphs P and for the set of
  208. outerplanar graphs O (all vertices lie on an outerface), what the proper
  209. subsets of P and O are that always have a SEFE with all of P and O,
  210. respectively. In both cases, we provide algorithms to compute the
  211. simultaneous drawings. Finally, we provide a polynomial time decision
  212. algorithm for deciding when a specific pair of outerplanar graphs has
  213. a SEFE. Whether two planar graphs have a SEFE can similarly be decided
  214. in polynomial time remains as an open problem.
  215. %K SEFE, vertex, Jordan curve
  216. %Y
  217.  
  218. %A Cappos, Justin
  219. %A Donnelly, Austin
  220. %A Mortier, Richard
  221. %A Narayanan, Dushyanth
  222. %A Rowstron, Antony
  223. %T Cost-aware view materialization for highly distributed datasets
  224. %D Thursday, September 13, 2007
  225. %Z Mon, 03 Jan 05 00:00:00 GMT
  226. %R TR07-05
  227. %I The Department of Computer Science, University of Arizona
  228. %U ftp://ftp.cs.arizona.edu/reports/2007/TR07-05.pdf
  229. %X Querying large datasets distributed over thousands of endsystems is a
  230. challenge for existing distributed querying infrastructures. High data
  231. availability requires either replicating or centralizing the dataset but
  232. both require infeasibly high network bandwidth. In-situ querying provides
  233. low bandwidth overheads but requires users to tolerate low data availability.
  234.      This paper advocates partial data replication, increasing the availability
  235. of a subset of the data through centralization and/or in-network (peer-to-peer)
  236. replication. This is analogous to materializing views in centralized
  237. databases, but where materialized views in centralized databases trade view
  238. update overheads for query overheads, in the distributed case they trade
  239. bandwidth usage for availability. Given an example workload, state-of-the-art
  240. tools for centralized databases are able to determine a set of materialized
  241. views that will improve performance. Key to this is the ability to estimate
  242. view maintenance costs with different hypothetical materialized views. This
  243. paper describes estimation of view maintenance costs in a highly distributed
  244. database. We present metrics that capture the cost of different
  245. materializations, and show that we can estimate these metrics accurately,
  246. efficiently, and scalably on a real distributed dataset.
  247. %K keywords
  248. %Y
  249.  
  250. %A Cappos, Justin
  251. %A Baker, Scott
  252. %A Plichta, Jeremy
  253. %A Nyugen, Duy
  254. %A Hardies, Jason
  255. %A Borgard, Matt
  256. %A Johnston, Jeffry
  257. %A Hartman, John H.
  258. %T Stork: Package Management for Dstributed VM Environments
  259. %D Tuesday, May 15, 2007
  260. %Z Tues, 02 Jan 07 00:00:00 GMT
  261. %R TR07-02
  262. %I The Department of Computer Science, University of Arizona
  263. %U ftp://ftp.cs.arizona.edu/reports/2007/TR07-02.ps.Z
  264. %X In virtual machine environments each application is often run in its
  265. own virtual machine (VM), isolating it from other applications running
  266. on the same physical machine.  Contention for memory, disk space, and
  267. network bandwidth among virtual machines, coupled with an inability to
  268. share due to the isolation virtual machines provide, leads to heavy
  269. resource utilization.  Additionally, VMs increase management overhead
  270. as each is essentially a separate system.
  271.         Stork is a package management tool for virtual machine environments
  272. that is designed to alleviate these problems.  Stork securely and
  273. efficiently downloads packages to physical machines and shares packages
  274. between VMs.  Disk space and memory requirements are reduced because shared
  275. files, such as libraries and binaries, only require one persistent copy per
  276. physical machine.  Experiments show that Stork reduces the disk space
  277. required to install additional copies of a package by over an order of
  278. magnitude, and memory by about 50\%.  Stork downloads each package once
  279. per physical machine no matter how many VMs install it.   The transfer
  280. protocols used during download improve elapsed time by 7X and reduce
  281. repository traffic by an order of magnitude.   Stork users can manage groups
  282. of VMs with the ease of managing a single machine -- even groups that
  283. consist of machines distributed around the world.  Stork is a real service
  284. that has run on PlanetLab for over 4 years and has managed thousands of VMs.
  285. %K keywords
  286. %Y
  287.  
  288. %A Cappos, Justin
  289. %A Hartman, John H.
  290. %T San Fermin: Aggregating Large Data Sets using Dynamic Binomial Trees
  291. %D Monday, May 14, 2007
  292. %Z Tues, 02 Jan 07 00:00:00 GMT
  293. %R TR07-01
  294. %I The Department of Computer Science, University of Arizona
  295. %U ftp://ftp.cs.arizona.edu/reports/2007
  296. %X This paper presents San Fermin, a system for aggregating large data 
  297. sets from the nodes of large-scale distributed systems. Each San Fermin 
  298. node individually computes the aggregated result by dynamically creating 
  299. its own binomial tree as it aggregates data. Nodes that fall behind abort 
  300. their aggregations, thereby reducing overhead. Having each node create its 
  301. own binomial tree makes San Fermin highly resilient to failures, and ensures
  302. that the internal nodes of the tree have high capacity, reducing completion
  303. time without overwhelming nodes.
  304.         Compared to existing solutions San Fermin handles large data sets 
  305. better, has higher completeness when nodes fail, computes the aggregated 
  306. result faster, and has better scalability. We analyze the completion time, 
  307. completeness, and overhead of San Fermin versus existing solutions using 
  308. analytical models, simulation, and experimentation with a prototype deployed 
  309. on PlanetLab. Our evaluation shows that San Fermin is scalable both in the 
  310. number of nodes and in the size of the data being aggregated. With 10% 
  311. node failures during aggregation, San Fermin still returns the answer from 
  312. over 97% of the nodes and in most cases does so faster than the underlying DHT recovers from failures.
  313. %K keywords
  314.  
  315. %A Fowler, J. Joseph
  316. %A Kobourov, Stephen G.
  317. %T Characterization of Unlabeled Level Planar Graphs
  318. %D Monday, December 4, 2006
  319. %Z Mon, 03 Jan 06 00:00:00 GMT
  320. %R TR06-04
  321. %I The Department of Computer Science, University of Arizona
  322. %U ftp://ftp.cs.arizona.edu/reports/2006/TR06-04.ps.Z
  323. %X abstract
  324. %K keywords
  325. %Y
  326.  
  327. %A Zhang, Beichuan
  328. %A Kambhampati, Vamsi
  329. %A Massey, Daniel
  330. %A Oliveira, Ricardo
  331. %A Pei, Dan
  332. %A Wang, Lan
  333. %A Zhang, Lixia
  334. %T A Secure and Scalable Internet Routing Architecture (SIRA)
  335. %D Tuesday, April 4, 2006
  336. %Z Mon, 03 Jan 06 00:00:00 GMT
  337. %R TR06-01
  338. %I The Department of Computer Science, University of Arizona
  339. %U ftp://ftp.cs.arizona.edu/reports/2006/TR06-01.ps.Z
  340. %X Today's Internet routing architecture faces many challenges, ranging
  341. from scaling problems, security threats, poor fault diagnosis to inadequate
  342. support for traffic engineering and customer multihoming.  By analyzing
  343. these  challenges and learning lessons from previously proposed solutions,
  344. we gain two fundamental insights for designing a secure and scalable
  345. routing architecture: cutting a clear boundary between customer networks
  346. and transit  providers, and embedding essential information in the
  347. address structure.  We propose the Secure and Scalable Internet Routing
  348. Architecture  (SIRA), a clean-slate design that separates provider
  349. networks from customer  networks and embeds organization and location
  350. information in address structure.
  351. The resulting system provides dramatic improvements in scalability, security,
  352. fault diagnosis, and multihoming and traffic engineering support. We also
  353. identify new design issues raised by SIRA and sketch out straw-man solutions.
  354. %K keyword
  355. %Y
  356.  
  357. %A Rao, Praveen
  358. %A Moon, Bongki
  359. %T psiX: Hierarchical Distributed Index for Efficiently Locating XML Data
  360. in Peer-to-Peer Networks
  361. %D Monday, March 13, 2006
  362. %Z Mon, 03 Jan 05 00:00:00 GMT
  363. %R TR05-10
  364. %I The Department of Computer Science, University of Arizona
  365. %U ftp://ftp.cs.arizona.edu/reports/
  366. %X This report has been superseded by a UMKC-TR
  367. %K keywords
  368. %Y 
  369.  
  370. %A Barnard, Kobus
  371. %A Fan, Quanfu
  372. %A Swaminathan, Ranjini
  373. %A Hoogs, Anthony
  374. %A Collins, Roderic
  375. %A Rondot, Pascale
  376. %A Kaufhold, John
  377. %T Evaluation of localized semantics: data, methodology, and experiments
  378. %D Monday, October 31, 2005
  379. %Z Mon, 03 Jan 05 00:00:00 GMT
  380. %R TR05-08
  381. %I The Department of Computer Science, University of Arizona
  382. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-08.ps
  383. %X We present a new data set encoding localized semantics for 1014 images and a
  384. methodology for using this kind of data for recognition evaluation. This
  385. methodology establishes protocols for mapping algorithm specific localization
  386. (e.g., segmentations) to our data, handling synonyms, scoring matches at
  387. different levels of specificity, dealing with vocabularies with sense ambiguity
  388. (the usual case), and handling ground truth regions with multiple labels. Given
  389. these protocols, we develop two evaluation approaches. The first measures the
  390. range of semantics that an algorithm can recognize, and the second measures the
  391. frequency that an algorithm recognizes semantics correctly. The data, the image
  392. labeling tool, and programs implementing our evaluation strategy are all
  393. available on-line (kobus.ca//research/data/IJCV).
  394.     We apply this infrastructure to evaluate four algorithms which learn to
  395. label image regions from weakly labeled data. The algorithms tested include two
  396. variants of multiple instance learning, and two generative multi-modal mixture
  397. models. These experiments are on a significantly larger scale than previously
  398. reported, especially in the case of the multiple instance learning. More
  399. specifically, we used training data sets up to 37,000 images and training
  400. vocabularies of up to 650 words.
  401.     We found that image level word prediction, which is a cheaper evaluation
  402. alternative, does not correlate well with region labeling performance, thus
  403. validating the need for region level analysis. We also found that for the
  404. measures sensitive to occurrence statistics, we needed to provide the multiple
  405. instance learning methods with an appropriate prior for good performance. With
  406. that modification used when appropriate, we found that the EMDD multiple
  407. instance learning method gave the best overall performance over three tasks,
  408. with one of the generative multi-mixture models giving the best performance on
  409. one of them.
  410. %K keywords
  411. %Y
  412.  
  413. %A Kobourov, Stephen
  414. %A Iyer, Anand
  415. %A Efrat, Alon
  416. %A Erten, Cesim
  417. %A Forrester, David
  418. %T A Force-Directed Approach to Sensor Localization
  419. %D Friday, July 15, 2005
  420. %Z Mon, 03 Jan 05 00:00:00 GMT
  421. %R TR05-07
  422. %I The Department of Computer Science, University of Arizona
  423. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-07.ps
  424. %X abstract
  425. %K keywords
  426. %Y
  427.  
  428. %A Kobourov, Stephen
  429. %A Cappos, Justin
  430. %T Outerplanar Graphs and Trees on Tracks
  431. %D Friday, July 15, 2005
  432. %Z Mon, 03 Jan 05 00:00:00 GMT
  433. %R TR05-06
  434. %I The Department of Computer Science, University of Arizona
  435. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-06.ps
  436. %X abstract
  437. %K keywords
  438. %Y
  439.  
  440. %A Kobourov, Stephen
  441. %A Landis, Matthew
  442. %T Morphing Planar Graphs in Spherical Space
  443. %D Friday, July 15, 2005
  444. %Z Mon, 03 Jan 05 00:00:00 GMT
  445. %R TR05-05
  446. %I The Department of Computer Science, University of Arizona
  447. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-05.ps
  448. %X abstract
  449. %K keywords
  450. %Y
  451.  
  452. %A Collberg, Christian
  453. %A Kobourov, Stephen
  454. %A Hutcheson, C.
  455. %A Trimble, J.
  456. %A Stepp, Michael
  457. %T Monitoring Java Programs Using Music
  458. %D Wednesday, June 15, 2005
  459. %Z Mon, 03 Jan 05 00:00:00 GMT
  460. %R TR05-04
  461. %I The Department of Computer Science, University of Arizona
  462. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-04.ps.Z
  463. %X    We present jmusic, a tool to analyze the run-time behavior of
  464. a Java program.  Unlike other profiling systems, this one presents
  465. its results to the user as {\em music}. Using audio in addition to more
  466. standard visual methods of presentation allows more attempt at presenting
  467. profiling information as computer-generated music. The tool is
  468. specification-driven, allowing users complete control over what profiling
  469. information to present, and what type of (MIDI) music to generate for
  470. different situations.  We discuss the system design and implementation,
  471. as well as present several examples.
  472. %K jmusic, run-time, Java
  473. %Y
  474.  
  475. %A Rajagopolan, Mohan
  476. %A Debray, Saumya
  477. %A Hiltunen, Matti
  478. %A Schlichting, Richard
  479. %T Automatic Operating System Specialization via Binary Rewriting
  480. %D Monday, May 9, 2005
  481. %Z Mon, 03 Jan 05 00:00:00 GMT
  482. %R TR05-03
  483. %I The Department of Computer Science, University of Arizona
  484. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-03.ps.Z
  485. %X This paper explores the application of binary rewriting techniques
  486. to customization of operating system kernels. Specifically, this paper
  487. describes a new binary rewriting system, {\it Charon}, and its
  488. application to the synthesis of application-specific operating systems.
  489. Compiler techniques are used to analyze and transform the kernel
  490. based on holistic knowledge of the system. Preliminary experiments
  491. have been promising and argue persuasively that more
  492. opportunities for automation should be explored.
  493. %K keywords
  494. %Y
  495.  
  496. %A Cappos, Justin
  497. %A Hartman, John
  498. %T A Resource Allocation Framework for Global Service-Oriented Networks
  499. %D Thursday, February 24, 2005
  500. %Z Mon, 03 Jan 05 00:00:00 GMT
  501. %R TR05-02
  502. %I The Department of Computer Science, University of Arizona
  503. %U ftp://ftp.cs.arizona.edu/reports/2005/TR05-02.ps
  504. %X We study the problem of allocating resources on global networks where there
  505. is no central administrative control.   We describe a framework that
  506. abstractly describes a number of components that are necessary in an
  507. auction system to provide users with a secure trading environment.   We
  508. propose solutions for specific issues relating to auction granularity,
  509. cost/value effective bidding, bids on large resource sets, currency
  510. control, and computationally effective auction resolution.   We then
  511. describe the application of our framework to PlanetLab and how the
  512. components would be implemented on this system.
  513. %K keywords
  514. %Y
  515.  
  516. %A Rajagopalan, Mohan
  517. %A Baker, Scott
  518. %A Debray, Saumya K.
  519. %A Hiltunen, Matti
  520. %A Schlichting, Richard D.
  521. %A Hartman, John
  522. %T System Call Signatures and Hidden Fingerprints
  523. %D Wednesday, December 22, 2004
  524. %Z Wed, 03 Jan 04 00:00:00 GMT
  525. %R TR04-15
  526. %I The Department of Computer Science, University of Arizona
  527. %U ftp://ftp.cs.arizona.edu/reports/2004
  528. %X Remote code injection attacks against computer systems
  529. are occurring at an alarming frequency. A crucial aspect
  530. of such attacks is that in order to do any real damage,
  531. the injected attack code has to execute system calls, and
  532. therefore can be foiled by suitably hardening the system
  533. call interface. Most current proposals for doing so, however,
  534. suffer from various shortcomings, such as relying
  535. on special compilers or libraries, or incurring huge runtime
  536. overheads, or being vulnerable to mimicry attacks.
  537. This paper describes a systematic approach to defending
  538. against remote code injection attacks that uses two complementary
  539. techniques: cryptographic signatures to protect
  540. system calls themselves, and compiler-based techniques
  541. to hide code fingerprints that could be exploited
  542. for mimicry attacks. Experiments indicate that our approach
  543. is effective against a wide variety of attacks at
  544. modest cost.
  545. %K keywords
  546. %Y
  547.  
  548. %A Barnard, Kobus
  549. %A Johnson, Matthew
  550. %T Word Sense Disambiguation with Pictures
  551. %D Monday, August 9, 2004
  552. %Z Wed, 03 Jan 04 00:00:00 GMT
  553. %R TR04-12
  554. %I The Department of Computer Science, University of Arizona
  555. %U ftp://ftp.cs.arizona.edu/reports/2004/
  556. %X We introduce using images for word sense disambiguation, either alone, or
  557. in conjunction with traditional text based methods. The approach is based on
  558. a recently developed method for automatically annotating images by using a
  559. statistical model for the joint probability for image regions and words.
  560. The model itself is learned from a data base of images with associated text.
  561. To use the model for word sense disambiguation, we constrain the predicted
  562. words to be possible senses for the word under consideration. When word
  563. prediction is constrained to a narrow set of choices (such as possible senses),
  564. it can be quite reliable.  We report on experiments using the resulting
  565. sense probabilities as is, as well as augmenting a state of the art text
  566. based word sense disambiguation algorithm.  In order to evaluate our approach,
  567. we developed a new corpus, ImCor, which consists of a substantive portion
  568. of the Corel image data set associated with disambiguated text drawn from the
  569. SemCor corpus. Our experiments using this corpus suggest that visual
  570. information can be very useful in disambiguating word senses. It also
  571. illustrates that associated non-textual information such as image data can
  572. help ground language meaning.
  573. Please note: This TR has been superseeded by the
  574. http://kobus.ca/research/publications/AIJ-WSD AIJ version.
  575. %K keywords
  576. %Y
  577.  
  578. %A Collberg, Christian
  579. %A Myles, Ginger
  580. %A Stepp, Michael
  581. %T An Empirical Study of Java Bytecode Programs
  582. %D Thursday, August 5, 2004
  583. %Z Wed, 03 Jan 04 00:00:00 GMT
  584. %R TR04-11
  585. %I The Department of Computer Science, University of Arizona
  586. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-11.ps
  587. %X We present a study of the static structure of real Java bytecode
  588. programs. A total of 1132 Java jar- les were collected from the Internet
  589. and analyzed. In addition to simple counts (number of methods per class,
  590. number of bytecode instructions per method, etc.), structural metrics such
  591. as the complexity of control- ow and inheritance graphs were computed. We
  592. believe this study will be valuable in the design of future programming
  593. languages and virtual machine instruction sets, as well as in the ef cient
  594. implementation of compilers and other language processors.
  595. %K keywords
  596. %Y
  597.  
  598. %A Collberg, Christian
  599. %A Proebsting, Todd A.
  600. %T AlgoVista - A Tool for Classifying Algorithmic Problems and Combinatorial
  601. Structures
  602. %D Wed, April 28, 2004
  603. %Z Wed, 03 Jan 04 00:00:00 GMT
  604. %R TR04-09
  605. %I The Department of Computer Science, University of Arizona
  606. %U ftp://ftp.cs.arizona.edu/reports/2004
  607. %X AlgoVista is a web-based search engine that assists programmers to
  608. classify algorithmic problems and combinatorial structures.  AlgoVista is
  609. not keyword based but rather requires users to provide --- in a very simple
  610. query language ---  input==>output samples that give a rough description of
  611. the behavior of their needed algorithm.  AlgoVista also allows algorithm
  612. designers to advertise their results in a forum accessible to programmers
  613. and theoreticians alike.
  614.      AlgoVista's search mechanism is based on a novel application of program
  615. checking, a technique developed as an alternative to program verification and
  616. testing.
  617.      The current AlgoVista database consists of over 300 problem descriptions
  618. including problems on graphs, trees, matrices, vectors, sets, numbers, and
  619. geometric objects.
  620.      AlgoVista can be searched textually as well as visually. A user creates
  621. a visual query by simply drawing it on the canvas of a web browser. Visual
  622. queries are parsed into their textual counter-part by an algorithm that
  623. relies on user input to resolve ambiguities.
  624.      AlgoVista operates at http://algovista.cs.arizona.edu.
  625. %K keywords
  626. %Y
  627.  
  628. %A Collberg, Christian
  629. %A Thomborson, Clark
  630. %A Townsend, Gregg M.
  631. %T Dynamic Graph-Based Software Watermarking
  632. %D Wed, April 28, 2004
  633. %Z Wed, 03 Jan 04 00:00:00 GMT
  634. %R TR04-08
  635. %I The Department of Computer Science, University of Arizona
  636. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-08.ps
  637. %X Watermarking embeds a secret message into a cover message. In media
  638. watermarking the secret is usually a copyright notice and the cover a
  639. digital image. Watermarking an object discourages intellectual property
  640. theft, or when such theft has occurred, allows us to prove ownership.
  641.      The Software Watermarking problem can be described as follows. Embed
  642. a structure $W$ into a program $P$ such that: $W$ can be reliably located
  643. and extracted from $P$ even after $P$ has been subjected to code
  644. transformations such as translation, optimization and obfuscation; $W$
  645. is stealthy; $W$ has a high data rate; embedding $W$ into $P$ does not
  646. adversely affect the performance of $P$; and $W$ has a mathematical property
  647. that allows us to argue that its presence in $P$ is the result of deliberate
  648. actions.
  649.      In this paper we describe a software watermarking technique in which
  650. a dynamic graph watermark is stored in the execution state of a program.
  651. Because of the hardness of pointer alias analysis such watermarks are
  652. difficult to attack automatically.
  653. %K keywords
  654. %Y
  655.  
  656. %A Sahoo, Tapas Ranjan
  657. %A Collberg, Christian
  658. %T Software Watermarking in the Frequency Domain: Implementation, Analysis, and
  659. Attacks
  660. %D Wednesday, March 3, 2004
  661. %Z Wed, 03 Jan 04 00:00:00 GMT
  662. %R TR04-07
  663. %I The Department of Computer Science, University of Arizona
  664. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-07.ps.Z
  665. %X In this paper we analyze the \SHKQ\ software watermarking algorithm,
  666. originally due to Stern, Hachez, Koeune and Quisquater.  The algorithm has
  667. been implemented within the \SM\ framework, a system designed to allow
  668. effective study of software protection algorithms (such as code obfuscation,
  669. software watermarking, and code tamper-proofing) targeting Java bytecode.
  670.    The SHKQ algorithm embeds a watermark in a program using a spread spectrum
  671. technique. The idea is to spread the watermark over the entire application by
  672. modifying instruction frequencies. Spreading the watermark over the code
  673. provides a high level of stealth and some manner of resilience against attack.
  674.    In this paper we describe the implementation of the \SHKQ\ algorithm, in
  675. particular the issues that arise when targeting Java bytecodes.  We then
  676. present an empirical examination of the robustness of the watermark against
  677. a wide variety of attacks. We conclude that \SHKQ, while stealthy, is easily
  678. attacked by simple distortive transformations.
  679. %K keywords
  680. %Y
  681.  
  682. %A Collberg, Christian
  683. %A Huntwork, Andrew
  684. %A Carter, Edward
  685. %A Townsend, Gregg
  686. %T Graph Theoretic Software Watermarks: Implementation, Analysis, and Attacks
  687. %D Wednesday, March 3, 2004
  688. %Z Wed, 03 Jan 04 00:00:00 GMT
  689. %R TR04-06
  690. %I The Department of Computer Science, University of Arizona
  691. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-06.ps.Z
  692. %X This paper presents an implementation of the novel watermarking method
  693. proposed by Venkatesan, Vazirani, and Sinha in their recent paper
  694. {\em A Graph Theoretic Approach to Software Watermarking}.  An executable
  695. program is marked by the addition of code for which the topology of the
  696. control-flow graph encodes a watermark.  We discuss issues that were
  697. identified during construction of an actual implementation that operates
  698. on Java bytecode.  We measure the size and time overhead of watermarking,
  699. and evaluate the algorithm against a variety of attacks.
  700. %K keywords
  701. %Y
  702.  
  703. %A Collberg, Christian
  704. %A Myles, Ginger
  705. %A Stepp, Michael
  706. %T Cheating Cheating Detectors
  707. %D Wednesday, March 3, 2004
  708. %Z Wed, 03 Jan 04 00:00:00 GMT
  709. %R TR04-05
  710. %I The Department of Computer Science, University of Arizona
  711. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-05.ps.Z
  712. %X In this paper we present a new cheating technique that is successful at
  713. defeating cheating detectors and could become popular with students. The
  714. idea is to use obfuscating code transformations (such as those found in the
  715. \SM\ tool) to apply a sequence of minor code transformations to a copied
  716. programming assignment. This purpose is to produce a copy that will defeat
  717. detection. We show that this technique is successful in defeating common
  718. plagiarism detectors such as Moss.
  719.    This paper is offered as a cautionary tale to the Computer Science
  720. teaching community. With the advent of powerful code transformation tools
  721. it will become necessary to develop correspondingly more powerful cheating
  722. detectors, or to revert back to manually testing for plagiarism.
  723. %K keywords
  724. %Y
  725.  
  726. %A Rao, Praveen
  727. %A Moon, Bongki
  728. %T Approximate Tree Pattern Counts over (Streaming) Labeled Trees
  729. %D Thursday, July 7, 2005
  730. %Z Wed, 03 Jan 04 00:00:00 GMT
  731. %R TR04-04
  732. %I The Department of Computer Science, University of Arizona
  733. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-04.ps.Z
  734. %X There has been a growing interest in developing online approximation
  735. algorithms for data streams that use only limited amounts of memory.
  736. With XML emerging as a standard for data interchange on the Internet, we
  737. believe that the problem of counting twig patterns over streaming XML is
  738. worth addressing.  In this paper, we address the problem of approximately
  739. counting twig patterns over a stream of XML document trees that are looked
  740. at only once and appear in a fixed order. We propose a novel approximation
  741. algorithm called k-TwigSketch that computes a synopsis of the stream in one
  742. pass using a limited amount of memory.  k-TwigSketch provides approximate
  743. answers for twig counts with provably strong error guarantees.  Furthermore,
  744. we propose an effective optimization called SHUFFLE that can be applied to
  745. k-TwigSketch to reduce the memory requirements for estimating twig counts
  746. with a particular relative error guarantee. Experimental results on real
  747. and synthetic datasets demonstrate that k-TwigSketch can estimate twig
  748. counts within 10% relative errors with high confidence by using small amounts
  749. of memory. Further, we observed that the proposed optimization SHUFFLE can
  750. achieve significant memory reduction.
  751. %K updated
  752. %Y
  753.  
  754. %A Heffner, Kelly
  755. %A Collberg, Christian
  756. %T The Obfuscation Executive
  757. %D Friday, February 27, 2004
  758. %Z Wed, 03 Jan 04 00:00:00 GMT
  759. %R TR04-03
  760. %I The Department of Computer Science, University of Arizona
  761. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-03.ps.Z
  762. %X Code obfuscations are semantics-preserving code transformations used to
  763. protect a program from reverse engineering.  There is generally no expectation
  764. of complete, long-term, protection. Rather, there is a trade-off between the
  765. protection afforded by an obfuscation (i.e. the amount of resources an
  766. adversary has to expend to overcome the layer of confusion added by the
  767. transformation) and the resulting performance overhead.
  768.   An obfuscation tool will generally apply a series of obfuscation algorithms
  769. to the same application. While each individual obfuscation may add a trivial
  770. amount of confusion, the layering of and interaction between the different
  771. transformations can result in a highly obfuscated application.
  772.   In this paper we examine the problems that arise when constructing an
  773. {\em Obfuscation Executive}.  This is the main loop in charge of a) selecting
  774. the part of the application to be obfuscated next, b) choosing the best
  775. transformation to apply to this part, c) evaluating how much confusion and
  776. overhead has been added to the application, and d) deciding when the
  777. obfuscation process should terminate.
  778. %K keywords
  779. %Y
  780.  
  781. %A Hartman, John
  782. %A Collberg, Christian
  783. %A Babu, Sridivya
  784. %A Udupa, Sharath K.
  785. %T Slinky: Static Linking Reloaded
  786. %D Friday, February 27, 2004
  787. %Z Wed, 03 Jan 04 00:00:00 GMT
  788. %R TR04-02
  789. %I The Department of Computer Science, University of Arizona
  790. %U ftp://ftp.cs.arizona.edu/reports/2004/TR04-02.ps.Z
  791. %X Static linking has many advantages over dynamic linking. It is simple to
  792. understand, implement, and use. It ensures that an executable is self-contained
  793. and does not require a particular set of libraries during execution. As a
  794. consequence, the executable image that was tested by the developer is exactly
  795. the same as gets executed by the user, diminishing the risk that the user's
  796. environment will affect correct behavior.
  797.   The major disadvantages of static linking are increases in the memory
  798. required to run an executable, network bandwidth to transfer it, and disk
  799. space to store it.
  800.   In this paper we describe the \slinky\ system that uses digest-based sharing
  801. to combine the simplicity of static linking with the space savings of dynamic
  802. linking: \slinky\ executables are completely self-contained and minimal
  803. performance and disk-space penalties are incurred if two executables use the
  804. same library.  We have developed a \slinky\ prototype that consists of tools
  805. for adding digests to executables, and a slight modification of the Linux
  806. kernel to use those digests to share code pages.  Results show that our
  807. unoptimized prototype has a performance decrease of at most 4\% and a space
  808. increase of 40\% relative to dynamic linking.
  809. %K keywords
  810. %Y
  811.  
  812. %A Rajagopalan, Mohan
  813. %A Debray, Saumya K.
  814. %A Hiltunen, Matti A.
  815. %A Schlichting, Richard D.
  816. %T Reducing the energy cost of application/OS Interactions
  817. %D Tuesday, October 21, 2003
  818. %Z Wed, 03 Jan 04 00:00:00 GMT
  819. %R TR03-19
  820. %I The Department of Computer Science, University of Arizona
  821. %U ftp://ftp.cs.arizona.edu/reports/2003/TR03-19.ps
  822. %X Software approaches to power optimization have traditionally
  823. had two distinct foci, in relative isolation,
  824. targeting either individual applications (compilationbased
  825. techniques) or global (operating system) policies.
  826. Dynamic interactions between the application
  827. and operating system through system calls, which
  828. can potentially have a large impact on overall performance
  829. and power consumption, remain largely unoptimized
  830. due to the partitioning of concerns. This
  831. paper discusses the energy implications of a new system
  832. call clustering optimization technique for reducing
  833. application/OS interaction costs that is based on
  834. a novel multi-call mechanism. Preliminary results
  835. on common utility programs such as the mpeg play
  836. video decoder have been promising.
  837. %K keywords
  838. %Y
  839.  
  840. %A Kollipara, Siva
  841. %T Applying Network Processors to Header Compression
  842. %D Monday, October 20, 2003
  843. %Z Wed, 03 Jan 00 00:00:00 GMT
  844. %R TR03-17
  845. %I The Department of Computer Science, University of Arizona
  846. %U ftp://ftp.cs.arizona.edu/reports/2003/TR03-17.ps.Z
  847. %X Network Processors (NPs) are highly specialized processors optimized to
  848. handle protocol processing, with possibly including many other services like
  849. QoS, Statistics, Compression-Decompression etc, at highest speeds possible.
  850. Many vendors like Intel, IBM etc., have released powerful silicon for this
  851. market. NPs represent the Holy Grail  the panacea of network bottlenecks.
  852. Even though the architectural design of these various NPs varies significantly,
  853. the architectural principles/goals/ideas/requirements are almost similar - to
  854. achieve network processing at highest speeds possible with low latency. The
  855. programmability and parallel nature of these processor chips make them an
  856. ideal choice when high performance and ability to quickly adapt to new network
  857. standards are the requirements.
  858.    This report briefly describes the need for header compression in the
  859. Internet today and provides an analysis of the evolution of CRTP header
  860. compression design, using the IXP2X00. This was a particularly difficult
  861. challenge due to the fact that the order of packets is important. Reordering
  862. is not admissible since the compression (decompression) of each valid packet
  863. makes changes to the context, which is used for the compression (decompression)
  864. of the next packet. We also have time constraints to consider based on bus
  865. width, bus clock speed, processor clock speed, pipelining, network data rate
  866. (keeping in mind the link layer, physical layer overhead) and packet
  867. processing. Say some "x" bus ops/pkt and "y" CPU ops/pkt. At this rate,
  868. for each packet, buffers must be allocated, the packet must be received,
  869. stored in DRAM, header verified, classified, evaluated as to whether it
  870. should be dropped, compressed (decompressed), context updated, previous
  871. header stripped, new compressed (decompressed) header prepended, statistic
  872. counters updated, (multi-field and destination lookups performed for
  873. destination,) enqueued for transmit, transmitted, and buffers freed. This
  874. report chronicles the issues encountered and solutions devised to achieve
  875. header compression. The necessary concepts of context/functional pipeline,
  876. critical sections, signaling and ring buffers are defined with references.
  877. The CRTP pipe stages are described.
  878. %K keywords
  879. %Y
  880.  
  881. %A Kollipara, Siva
  882. %T Venti FS: A Hash Based File System
  883. %D Monday, October 20, 2003
  884. %Z Wed, 03 Jan 00 00:00:00 GMT
  885. %R TR03-16
  886. %I The Department of Computer Science, University of Arizona
  887. %U ftp://ftp.cs.arizona.edu/reports/2003/TR03-16.ps.Z
  888. %X Venti, a network storage system, is a write-once archival repository.
  889. It provides a block level interface and uses unique hashes (SHA1 hash) to
  890. identify these blocks. These hashes can be used to identify duplicate blocks
  891. and thus eliminate redundant duplication of blocks and reduce storage
  892. consumption. A direct mapping between hashes and disk addresses is not
  893. possible, therefore an indexer is used to map the hashes to Venti disk
  894. addresses. Venti can be used as a building block for constructing a variety
  895. of storage applications such as logical backup, physical backup and snapshot
  896. file systems.
  897.    Most file systems to date use fixed size blocks. Fixed size blocks limit
  898. the amount of duplication possible. However by breaking files into variable
  899. sized blocks based on the identification of anchor or break points, duplication
  900. can be increased and cross file similarities can be exploited efficiently.
  901.    We have built a file system on top of Venti and investigated the
  902. implications of several design decisions:
  903. 1. Use of different searching algorithms (B-Tree / Binary Tree) in indexer;
  904. 2. Variable Sized blocks instead of fixed size blocks.
  905.    We present some performance results that measure the average execution
  906. time for various operations of the file system and also analyze the impact
  907. of the design decisions made.
  908. %K keywords
  909. %Y
  910.  
  911. %A Kollipara, Siva
  912. %T SENSE: A Toolkit for Stick-e Frameworks
  913. %D Monday, October 20, 2003
  914. %Z Wed, 03 Jan 00 00:00:00 GMT
  915. %R TR03-15
  916. %I The Department of Computer Science, University of Arizona
  917. %U ftp://ftp.cs.arizona.edu/reports/2003/TR03-15.ps.Z
  918. %X Context-aware applications are gaining popularity and are hot research
  919. topics. As context-aware devices hit the market these kinds of applications
  920. will become common. This paper presents one such application that takes
  921. advantage of context-awareness - Electronic Post-It Note. This application
  922. consists of presenting information to the user as he enters a given context.
  923. There are already some existing E-Post-It Note software, but these are too
  924. application/field oriented; thus lacking the broadness that would make this
  925. a "killer" application. This project aims at providing a generic E-Post-It
  926. Note application that can support various end-user devices, enhanced/enriched
  927. contexts and even a combination of contexts!
  928.    The increase in the number of handheld devices and active research in the
  929. field of Context Aware Computing has led to a growing interest in the
  930. development of platforms and toolkits for context aware applications. In
  931. this paper we present the experiences in designing and implementing SENSE:
  932. An e-note toolkit for context aware applications. SENSE provides a platform
  933. to develop applications like campus guides that are both passive and active
  934. context aware.
  935. %K keywords
  936. %Y
  937.  
  938. %A Arango, Jesus
  939. %T Virtual IP Machines: A System Framework for Emulating Multiple IP Hosts
  940. %D Friday, October 10, 2003
  941. %Z Wed, 03 Jan 00 00:00:00 GMT
  942. %R TR03-14
  943. %I The Department of Computer Science, University of Arizona
  944. %U ftp://ftp.cs.arizona.edu/reports/2003
  945. %X This paper proposes a framework for emulating multiple IP hosts (virtual IP
  946. machines) inside a single system kernel. By augmenting and restructuring
  947. certain system components, the framework can provide an emulation and
  948. testing environment where a single system is capable of transparently
  949. representing multiple IP hosts comprising a virtual network.
  950.      The main advantage of the framework is that existing protocols,
  951. applications and network configuration utilities may execute under multiple
  952. virtual IP machines without being modified nor recompiled. The framework
  953. significantly reduces the equipment and spatial resources required by test
  954. beds and laboratory environments to appropriately conduct experiments and
  955. emulations.
  956.      This paper describes the architecture of the framework. We  also
  957. describe our implementation in the Linux kernel and analyze the performance
  958. and scalability of the framework based on the results obtained from experiments
  959. conducted on our implementation.
  960. %K keywords
  961. %Y
  962.  
  963. %A Arango, Jesus
  964. %A Degermark, Mikael
  965. %A Efrat, Alon
  966. %T An Efficient Flooding Algorithm for Mobile Ad-hoc Networks
  967. %D Friday, October 10, 2003
  968. %Z Wed, 03 Jan 03 00:00:00 GMT
  969. %R TR03-13
  970. %I The Department of Computer Science, University of Arizona
  971. %U ftp://ftp.cs.arizona.edu/reports/2003/
  972. %X We present a bandwidth-efficient flooding algorithm intended for use in
  973. wireless ad-hoc networks, and demonstrate its viability by simulation.
  974. Flooding algorithms solve the problem of delivering a message to all nodes
  975. in a network. With standard flooding algorithms, each node broadcasts
  976. received messages being flooded in order to ensure delivery to all nodes in
  977. the network. Our simulations show that the new algorithm is able to achieve
  978. a significant reduction in the number of broadcasts required to reach all
  979. nodes while still being able to maintain high coverage and low latencies.
  980. The number of broadcast messages required decreases with increasing node
  981. density, with an overhead reduction of 57% at a node density of 6.56. The
  982. new algorithm is simple to implement and does not require any additional
  983. protocol messages.
  984. %K keywords
  985. %Y
  986.  
  987. %A Visvanathan, Srinivas
  988. %A Hartman, John H.
  989. %T Exploiting Trust in Peer-to-Peer Systems
  990. %D Tuesday, August 5, 2003
  991. %Z Wed, 03 Jan 00 00:00:00 GMT
  992. %R TR03-09
  993. %I The Department of Computer Science, University of Arizona
  994. %U ftp://ftp.cs.arizona.edu/reports/2003/TR03-09.ps.Z
  995. %X Second generation peer-to-peer systems have shown a lot of promise with
  996. many desirable properties such as scalability, self-configuration, automatic
  997. load balancing etc. However the open nature of these systems also makes them
  998. vulnerable to Byzantine attacks.
  999.    These systems are designed to be fault tolerant in the presence of a few
  1000. malicious nodes. We however believe that even a handful of evil nodes could
  1001. disrupt the system by exploiting certain weaknesses that we have identified.
  1002. In these systems, a single malicious node, can present multiple identities
  1003. to the system. This allows them to emulate multiple nodes simultaneously and
  1004. also allows them limited control of their placement in overlay networks that
  1005. are integral to the system. We devised attacks based on these weaknesses to
  1006. disrupt lookup and storage operations in the peer-to-peer storage systems,
  1007. CFS and PAST. We show that it is possible to exploit these weaknesses to
  1008. attack these systems and have evaluated the feasibility of these attacks.
  1009. %K keywords
  1010. %Y
  1011.  
  1012. %A Siva Kollipara
  1013. %T SFSRO LITE - A Self-Certifying Read-Write File System
  1014. %D Thursday, June 26, 2003
  1015. %Z Wed, 03 Jan 03 00:00:00 GMT
  1016. %R TR03-07
  1017. %I The Department of Computer Science, University of Arizona
  1018. %U ftp://ftp.cs.arizona.edu/reports/2003
  1019. %X This report presents a read-write version of SFSRO. SFSRO [2], a
  1020. self-certifying read-only file system, is a content distribution system
  1021. providing secure, scalable read-only access to data. Since the data exists
  1022. as a database, the read-only file system structure is too tightly coupled
  1023. with the data [2]. Any change in the data will cause the whole file system
  1024. to be updated and its hierarchy modified. To get around this problem,
  1025. SFSRO creates a completely new database for each version of the file
  1026. system and incrementally updates the replica file servers.
  1027.   In this report, we present some modifications and extensions to SFSRO.
  1028. We aim to achieve a file system with SFSRO functionality and guarantees,
  1029. but without its drawbacks and limitations - suitably called SFSRO Lite
  1030. (SFSROL). We plan to build a read-write version of SFSRO that uses a
  1031. 'floating inode table' [5] and supports variable sized blocks. We have
  1032. currently finished making necessary changes to incorporate the floating
  1033. inode table. Further research in achieving a read-write version is in
  1034. progress. Measurements of an implementation show that SFSROL is
  1035. approximately 0-2% slower than SFSRO.
  1036. %K keywords
  1037. %Y
  1038.  
  1039. %A Rao, Praveen
  1040. %A Moon, Bongki
  1041. %T PRIX: Indexing And Querying XML Using Prufer Sequences
  1042. %D Wednesday, June 25, 2003
  1043. %Z Wed, 03 Jan 03 00:00:00 GMT
  1044. %R TR03-06
  1045. %I The Department of Computer Science, University of Arizona
  1046. %U ftp://ftp.cs.arizona.edu/reports/2003/TR03-06.ps.Z
  1047. %X We propose a new way of indexing XML documents and processing twig
  1048. patterns in an XML database. Every XML document in the database can be
  1049. transformed into a sequence of labels by Prufer's method that constructs
  1050. a one-to-one correspondence between trees and sequences.  During query
  1051. processing, a twig pattern is also transformed into its Prufer sequence.
  1052. By performing subsequence matching on the set of sequences in the database,
  1053. and performing a series of refinement phases that we have developed, we can
  1054. find all the occurrences of a twig pattern in the database. Our approach
  1055. allows holistic processing of a twig pattern without breaking the twig
  1056. into root-to-leaf paths and processing these paths individually. 
  1057. Furthermore, we show in the paper that all correct answers are found
  1058. without any false dismissals or false alarms.  Experimental results
  1059. demonstrate the performance benefits of our proposed techniques.
  1060. %K keywords
  1061. %Y
  1062.  
  1063. %A Rajagopalan, Mohan
  1064. %A Debray, Saumya K.
  1065. %A Hiltunen, Matti A.
  1066. %A Schlichting, Richard D.
  1067. %T Profile Directed Optimization of Event Based Programs
  1068. %D Friday, June 6, 2003
  1069. %Z Wed, 03 Jan 03 00:00:00 GMT
  1070. %R TR03-05
  1071. %I The Department of Computer Science, University of Arizona
  1072. %U ftp://ftp.cs.arizona.edu/reports/2003
  1073. %X Events are used as a fundamental abstraction in programs ranging from
  1074. graphical user interfaces (GUIs) to systems for building customized network
  1075. protocols.
  1076. While providing a flexible structuring and execution paradigm, events have
  1077. the potentially serious drawback of extra execution overhead due to the
  1078. indirection between modules that raise events and those that handle them.
  1079. This paper describes an approach to addressing this issue using static
  1080. optimization techniques.
  1081. This approach, which exploits the underlying predictability often exhibited
  1082. by event-based programs, is based on first profiling the program to identify
  1083. commonly occurring event sequences. A variety of techniques that use the
  1084. resulting profile information are then applied to the program to reduce
  1085. the overheads associated with such mechanisms as indirect function calls and
  1086. argument marshaling.  In addition to describing the overall approach,
  1087. experimental results are given that demonstrate the effectiveness of the
  1088. techniques.
  1089. These results are from event-based programs written for X Windows,
  1090. a system for building GUIs, and Cactus, a system for constructing highly
  1091. configurable distributed services and network protocols.
  1092. %K keywords
  1093. %Y
  1094.  
  1095. %A Erten, Cesim
  1096. %A Harding, Philip J.
  1097. %A Kobourov, Stephen G.
  1098. %A Wampler, Kevin
  1099. %A Yee, Gary
  1100. %T Exploring the Computing Literature Using Temporal Graph Visualization
  1101. %D Tuesday, June 3, 2003
  1102. %Z Wed, 03 Jan 03 00:00:00 GMT
  1103. %R TR03-04
  1104. %I The Department of Computer Science, University of Arizona
  1105. %U ftp://ftp.cs.arizona.edu/reports/2003
  1106. %X What are the hottest computer science research topics today?
  1107. Which research areas are experiencing steady decline? How many
  1108. co-authors are typical for a research paper today and 20 years ago?
  1109. Who are the most prolific writers? In this paper, we attempt to
  1110. address these questions as well as study collaboration patterns,
  1111. research communities, interactions between related research
  1112. specialties, and the evolution of these characteristics through
  1113. time. For our analysis we use data from the Association of Computing
  1114. Machinery's Digital Library of Scientific Literature (ACM Portal)
  1115. which contains over a hundred thousand research papers and
  1116. authors. We use a novel technique for visualization of large graphs
  1117. that evolve through time. Given a dynamic graph, the layout algorithm
  1118. produces two-dimensional representations of each time-slice, while
  1119. preserving the mental map of the graph from one slice to the next. A
  1120. combined view, with all the time-slices can also be viewed and
  1121. explored. Graphs with tens of thousands of vertices and edges,
  1122. resulting from specific queries to our local copy of the ACM database,
  1123. are generated and displayed in seconds. The images in this paper are
  1124. produced by a graph layout tool which uses the dynamic graph layout
  1125. algorithm.
  1126. %K keywords
  1127. %Y
  1128.  
  1129. %A Kobourov, Stephen
  1130. %A Collberg, Christian
  1131. %T Self-Plagiarism in Computer Science
  1132. %D Tuesday, May 13, 2003
  1133. %Z Wed, 03 Jan 00 00:00:00 GMT
  1134. %R TR03-03
  1135. %I The Department of Computer Science, University of Arizona
  1136. %U ftp://ftp.cs.arizona.edu/reports/2003
  1137. %X abstract
  1138. %K keywords
  1139. %Y
  1140.  
  1141. %A Arvind Krishnaswamy
  1142. %A Rajiv Gupta
  1143. %T Instruction Coalescing for 16-bit Code
  1144. %D Thursday, January 16, 2003
  1145. %Z Mon, 06 Jan 03 00:00:00 GMT
  1146. %R TR03-01
  1147. %I The Department of Computer Science, University of Arizona
  1148. %U ftp://ftp.cs.arizona.edu/reports/2003/
  1149. %X In the embedded domain, memory usage and energy consumption are
  1150. critical constraints. Embedded processors such as the ARM and MIPS
  1151. provide a 16-bit instruction set (called Thumb in the case of the
  1152. ARM cpu family) in addition to the 32-bit instruction set to address
  1153. these concerns.  Using 16-bit instructions one can achieve code size
  1154. reduction and I-cache energy savings at the cost of performance.
  1155.     This paper presents a novel approach that enhances the performance
  1156. of 16-bit Thumb  code. We have observed that throughout Thumb code
  1157. there exist Thumb instruction pairs that are equivalent to a single
  1158. ARM instruction. We have developed enhancements to the processor
  1159. microarchitecture and the Thumb instruction set to exploit this property.
  1160. We enhance the Thumb instruction set by incorporating Augmenting
  1161. eXtensions(AX).  A Thumb instruction pair that can be combined into a
  1162. single ARM instruction is replaced by an AXThumb instruction pair by the
  1163. compiler. The AX instruction is coalesced with the immediately following
  1164. Thumb instruction to generate a single ARM instruction at decode time.
  1165. The enhanced microarchitecture ensures that coalescing does not introduce
  1166. pipeline delays or increase cycle time thereby resulting in reduction of
  1167. both instruction counts and cycle counts. Using AX instructions and
  1168. coalescing hardware we are also able to support efficient predicated
  1169. execution in 16 bit mode.
  1170. %K keywords
  1171. %Y
  1172.  
  1173. %A Trebisky, Tom
  1174. %T The Skidoo Real-Time Operating System
  1175. %D Monday, November 25, 2002
  1176. %Z Mon, 03 Jan 05 00:00:00 GMT
  1177. %R TR02-05
  1178. %I The Department of Computer Science, University of Arizona
  1179. %U ftp://ftp.cs.arizona.edu/reports/2002/TR02-05.ps.Z
  1180. %X Embedded systems have needs that are not adequately met by conventional 
  1181. operating systems. Skidoo is a new operating system especially tailored to 
  1182. support embedded systems. Independently scheduled threads are provided that 
  1183. synchronize using semaphores and condition variables. Threads share a common 
  1184. address space and communicate using shared variables. Fully preemptive scheduling meets the needs of hard real-time applications.
  1185. %K keywords
  1186. %Y
  1187.  
  1188. %A Baker, Scott
  1189. %A Hartman, John
  1190. %T The Mirage NFS Router
  1191. %D Monday, November 25, 2003
  1192. %Z Wed, 03 Jan 02 00:00:00 GMT
  1193. %R TR02-04
  1194. %I The Department of Computer Science, University of Arizona
  1195. %U ftp://ftp.cs.arizona.edu/reports/2002
  1196. %X Mirage is a system that aggregates multiple NFS servers into a
  1197. single, virtual NFS file server. It is interposed between the NFS
  1198. clients and servers, making the clients believe that they are
  1199. communicating with a single, large server. Mirage is an NFS router
  1200. because it routes an NFS request from a client to the proper NFS server,
  1201. and routes the reply back to the proper client. Mirage also prevents DoS
  1202. attacks on the NFS protocol, ensuring that all clients receive a fair
  1203. share of the servers\222 resources. Mirage is designed to run on an IP
  1204. router, providing virtualized NFS file service without affecting other
  1205. network traffic. Experiments with a Mirage prototype show that Mirage
  1206. effectively virtualizes an NFS server using unmodified clients and
  1207. servers, and it ensures that legitimate clients receive a fair share
  1208. of the NFS server even during a DoS attack.  Mirage imposes an
  1209. overhead of only 7% on a realistic NFS workload.
  1210. %K Mirage, router, NFS
  1211. %Y
  1212.  
  1213. %A Moon, Bongki
  1214. %A Shin, Hyoseop
  1215. %A Lee, Sukho
  1216. %T Adaptive and Incremental Processing for Distance Join Queries
  1217. %D Thursday, August 29, 2002
  1218. %Z Wed, 03 Jan 02 00:00:00 GMT
  1219. %R TR02-03
  1220. %I The Department of Computer Science, University of Arizona
  1221. %U ftp://ftp.cs.arizona.edu/reports/2002
  1222. %X A spatial distance join is a relatively new type of operation
  1223. introduced for spatial and multimedia database applications. 
  1224. Additional requirements for ranking and stopping cardinality are
  1225. often combined with the spatial distance join in on-line query
  1226. processing or internet search environments. These requirements
  1227. pose new challenges as well as opportunities for more efficient
  1228. processing of spatial distance join queries.  In this paper, we
  1229. first present an efficient k-distance join algorithm that uses
  1230. spatial indexes such as R-trees. Bi-directional node expansion
  1231. and plane-sweeping techniques are used for fast pruning of distant
  1232. pairs, and the plane-sweeping is further optimized by novel strategies
  1233. for selecting a sweeping axis and direction.
  1234. Furthermore, we propose adaptive multi-stage algorithms for k-distance
  1235. join and incremental distance join operations.  Our performance study
  1236. shows that the proposed adaptive multi-stage algorithms outperform
  1237. previous work by up to an order of magnitude for both k-distance
  1238. join and incremental distance join queries, under various operational
  1239. conditions.
  1240. %K spatial, cardinality, k-distance
  1241. %Y
  1242.  
  1243. %A Al-Bin-Ali, Fahd
  1244. %T Design and Implementation of an Inter-cell Management System:
  1245. The Sabino System
  1246. %D Tuesday, July 2, 2002
  1247. %Z Wed, 03 Jan 02 00:00:00 GMT
  1248. %R TR02-02
  1249. %I The Department of Computer Science, University of Arizona
  1250. %U ftp://ftp.cs.arizona.edu/reports/2002
  1251. %X Wireless networks based on IEEE 802.11 are becoming increasingly widely
  1252. deployed. However, 802.11 systems fail to make optimal use of the
  1253. available network resources because of a lack of coordination between
  1254. different system components, in particular, the absence of any form of
  1255. coordination between access points and mobile nodes. Consequently,
  1256. wireless network installations may not make optimal allocation of mobile
  1257. nodes to access points, leading to imbalances in the load distribution and
  1258. potentially reducing the network bandwidth available to users. This thesis
  1259. presents the Sabino system: a lightweight management architecture that
  1260. coordinates the actions of access points and mobile nodes to ensure, where
  1261. possible, a more balanced load distribution and hence better utilization
  1262. of system resources. Sabino as an architectural solution is applicable for
  1263. many other applications and future wireless deployments in which mobile
  1264. nodes have different Quality-of-Service requirements and are serviced by
  1265. different network technologies. Key aspects of the Sabino system include
  1266. easy and incremental deployment, flexible architectural topology, minimal
  1267. overhead and effective management of resources. This thesis presents
  1268. evidence of some of the problems in existing 802.11 systems and it
  1269. describes the design, the implementation and the evaluation of the Sabino
  1270. system as an effective solution to these problems.
  1271. %K keywords
  1272. %Y
  1273.  
  1274. %A Hartman, John
  1275. %T Activating Storage Systems with Agents
  1276. %D Thursday, June 13, 2002
  1277. %Z Wed, 03 Jan 02 00:00:00 GMT
  1278. %R TR02-01
  1279. %I The Department of Computer Science, University of Arizona
  1280. %U ftp://ftp.cs.arizona.edu/reports/2002
  1281. %X Swarm is a scalable, modular storage system that allows high-level
  1282. services to influence low-level storage functions such as data layout,
  1283. metadata management, and crash recovery via agents.  An agent is
  1284. a program that is attached to data in the storage system and invoked
  1285. when particular events occur during the data's lifetime.  For example,
  1286. when Swarm needs to write data to disk, agents attached to the data are
  1287. invoked to determine a layout policy.  Agents can be persistent, so that
  1288. they remain attached to the data they manage until the data are deleted;
  1289. this allows agents to continue to affect how the data are handled long
  1290. after the application or storage service that created the data has
  1291. terminated. Swarm and its agent mechanism are implemented as a Linux
  1292. kernel module.  In this paper, we present Swarm's agent architecture,
  1293. describe the types of agents that Swarm supports and the infrastructure
  1294. used to support them, and discuss their performance overhead and security
  1295. implications.  We describe how several storage services and applications
  1296. use agents, and the benefits they derive from doing so.
  1297. %K keywords
  1298. %Y
  1299.  
  1300. %A Cappos, Justin
  1301. %A Homer, Patrick
  1302. %T DsCats: Animating Data Structures for CS 2 and CS 3 Courses
  1303. %D Wednesday, March 14, 2001
  1304. %Z Mon, 03 Jan 01 00:00:00 GMT
  1305. %R TR01-02
  1306. %I The Department of Computer Science, University of Arizona
  1307. %U ftp://ftp.cs.arizona.edu/reports/2001/TR01-02.ps.Z
  1308. %X A new data structure animation tool called DsCats is available for
  1309. classroom use. This tool supports educator presentations, student
  1310. experimentation, and programming assignments. It implements a
  1311. user-centered approach supporting a wide range of detail levels, the
  1312. ability to jump to any point in the animation, and on the fly
  1313. variations in the data structure during animations. The tool is
  1314. written in Java with modularity and expandability in mind.
  1315. %K keywords
  1316. %Y
  1317.  
  1318. %A Collberg, Christian
  1319. %T A Fuzzy Visual Query Language for a Domain-Specific Web Search Engine
  1320. %D Tuesday, March 13, 2001
  1321. %Z Tue, 02 Jan 01 00:00:00 GMT
  1322. %R TR01-01
  1323. %I The Department of Computer Science, University of Arizona
  1324. %U ftp://ftp.cs.arizona.edu/reports/2001
  1325. %X Algovista is a web-based search engine that assists programmers to
  1326. find algorithms and implementations that solve specific problems.
  1327. Algovista is not keyword based but rather requires users to provide -
  1328. in a very simple textual language - input/output samples that describe
  1329. the behavior of their needed algorithm. Unfortunately, even this simple
  1330. language has proven too challenging for casual users.
  1331. To overcome this problem and make Algovista more accessible to novice
  1332. programmers, we are designing and prototyping a visual language for
  1333. creating Algovista queries. Since web users do not have the patience
  1334. to learn fancy query languages (be they textual or visual), our goal
  1335. is to make this language and its implementation natural enough to
  1336. require virtually no explanation or user training.
  1337. %K Algovista, web-based, algorithm, language
  1338. %Y
  1339.  
  1340. %A Gupta, Neelam
  1341. %A Bass, Len
  1342. %T Designing Software to Reduce Cost of Testing
  1343. %D Thursday, July 6, 2000
  1344. %Z Wed, 03 Jan 00 00:00:00 GMT
  1345. %R TR00-06
  1346. %I The Department of Computer Science, University of Arizona
  1347. %U ftp://ftp.cs.arizona.edu/reports/2000/
  1348. %X Software testing is an important and expensive component of the
  1349. software development life cycle. The testing community has always treated
  1350. the design of the software to be tested as an input over which they have
  1351. no control. In this paper, we propose a new approach to reduce the cost
  1352. of integration testing by influencing the design of the system to be tested.
  1353. We consider the simple pipe and filter architecture style and analyse its
  1354. testability for integration testing. Our analysis shows that the size of
  1355. test suite required for integration testing is a linear function of the
  1356. number of modules in pipe and filter architecture style. In contrast, the
  1357. size of test suite required for a general design, with arbitrary communication
  1358. among its modules, is an exponential function of the number the modules in
  1359. the design. This illustrates that the cost of the testing stage can be
  1360. significantly reduced by appropriate selection of the architecture style
  1361. during the design stage.
  1362. %K software archictecture style, software testing, pipe and filter
  1363. %Y
  1364.  
  1365. %A Hiltunen, Matti
  1366. %A Jaiprakash, Sumita
  1367. %A Schlichting, Richard
  1368. %A Ugarte, Carlos
  1369. %T Fine-Grain Configurability for Secure Communication
  1370. %D Friday, June 16, 2000
  1371. %Z Wed, 03 Jan 00 00:00:00 GMT
  1372. %R TR00-05
  1373. %I The Department of Computer Science, University of Arizona
  1374. %U ftp://ftp.cs.arizona.edu/reports/2000/
  1375. %X Current solutions for providing communication security in network
  1376. applications allow customization of certain security attributes and
  1377. techniques, but in limited ways and without the benefit of a single
  1378. unifying framework. Here, the design of a highly-customizable
  1379. extensible service called SecComm is described in which attributes
  1380. such as authenticity, privacy, integrity, and non-repudiation can be
  1381. customized in arbitrary ways. With SecComm, applications can open
  1382. secure communication connections in which only those attributes
  1383. selected from among a wide range of possibilities are enforced, and
  1384. are enforced using the strength or technique desired. SecComm has
  1385. been implemented using Cactus, a system for building configurable
  1386. communication services.  In Cactus, different properties and techniques
  1387. are implemented as software modules called micro-protocols that
  1388. interact using an event-driven execution paradigm. This non-hierarchical
  1389. design approach has a high degree of flexibility, yet provides enough
  1390. structure and control that it is easy to build collections of
  1391. micro-protocols realizing a large number of diverse properties.
  1392. This paper gives an overview of the design and implementation
  1393. of SecComm, and gives initial performance figures for a prototype
  1394. implementation running on a cluster of Pentiums using the Mach MK 7.3
  1395. operating system.
  1396. %K keywords
  1397. %Y
  1398.  
  1399. %A Debray, Saumya
  1400. %A Evans, William
  1401. %A Muth, Robert
  1402. %A De Sutter, Bjorn
  1403. %T Compiler Techniques for Code Compaction
  1404. %D Wednesday, March 15, 2000
  1405. %Z Wed, 03 Jan 00 00:00:00 GMT
  1406. %R TR00-04
  1407. %I The Department of Computer Science, University of Arizona
  1408. %U ftp://ftp.cs.arizona.edu/reports/2000/
  1409. %X In recent years there has been an increasing trend towards the incorporation
  1410. of computers into a variety of devices where the amount of memory
  1411. available is limited.  This makes it desirable to try to reduce the size of
  1412. applications where possible.  This paper explores the use of compiler
  1413. techniques to accomplish code compaction to yield smaller executables.
  1414. The main contribution of this paper is to show that careful, aggressive,
  1415. interprocedural optimization, together with procedural abstraction of
  1416. repeated code fragments, can yield significantly better reductions in
  1417. code size than previous approaches, which have generally focused on
  1418. abstraction of repeated instruction sequences.  We also show how ``equivalent''
  1419. code fragments can be detected and factored out using conventional
  1420. compiler techniques, and without having to resort to
  1421. purely linear treatments of code sequences as in suffix-tree-based approaches,
  1422. thereby setting up a framework for code compaction that can be more flexible in
  1423. its treatment of what code fragments are considered equivalent.
  1424. Our ideas have been implemented in the form of a binary-rewriting tool
  1425. that reduces the size of executables by about 30% on the average.
  1426. %K keywords
  1427. %Y
  1428.  
  1429. %A Collberg, Christian
  1430. %A Thomborson, Clark
  1431. %T Watermarking, Tamper-Proofing, and Obfuscation -- Tools for Software Protecti
  1432. on
  1433. %D Thursday, Feb 10, 2000
  1434. %Z Wed, 03 Jan 00 00:00:00 GMT
  1435. %R TR00-03
  1436. %I The Department of Computer Science, University of Arizona
  1437. %U ftp://ftp.cs.arizona.edu/reports/2000/
  1438. %X abstract
  1439. %K keywords
  1440. %Y
  1441.  
  1442. %A Collberg, Christian
  1443. %A Davey, Sean
  1444. %A Proebsting, Todd
  1445. %T Language-Agnostic Program for Rendering for Presentation, Debugging and Visua
  1446. lization
  1447. %D Thursday, Feb 10, 2000
  1448. %Z Wed, 03 Jan 00 00:00:00 GMT
  1449. %R TR00-02
  1450. %I The Department of Computer Science, University of Arizona
  1451. %U ftp://ftp.cs.arizona.edu/reports/2000/
  1452. %X abstract
  1453. %K keywords
  1454. %Y
  1455.  
  1456. %A Collberg, Christian
  1457. %A Proebsting, Todd
  1458. %T AlgoVista - A Search Engine for Computer Scientists
  1459. %D Thursday, January 27, 2000
  1460. %Z Mon, 03 Jan 00 00:00:00 GMT
  1461. %R TR00-1
  1462. %I The Department of Computer Science, University of Arizona
  1463. %U ftp://ftp.cs.arizona.edu/reports/2000/TR
  1464. %X We describe AlgoVista, a web-based search engine designed to allow
  1465. applied computer scientists to classify problems and find algorithms
  1466. and implementations that solve these problems. Unlike other search engines,
  1467. AlgoVista is not keyword based. Rather, users provide a set of input==>output
  1468. samples that describe the behavior of the problem they wish to classify.
  1469. This type of  query-by-example requires no knowledge of specialized
  1470. terminology, only an ability to formalize the problem.
  1471. The search mechanism of AlgoVista is based on a novel application of program
  1472. checking, a technique developed as an alternative to program verification
  1473. and testing.
  1474. %K AlgoVista, web-based, keyword
  1475. %Y
  1476.  
  1477. %A Hyoseop Shin
  1478. %A Bongki Moon
  1479. %A Sukho Lee
  1480. %T Adaptive Multi-Stage Distance Join Processing
  1481. %D Monday, October 18, 1999
  1482. %Z Wed, 08 Jan 99 00:00:00 GMT
  1483. %R TR99-14
  1484. %I The Department of Computer Science, University of Arizona
  1485. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-14.ps
  1486. %X A spatial distance join is a relatively new type of operation
  1487. introduced for spatial and multimedia database applications.
  1488. Additional requirements for ranking and stopping cardinality are
  1489. often combined with the spatial distance join in on-line query processing
  1490. or internet search environments. These requirements pose new challenges
  1491. as well as opportunities for more efficient processing of
  1492. spatial distance join queries.
  1493. In this paper, we first present an efficient $k$-distance join algorithm
  1494. that uses spatial indexes such as R-trees. Bi-directional node expansion
  1495. and plane-sweeping techniques are used for fast pruning of distant pairs,
  1496. and the plane-sweeping is further optimized by novel strategies for
  1497. selecting a sweeping axis and direction.
  1498. Furthermore, we propose adaptive multi-stage algorithms
  1499. for $k$-distance join and incremental distance join operations.
  1500. Our performance study shows that the proposed adaptive multi-stage algorithms
  1501. outperform previous work by up to an order of magnitude
  1502. for both $k$-distance join and incremental distance join queries,
  1503. under various operational conditions.
  1504. %K keywords
  1505. %Y
  1506.  
  1507. %A Muth, Robert
  1508. %A Debray, Saumya
  1509. %T On the Complexity of Flow-Sensitive Dataflow Analyses
  1510. %D Wednesday, August 4, 1999
  1511. %Z Wed, 08 Jan 99 00:00:00 GMT
  1512. %R TR99-12
  1513. %I The Department of Computer Science, University of Arizona
  1514. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-12.ps
  1515. %X This paper attempts to address the question of why certain dataflow
  1516. analysis problems can be solved efficiently, but not others.  We focus
  1517. on flow-sensitive analyses, and give a simple and general result that
  1518. shows that analyses that require the use of relational attributes for
  1519. precision must be PSPACE-hard in general.  We then show that if the
  1520. language constructs are slightly strengthened to allow a computation to
  1521. maintain a very limited summary of what happens along an execution path,
  1522. inter-procedural analyses become EXPTIME-hard.  We discuss applications
  1523. of our results to a variety of analyses discussed in the literature.
  1524. Our work elucidates the reasons behind the complexity results given by
  1525. a number of authors, improves on a number of such complexity results,
  1526. and exposes conceptual commonalities underlying such results that are
  1527. not readily apparent otherwise.
  1528. %K PSPACE-hard, EXPTIME-hard
  1529. %Y
  1530.  
  1531. %A Verkhedkar, Sameer A.
  1532. %T A Highly Customizable System Monitoring and Control Tool
  1533. %D Monday, July 19, 1999
  1534. %Z Wed, 08 Jan 99 00:00:00 GMT
  1535. %R TR99-11
  1536. %I The Department of Computer Science, University of Arizona
  1537. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-11.ps
  1538. %X The management of a large collection of machines connected by a
  1539. network and the software running on them is a difficult task. For
  1540. example, processes may fail causing service disruptions, or users
  1541. may exceed their quota of system resources causing shortages. If the
  1542. site has a large number of machines, keeping track of all such
  1543. problems can be very cumbersome. This thesis presents a system monitoring
  1544. tool that addresses these problems. The tool monitors different aspects
  1545. of the system state, such as processes running on each machine and their
  1546. resource usage, and reports the information to the administrator via a
  1547. graphical user interface(GUI). The tool can also be used for controlling
  1548. remote machines through the GUI by starting or stopping processes, and for
  1549. automatically restarting failed processes. Since the monitoring requirements
  1550. differ for every system, the monitoring tool is highly customizable
  1551. and extensible at a fine-grain level. This is achieved by implementing
  1552. the tool as a collection of modules called micro-protocols that can be
  1553. configured in various combinations to provide customized variants of the
  1554. monitoring service. The implementation is based on Cactus, a framework
  1555. for developing middleware offering fine-grain customizability for Quality
  1556. of Service(QoS) attributes related to dependability, real-time and security
  1557. in distributed systems. This thesis describes the design and implementation
  1558. of an architecture for system administration based on a higly customizable
  1559. system monitoring tool, and validates the Cactus approach for developing
  1560. highly customizable software at the application layer.
  1561. %K thesis
  1562. %Y
  1563.  
  1564. %A Moon, Bongki
  1565. %A Jagadish, H.V.
  1566. %A Faloutsos, Christos
  1567. %A Saltz, Joel H.
  1568. %T Analysis of the Clustering Properties of Hilbert Space-filling Curve
  1569. %D May 26, 1999
  1570. %Z Wed, 08 Jan 99 00:00:00 GMT
  1571. %R TR99-10
  1572. %I The Department of Computer Science, University of Arizona
  1573. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-10.ps
  1574. %X Several schemes for linear mapping of multidimensional space have
  1575. been proposed for many applications such as access methods for
  1576. spatio-temporal databases, image compression and so on. In all
  1577. these applications, one of the most desired properties from such
  1578. linear mappings is clustering, which means the locality between
  1579. objects in the multidimensional space is preserved in the linear
  1580. space. It is widely believed that the Hilbert space-filling curve
  1581. achieves the best clustering [1, 16]. In this paper we provide
  1582. closed-form formulas of the number of clusters required by a given
  1583. query region of an arbitrary shape (e.g., polygons and polyhedra)
  1584. for Hilbert space-filling curve. Both the asymptotic solution for
  1585. a general case and the exact solution for a special case generalize
  1586. the previous work [16], and they agree with the empirical results
  1587. that the number of clusters depends on the hyper-surface area of
  1588. the query region and not on it's hyper-volume. We have also shown
  1589. that Hilbert curve achieves better clustering than the z curve.
  1590. From the practical point of view, the formulas given in this paper
  1591. provide a simple measure which can be used to predict the required
  1592. disk access behaviors and hence the total access time.
  1593. %K Hilbert, clustering, linear space
  1594. %Y
  1595.  
  1596. %A Hiltunen, Matti
  1597. %A Jaiprakash, Sumita
  1598. %A Schlichting, Richard
  1599. %T Exploiting Fine-Grain Configurability for Secure Communication
  1600. %D Wednesday, April 28, 1999
  1601. %Z Wed, 08 Jan 99 00:00:00 GMT
  1602. %R TR99-08
  1603. %I The Department of Computer Science, University of Arizona
  1604. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-08.ps
  1605. %X Current protocols such as IPSec and TLS that provide communication
  1606. security for network applications allow customization of certain
  1607. security attributes and techniques, but in limited ways and without
  1608. the benefit of a single unifying framework. Here, the design of a
  1609. highly-customizable extensible service called SecComm is described
  1610. in which attributes such as authenticity, privacy, integrity, and
  1611. non-repudiation can be customized in arbitrary ways. With SecComm,
  1612. applications can open secure communication connections in which only
  1613. those attributes selected from among a wide range of possibilities
  1614. are enforced, and are enforced using the strength or technique desired.
  1615. SecComm is being implemented using the Mach MK 7.3 operating system
  1616. and Cactus, a system for building configurable communication services.
  1617. In Cactus, different properties and techniques are implemented as
  1618. software modules called micro-protocols that interact using an
  1619. event-driven execution paradigm. This design approach has a high degree
  1620. of flexibility, yet provides enough structure and control that it is
  1621. easy to build collections of micro-protocols realizing a large number
  1622. of diverse properties.
  1623. %K fine-grain, SecComm, Cactus
  1624. %Y
  1625.  
  1626. %A Debray, Saumya
  1627. %A Evans, William
  1628. %A Muth, Robert
  1629. %T Compiler Techniques for Code Compression
  1630. %D Friday, April 23, 1999
  1631. %Z Wed, 08 Jan 99 00:00:00 GMT
  1632. %R TR99-07
  1633. %I The Department of Computer Science, University of Arizona
  1634. %U ftp://ftp.cs.arizona.edu/reports/TR99-07.ps
  1635. %X In recent years there has been an increasing trend towards the
  1636. incorporation of computers into a variety of devices where the amount
  1637. of memory available is limited. This makes it desirable to try and reduce
  1638. the size of applications where possible. This paper explores the use of
  1639. compiler techniques to accomplish code compression to yield smaller
  1640. executables. The main contribution of this paper is that, by showing how
  1641. "equivalent" code fragments can be detected and factored out without
  1642. having to report to purely linear treatments of code sequences as in
  1643. suffix-tree-based approaches, it sets up a framework for code compression
  1644. that can be more flexible in it's treatment of what code fragments are
  1645. considered equivalent. Our ideas have been implemented in the form of a
  1646. binary-rewriting tool that is able to achieve signaficantly better
  1647. compression that previous approaches.
  1648. %K keywords
  1649. %Y
  1650.  
  1651. %A Hartman, John H.
  1652. %A Murdock, Ian
  1653. %A Spalink, Tammo
  1654. %T The Swarm Scalable Storage System
  1655. %D Thursday, April 1, 1999
  1656. %Z Wed, 08 Jan 99 00:00:00 GMT
  1657. %R TR99-06
  1658. %I The Department of Computer Science, University of Arizona
  1659. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-06.ps
  1660. %X Swarm is a storage system that provides scalable, reliable, and
  1661. cost-effective data storage.  Swarm is based on storage servers,
  1662. rather than file servers; the storage servers are optimized for
  1663. cost-performance and aggregated to provide high-performance data
  1664. access.  Swarm uses a <I>striped log</I> abstraction to store data
  1665. on the storage servers.  This abstraction simplifies storage
  1666. allocation, improves file access performance, balances server loads,
  1667. provides fault-tolerance through computed redundancy, and simplifies
  1668. crash recovery.  We have developed a Swarm prototype using a cluster
  1669. of Linux-based personal computers as the storage servers and clients;
  1670. the clients access the servers via the Swarm-based Sting file system.
  1671. Our performance measurements show that a single Swarm client can write
  1672. to two storage servers at 3.0 MB/s., while four clients can write to
  1673. eight servers at 16.0 MB/s.
  1674. %K Swarm, scalable, storage
  1675. %Y
  1676.  
  1677. %A Chiu, Wanda
  1678. %A Hartman, John H.
  1679. %T Building Caches using Multi-Threaded State Machines
  1680. %D Monday, February 15, 1999
  1681. %Z Wed, 08 Jan 99 00:00:00 GMT
  1682. %R TR99-05
  1683. %I The Department of Computer Science, University of Arizona
  1684. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-05.ps
  1685. %X Designing a client-side cache for a distributed file system is
  1686. complicated by concurrent accesses by applications, network communication
  1687. with the server, and complex relationships between the data in the
  1688. cache. Despite these difficulties, caches are usually built using threads
  1689. or finite state machines as the programming model, even though both are
  1690. inadequate for the task. We have created an infrastructure for cache
  1691. development based on multi-threaded state machines, which attempts to
  1692. capitalize on the benefits of both programming models. The state machine
  1693. allows the global state of the cache to be carefully controlled,
  1694. allowing interactions between concurrent cache operations to be
  1695. reasoned about and verified. Threads allow individual operations to
  1696. maintain their own local state, and propagate that state across transitions
  1697. of the state machine. We  created a prototype of this infrastructure and
  1698. used it to implement a write-through file block cache that provides
  1699. multiple-reader/single-writer access to its blocks; although this is
  1700. a relatively simple cache protocol, it is much easier to implement
  1701. using multi-threaded state machines than using either threads or finite
  1702. state machines alone.
  1703. %K state machines, caches, multi-threaded
  1704. %Y
  1705.  
  1706. %A Hiltunen, Matti A.
  1707. %A Immanuel, Vijaykumar
  1708. %A Schlichting, Richard D.
  1709. %T Supporting Customized Failure Models for Distributed Software
  1710. %D Thursday, February 11, 1999
  1711. %Z Wed, 08 Jan 99 00:00:00 GMT
  1712. %R TR99-04
  1713. %I The Department of Computer Science, University of Arizona
  1714. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-04.ps
  1715. %X The cost of employing software fault-tolerance techniques in distributed
  1716. systems is strongly related to the type of failures to be tolerated.  For
  1717. example, in terms of the amount of redundancy required and execution time,
  1718. tolerating a processor crash is much cheaper than tolerating arbitrary
  1719. (or Byzantine) failures. The tradeoff, of course, is that making stronger
  1720. assumptions about failures lessens the degree of fault coverage provided by
  1721. the system.  This paper describes an approach to constructing configurable
  1722. services for distributed systems that allows easy customization of the
  1723. type of failures to tolerate.  For example, using our approach, it is
  1724. possible to configure custom services across a spectrum of possibilities,
  1725. from a very efficient but unreliable server group that does not tolerate
  1726. any failures, to a less efficient but reliable group that tolerates crash,
  1727. omission, timing, or arbitrary failures. The approach is based on building
  1728. configurable services as collections of software modules called micro-protocols.
  1729. Each micro-protocol implements a different semantic property or property
  1730. variant, and interacts with other micro-protocols using an event-driven
  1731. model provided by a runtime system.  The net result is an enhanced ability
  1732. to explicitly manage the tradeoff between the level of reliability and
  1733. cost.  In addition to facilitating the choice of failure model, our approach
  1734. allows service properties such as message ordering and delivery atomicity
  1735. to be customized for each application.
  1736. %K keywords
  1737. %Y
  1738.  
  1739. %A Miller, Susan J.
  1740. %A Myers, Gene
  1741. %T The FAKtory DNA Sequence Fragment Assembly System
  1742. %D Wednesday, February 3, 1999
  1743. %Z Wed, 08 Jan 99 00:00:00 GMT
  1744. %R TR99-03
  1745. %I The Department of Computer Science, University of Arizona
  1746. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-03.ps
  1747. %X FAKtory is a software environment for supporting DNA sequencing
  1748. projects. FAKtory runs on machines configured with the UNIX operating
  1749. system. It is called FAKtory because it employs our FAKII Fragment
  1750. Assembly Kernel that is a C-library of routines incorporating our best
  1751. algorithms for solving the shotgun assembly problem. The system is highly
  1752. configurable and can perform fragment clipping, prescreening, and tagging
  1753. functions, shotgun assebmly with or without constraints, and sequence
  1754. finishing. An extensible input/output mechanism permits FAKtory to be
  1755. inserted into any informatics environment.
  1756. %K keywords
  1757. %Y
  1758.  
  1759. %A Myers, Gene
  1760. %T The GAF Data Exchange Format
  1761. %D Wednesday, February 3, 1999
  1762. %Z Wed, 08 Jan 99 00:00:00 GMT
  1763. %R TR99-02
  1764. %I The Department of Computer Science, University of Arizona
  1765. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-02.ps
  1766. %X GAF is a General Assembly Format for exchanging data in a sequencing
  1767. project. It provides constructs for specifying sequences,quality numbers,
  1768. assemblies, multi-alignments, overlaps between fragments, and constraints
  1769. between them. It is designed for coding the information at any point in
  1770. the assembly process, so for an example, a GAF file can specify just a
  1771. collection of fragments, a collection of fragments and assigned quality
  1772. numbers, a collection of fragments and their overlaps, an assembly of some
  1773. fragments, assemblies of cooperative software processes handling different
  1774. aspects of an overall sequencing informatics pipeline. A very simple
  1775. translation (using a simple awk script) can convert the CAF format
  1776. introduced by the Sanger group into a subset of the GAF format.
  1777. %K keywords
  1778. %Y
  1779.  
  1780. %A Miller, Susan J.
  1781. %A Jain, Mudita
  1782. %A Anson, Eric
  1783. %A Myers, Gene
  1784. %T Interface for the FAKII Fragment Assembly Kernel
  1785. %D Wednesday, February 3, 1999
  1786. %Z Wed, 08 Jan 99 00:00:00 GMT
  1787. %R TR99-01
  1788. %I The Department of Computer Science, University of Arizona
  1789. %U ftp://ftp.cs.arizona.edu/reports/1999/TR99-01.ps
  1790. %X This document describes the C programming language interface to our FAKII
  1791. Fragment Assembly Kernel library. Inputs to the Fragment Assembly Kernel
  1792. are (1)DNA fragment sequences from potentially inaccurate sequencing
  1793. experiments, and (2) optional constraints on fragment assembly such as
  1794. known fragment overlaps or relative fragment orientation. Fragment sequence
  1795. version control is supported. The Fragment Assembly Kernel produces the
  1796. most probable reconstructions of the original Dna sequence from the fragments,
  1797. subject to any specified constraints. Each fragment assembly includes
  1798. multiple sequence alignment and concsensu sequences. Multiple sequence
  1799. alignment editing capabilities are provided to allow manual correction
  1800. of sequence errors.
  1801. %K keywords
  1802. %Y
  1803.  
  1804. %A Debray, Saumya
  1805. %A Muth, Robert
  1806. %A Watterson, Scott
  1807. %T Link-time Improvement of Scheme Programs
  1808. %D Wednesday, December 16, 1998
  1809. %Z Wed, 08 Jan 98 00:00:00 GMT
  1810. %R TR98-16
  1811. %I The Department of Computer Science, University of Arizona
  1812. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-16.ps.Z
  1813. %X Optimizing compilers typically limit the scope of their analyses and
  1814. optimizations to individual modules.  This has two drawbacks: first,
  1815. library code cannot be optimized together with their callers, which
  1816. implies that reusing code through libraries incurs a penalty; and
  1817. second, the results of analysis and optimization cannot be propagated from
  1818. an application module written in one language to a module written in
  1819. another.  A possible solution is to carry out (additional) program
  1820. optimization at link time.  This paper describes our experiences with
  1821. such optimization using two different optimizing Scheme compilers,
  1822. and several benchmark programs, via alto, a link-time optimizer we
  1823. have developed for the DEC Alpha architecture.  Experiments indicate
  1824. that significant performance improvements are possible via link-time
  1825. optimization even when the input programs have already been subjected to
  1826. high levels of compile-time optimization.
  1827. %K optimizing compilers, link-time
  1828. %Y
  1829.  
  1830. %A Soo, Michael
  1831. %T Constructing a Temporal Database Management System
  1832. %D Tuesday, December 15, 1998
  1833. %Z Wed, 08 Jan 98 00:00:00 GMT
  1834. %R TR98-15
  1835. %I The Department of Computer Science, University of Arizona
  1836. %U ftp://ftp.cs.arizona.edu/reports/
  1837. %X abstract
  1838. %K dissertation, not available online
  1839. %Y
  1840.  
  1841. %A Muth, Robert
  1842. %A Debray, Saumya
  1843. %A Watterson, Scott
  1844. %A de Bosschere, Koen
  1845. %T alto: A Link-Time Optimizer for the DEC Alpha
  1846. %D Wednesday, December 9, 1998
  1847. %Z Wed, 08 Jan 98 00:00:00 GMT
  1848. %R TR98-14
  1849. %I The Department of Computer Science, University of Arizona
  1850. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-14.ps.Z
  1851. %X Traditional optimizing compilers are limited in the scope of their
  1852. optimizations by the fact that only a single function, or possibly a
  1853. single module, is available for analysis and optimization.  In particular,
  1854. this means that library routines cannot be optimized to specific calling
  1855. contexts.  Other optimization opportunities, exploiting information not
  1856. available before linktime such as addresses of variables and the final code
  1857. layout, are often ignored because linkers are traditionally unsophisticated.
  1858. A possible solution is to carry out whole-program optimization at link time.
  1859. This paper describes {\tt alto}, a link-time optimizer for the DEC Alpha
  1860. architecture.  It is able to realize significant performance improvements
  1861. even for programs compiled with a good optimizing compiler with a high level
  1862. of optimization.  The resulting code is considerably faster that that
  1863. obtained using the OM link-time optimizer, even when the latter is used in
  1864. conjunction with profile-guided and inter-file compile-time optimizations.
  1865. %K supersedes TR96-15
  1866. %Y
  1867.  
  1868. %A Spalink, Tammo
  1869. %A Hartman, John
  1870. %A Gibson, Garth
  1871. %T The Effect of Mobile Code on File Service
  1872. %D Monday, November 16, 1998
  1873. %Z Wed, 08 Jan 98 00:00:00 GMT
  1874. %R TR98-12
  1875. %I The Department of Computer Science, University of Arizona
  1876. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-12.ps.Z/
  1877. %X Mobile code promises to improve the functionality and performance of
  1878. applications, but may have a detrimental effect on overall system
  1879. performance.  In this paper we consider the effect of moving an
  1880. application from a client to a file server, both on the application
  1881. and the server.  Under what circumstances does application performance
  1882. improve, and does it come at the expense of other (non-mobile)
  1883. background applications using the same server?  We use a trace-driven
  1884. simulation to measure the effect of mobile code, allowing system
  1885. parameters such as the size of the server memory and server speed
  1886. relative to client speed to be varied. We found that several factors
  1887. influence the benefit of mobile code. Server memory does not appear to
  1888. be a significant problem; relatively small server caches have a high
  1889. hit rate even when shared with mobile code. The relative CPU
  1890. performance of the client and server has a bigger effect on system
  1891. performance: mobile code should not be run on the server if its CPU is
  1892. a bottleneck.
  1893. %K mobile code
  1894. %Y
  1895.  
  1896. %A Moon, Bongki 
  1897. %A Vega Lopez, Ines Fernando
  1898. %A Immanuel, Vijaykumar
  1899. %T Scalable Algorithms for Large-Scale Temporal Aggregation
  1900. %D Monday, November 2, 1998
  1901. %Z Wed, 08 Jan 98 00:00:00 GMT
  1902. %R TR98-11
  1903. %I The Department of Computer Science, University of Arizona
  1904. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-11.ps.Z/
  1905. %X The ability to model time-varying natures is essential to
  1906. many database applications such as data warehousing and mining.
  1907. However, the temporal aspects provide many unique characteristics
  1908. and challenges for query processing and optimization.
  1909. Among the challenges is computing temporal aggregates, which is complicated
  1910. by having to compute temporal grouping.
  1911. In this paper, we introduce a variety of temporal aggregation algorithms
  1912. that overcome major drawbacks of previous work.
  1913. First, for small-scale aggregations, both the worst-case and average-case
  1914. processing time have been improved significantly.
  1915. Second, for large-scale aggregations, the proposed algorithms can deal with
  1916. a database that is substantially larger than the size of available memory.
  1917. Third, the parallel algorithm designed on a shared-nothing architecture
  1918. achieves scalable performance by delivering nearly linear scale-up and speed-up.
  1919. The contributions made in this paper are particularly important because
  1920. the rate of increase in database size and response time requirements
  1921. has out-paced advancements in processor and mass storage technology.
  1922. %K large-scale temporal aggregation
  1923. %Y
  1924.  
  1925. %A Peterson, Larry L.
  1926. %A Spatscheck, Oliver
  1927. %T Defending Against Denial of Service Attacks in Scout
  1928. %D Thursday, September 24, 1998
  1929. %Z Wed, 08 Jan 98 00:00:00 GMT
  1930. %R TR98-10
  1931. %I The Department of Computer Science, University of Arizona
  1932. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-10.ps.Z/
  1933. %X We describe a two-dimensional architecture for defending against denial
  1934. of service attacks. In one dimension, the architecture accounts for all
  1935. resources consumed by each I/O path in the system; this accounting mechanism
  1936. is implemented as an extension to the path object in the Scout operating
  1937. system. In the second dimension, the various modules that define each path
  1938. can be configured in separate protection domains; we implement hardware
  1939. enforced protection domains, although other implementations are possible.
  1940. The resulting system---which we call Escort---is the first example of a
  1941. system that simultaneously does end-to-end resource accounting (thereby
  1942. protecting against denial of service attacks) and supports multiple
  1943. protection domains (thereby allowing untrusted modules to be isolated from
  1944. each other). The paper describes the Escort architecture and its
  1945. implementation in Scout, and reports a collection of experiments that
  1946. measure the costs and benefits of using Escort to protect a web server
  1947. from denial of service attacks.
  1948. %K Scout, Escort, Defending
  1949. %Y
  1950.  
  1951. %A Gendrano, Jose Alvin
  1952. %A Huang, Bruce C.
  1953. %A Rodrigue, Jim M.
  1954. %A Moon, Bongki
  1955. %A Snodgrass, Richard T.
  1956. %T Parallel Algorithms for Computing Temporal Aggregates
  1957. %D Monday, August 31, 1998
  1958. %Z Wed, 08 Jan 98 00:00:00 GMT
  1959. %R TR98-09
  1960. %I The Department of Computer Science, University of Arizona
  1961. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-09.ps.Z/
  1962. %X The ability to model the temporal dimension is essential to many
  1963. applications. Furthermore, the rate of increase in database size and
  1964. response time requirements has out-paced advancements in processor and
  1965. mass storage technology, leading to the need for parallel temporal database
  1966. management systems.  In this paper, we introduce a variety of parallel
  1967. temporal aggregation algorithms for a shared-nothing architecture based on
  1968. the sequential Aggregation Tree algorithm.  Via an empirical study, we found
  1969. that the number of processing nodes, the partitioning of the data, the
  1970. placement of results, and the degree of data reduction effected by the
  1971. aggregation impacted the performance of the algorithms in different ways.
  1972. We designed the Time Division Merge algorithm to produce distributed result
  1973. placement, as differentiated from the centralized result strategies used by
  1974. the other proposed algorithms.  For centralized results and high data
  1975. reduction, we found that the Pairwise Merge algorithm was preferred regardless
  1976. of the number of processing nodes, but for low data reduction it was only
  1977. preferred up to 32 nodes, while a variant of Time Division Merge was best
  1978. for larger configurations.
  1979. %K keywords
  1980. %Y
  1981.  
  1982. %A Baker, Scott M.
  1983. %A Moon, Bongki
  1984. %T Scalable Web Server Design for Distributed Data Management
  1985. %D Wednesday, August 19, 1998
  1986. %Z Wed, 08 Jan 98 00:00:00 GMT
  1987. %R TR98-08
  1988. %I The Department of Computer Science, University of Arizona
  1989. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-08.ps.Z/
  1990. %X Traditional techniques for a distributed web server design rely on
  1991. manipulation of central resources, such as routers or DNS services,
  1992. to distribute requests designated for a single IP address to
  1993. multiple web servers.
  1994. The goal of the Distributed Cooperative Web Server (DCWS)
  1995. system development is to explore application-level techniques for
  1996. distributing web content.  We achieve this by dynamically manipulating
  1997. the hyperlinks stored within the web documents themselves.  The DCWS
  1998. system effectively eliminates the bottleneck of centralized resources,
  1999. while balancing the load among distributed web servers.  DCWS servers
  2000. may be located in different networks, or even different continents and
  2001. still balance load effectively.  DCWS system design is fully compatible
  2002. with existing HTTP protocol semantics and existing web client software
  2003. products.
  2004. %K DCWS, HTTP
  2005. %Y
  2006.  
  2007. %A Datta, Anindya
  2008. %A Moon, Bongki
  2009. %A Ramamritham, Krithi 
  2010. %A Thomas, Helen 
  2011. %A Viguier, Igor 
  2012. %T Have Your Data and Index It, too
  2013. %D Monday, August 17, 1998
  2014. %Z Wed, 08 Jan 98 00:00:00 GMT
  2015. %R TR98-07
  2016. %I The Department of Computer Science, University of Arizona
  2017. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-07.ps.Z/
  2018. %X Two possible strategies may be utilized to enhance the efficiency
  2019. of processing OLAP queries: (a) precomputation strategies (e.g., view
  2020. materialization, realizing data cubes), and (b) ad-hoc strategies.
  2021. While a significant amount of work has been done in developing
  2022. precomputation strategies, it is generally recognized that it is
  2023. difficult to materialize the answers to all possible queries. Thus,
  2024. ad-hoc querying must be supported in data warehouses. This realization
  2025. has sparked an interest in exploring indexing strategies suitable
  2026. for OLAP queries. There appears to have been relatively little work
  2027. done in ad-hoc query support for data 
  2028. warehouses~\cite{og:95,oq:97,sarawagi:97,kr:98}.
  2029.     In this paper we propose {\em DataIndexes} as a new paradigm for
  2030. storing the base data.  {\em An attractive feature of DataIndexes is that
  2031. they serve as indexes as well as the store of base data.} Thus, DataIndexes
  2032. actually define a physical design strategy for a data warehouse where the
  2033. indexing, for all intents and purposes, comes for ``free''. We also present
  2034. two efficient algorithms for performing star-joins with DataIndexes. In
  2035. addition, we present a mathematical analysis of all the indexes presented
  2036. by O'Neil and Quass as well as our DataIndexes and present analytical
  2037. expressions categorizing the cost of query evaluation using these structures
  2038. for range selections and star-joins, two common classes of queries in OLAP.
  2039. These aid in performing an analysis yielding precise ``break-even" points
  2040. for comparing these indexing alternatives. Overall, it turns out that
  2041. DataIndexes are very attractive in a wide variety of cases in terms of
  2042. enhancing the performance of range and star-join queries in data warehouses.
  2043. %K data, index, OLAP
  2044. %Y
  2045.  
  2046. %A Hiltunen, Matti
  2047. %A Schlichting, Richard D.
  2048. %A Han, Xiaonan
  2049. %A Cardozo, Melvin M.
  2050. %A Das, Rajsekhar
  2051. %T Real-Time Dependable Channels: Customizing QoS Attributes for Distributed
  2052. Systems
  2053. %D Wednesday, July 1, 1998
  2054. %Z Wed, 08 Jan 98 00:00:00 GMT
  2055. %R TR98-06
  2056. %I The Department of Computer Science, University of Arizona
  2057. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-06.ps.Z/
  2058. %X Communication services that provide enhanced Quality of Service
  2059. (QoS) guarantees related to dependability and real time are important
  2060. for many applications in distributed systems. This paper presents
  2061. real-time dependable (RTD) channels, a communication-oriented abstraction
  2062. that can be configured to meet the QoS requirements of a variety of
  2063. distributed applications. This customization ability is based on using
  2064. CactusRT, a system that supports the construction of middleware services
  2065. out of software modules called micro-protocols. Each micro-protocol
  2066. implements a different semantic property or property variant, and
  2067. interacts with other micro-protocols using an event-driven model
  2068. supported by the CactusRT runtime system. In addition to RTD channels,
  2069. CactusRT and its implementation are described. This prototype executes
  2070. on a cluster of Pentium PCs running the OpenGroup/RI MK 7.3 Mach
  2071. real-time operating system and CORDS, a system for building network
  2072. protocols based on the x-kernel.
  2073. %K keywords
  2074.  
  2075. %A Sarkar, Prasenjit
  2076. %T Title
  2077. %D Wednesday, July 1, 1998
  2078. %Z Wed, 08 Jan 98 00:00:00 GMT
  2079. %R TR98-05
  2080. %I The Department of Computer Science, University of Arizona
  2081. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-05.ps.Z/
  2082. %X abstract
  2083. %K dissertation
  2084. %Y
  2085.  
  2086. %A Yeatts, Andrey
  2087. %T A Graphical User Interface Design Paradigm Based on Production Rules
  2088. %D Tuesday, June 9, 1998
  2089. %Z Wed, 08 Jan 97 00:00:00 GMT
  2090. %R TR98-04
  2091. %I The Department of Computer Science, University of Arizona
  2092. %U 
  2093. %X abstract
  2094. %K PhD dissertation
  2095. %Y not available online
  2096.  
  2097. %A Peterson, Larry
  2098. %T Title
  2099. %D Friday, March 13, 1998
  2100. %Z Wed, 08 Jan 98 00:00:00 GMT
  2101. %R TR98-03
  2102. %I The Department of Computer Science, University of Arizona
  2103. %U
  2104. %X abstract
  2105. %K keywords
  2106. %Y
  2107.  
  2108. %A Sundaram, Rajesh
  2109. %T Design and Implementation of the Swarm Storage Server
  2110. %D Tuesday, March 10, 1998
  2111. %Z Wed, 08 Jan 98 00:00:00 GMT
  2112. %R TR98-02
  2113. %I The Department of Computer Science, University of Arizona
  2114. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-02.ps.Z/
  2115. %X The Swarm storage system uses log-based striping to achieve high
  2116. performance. Clients collect application writes in a log and stripe the
  2117. log across multiple storage servers to aggregate server bandwidth. The
  2118. Swarm storage server has been designed to meet various requirements of the
  2119. Swarm storage system. These include high performance for data-intensive
  2120. operations, rapid crash recovery, security support and atomic interface
  2121. routines. The design of the Swarm storage server is simple enough to
  2122. allow its implementation as a network appliance.
  2123. %K Swarm, log-based, atomic interface routines
  2124. %Y
  2125.  
  2126. %A Spatscheck, Oliver
  2127. %A Hansen, Jorgen S.
  2128. %A Hartman, John H.
  2129. %A Peterson, Larry
  2130. %T Optimizing TCP Forwarder Performance
  2131. %D Monday, February 9, 1998
  2132. %Z Mon, 09 Feb 98 00:00:00 GMT
  2133. %R TR98-01
  2134. %I The Department of Computer Science, University of Arizona
  2135. %U ftp://ftp.cs.arizona.edu/reports/1998/TR98-01.ps.Z/
  2136. %X A TCP forwarder is a network node that establishes and
  2137. forwards data between a pair of TCP connections.  For example, a
  2138. firewall that places a proxy between a TCP connection to an external
  2139. host and a TCP connection to an internal host---for the purpose of
  2140. implementing access control to a resource on the internal host---is an
  2141. example of a TCP forwarder. Once the proxy approves the access, it
  2142. simply forwards data from one connection to the other.  We use the
  2143. term {\it TCP forwarding} to describe indirect TCP communication via a
  2144. proxy in general.  This paper characterizes the behavior of TCP
  2145. forwarding, and illustrates the role TCP forwarding plays in common
  2146. network services like firewalls and HTTP proxies. We introduce an
  2147. optimization technique, called {\it connection splicing}, that can
  2148. applied to a TCP forwarder, and reports the results of a performance
  2149. study designed to evaluate its impact.  Connection splicing has the
  2150. effect of improving the performance of TCP forwarding by a factor of
  2151. two to four, making it competitive with the performance of an IP
  2152. router running on the same hardware.
  2153. %K TCP, network, node, internal host, firewalls
  2154. %Y
  2155.  
  2156. %A Mosberger, David
  2157. %T Message Library Design Notes
  2158. %D Tuesday, November 25, 1997
  2159. %Z Wed, 08 Jan 97 00:00:00 GMT
  2160. %R TR97-19
  2161. %I The Department of Computer Science, University of Arizona
  2162. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-19.ps.Z
  2163. %X This document describes the current implementation of the x -kernel
  2164. message library. The focus is on its data structures and the underlying
  2165. principles. This document does not describe the message librarys
  2166. in-terface or how it is used. Please refer to the x -kernel Programmers
  2167. Manual [1] and the x -kernel Tutorial [2] for that purpose.
  2168. %K x-kernel
  2169. %Y
  2170.  
  2171. %A Mosberger, David
  2172. %T Map Library Design Notes
  2173. %D Tuesday, November 25, 1997
  2174. %Z Wed, 08 Jan 97 00:00:00 GMT
  2175. %R TR97-18
  2176. %I The Department of Computer Science, University of Arizona
  2177. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-18.ps.Z
  2178. %X This document describes the current implementation of the x-kernel map
  2179. library. The focus is on its un-derlying data structures and algorithms.
  2180. This document does not describe the map librarys interface or how it is
  2181. used. Please refer to the x-kernel Programmers Manual [1] and the
  2182. x-kernel Tutorial [2] for that purpose.
  2183. %K x-kernel
  2184. %Y
  2185.  
  2186. %A Spatscheck, Oliver
  2187. %A Peterson, Larry
  2188. %T Escort: A Path-Based OS Security Architecture
  2189. %D Monday, November 17, 1997
  2190. %Z Wed, 08 Jan 97 00:00:00 GMT
  2191. %R TR97-17
  2192. %I The Department of Computer Science, University of Arizona
  2193. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-17.ps.Z
  2194. %X Escort is the security architecture for Scout, a configurable
  2195. operating system designed for network appliances. Scout is unique in
  2196. that it is designed around {\it paths}---a communication-centric
  2197. abstraction that encapsulates information flows through the
  2198. system---rather than the more traditional processes and servers. Scout
  2199. uses paths to make end-to-end resource allocation decisions. Escort
  2200. extends this idea to isolate these information flows, as well as to
  2201. provide end-to-end accountability. This paper introduces the Escort
  2202. security architecture, shows how it can be used to enforce common
  2203. security policies, and evaluates its design according to several
  2204. well-established criteria.
  2205. %K Escort, Scout
  2206. %Y
  2207.  
  2208. %A Hartman, John H.
  2209. %A Peterson, Larry P.
  2210. %A Bavier, Andy
  2211. %A Bigot, Peter
  2212. %A Bridges, Patrick
  2213. %A Montz, Brady
  2214. %A Piltz, Rob
  2215. %A Proebsting, Todd
  2216. %A Spatscheck, Oliver
  2217. %T Joust: A Platform for Communication-Oriented Liquid Software
  2218. %D Monday, November 17, 1997
  2219. %Z Wed, 08 Jan 97 00:00:00 GMT
  2220. %R TR97-16
  2221. %I The Department of Computer Science, University of Arizona
  2222. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-16.ps.Z
  2223. %X Joust is a software platform for liquid software---code that flows
  2224. easily from machine to machine.  Liquid software makes it easier to
  2225. maintain, debug, update, and customize networked systems.  One of the
  2226. most interesting applications of liquid software is to interject it
  2227. into the nodes of a network, allowing network functionality, such as
  2228. routing, to be customized.  Additional features, such as
  2229. special-purpose congestion control and filtering algorithms, are also
  2230. easily added.  The challenge is to develop a communication-oriented
  2231. platform for liquid software, one in which the focus is the efficient
  2232. transfer of data, not high-performance computation.  To this end we
  2233. have designed and implemented Joust, which consists of a complete
  2234. re-implementation of the Java virtual machine (including both the
  2235. runtime system and a just-in-time compiler), running on the Scout
  2236. operating system (a configurable, communication-oriented OS).  The
  2237. result is a configurable, high-performance platform for running
  2238. communication-oriented liquid software.  We present the results of
  2239. implementing three different liquid software applications on Joust,
  2240. including a prototype architecture for active networks.
  2241. %K Joust, Liquid Software, Java
  2242. %Y
  2243.  
  2244. %A Bavier, Andy
  2245. %A Montz, Brady
  2246. %A Peterson, Larry
  2247. %T Predicting MPEG Execution Times 
  2248. %D Monday, November 3, 1997
  2249. %Z Wed, 08 Jan 97 00:00:00 GMT
  2250. %R TR97-15
  2251. %I The Department of Computer Science, University of Arizona
  2252. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-15.ps.Z
  2253. %X This paper reports on a set of experiments that measure the amount of
  2254. CPU processing needed to decode MPEG-compressed video in software.
  2255. These experiments were designed to discover indicators that could be
  2256. used to predict how many cycles are required to decode a given
  2257. frame. Such predictors can be used to do more accurate CPU scheduling.
  2258. We found that by considering both frame type and size, it is possible
  2259. to construct a linear model of MPEG decoding with $R^2$ values of 0.97
  2260. and higher. Moreover, this model can be used to predict decoding times
  2261. at both the frame and packet level that are almost always accurate to
  2262. within 25% of the actual decode times. This is a surprising result
  2263. given the large variability in MPEG decoding times, and suggests that
  2264. it is feasible to design systems that make quality of service
  2265. guarantees for MPEG-encoded video, rather than less variable
  2266. encodings, such as JPEG.
  2267. %K keywords
  2268. %Y
  2269.  
  2270. %A Lambright, H. Dan
  2271. %T Automated Verification of Mobile Code
  2272. %D October 24, 1997
  2273. %Z Wed, 08 Jan 97 00:00:00 GMT
  2274. %R TR97-14
  2275. %I The Department of Computer Science, University of Arizona
  2276. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-14.ps.Z
  2277. %X In this thesis, we introduce a new technique to automate the verification of
  2278. mobile code. Using dataflow analysis techniques, the verifier can check
  2279. whether data passed between trusted software components is illegally modified
  2280. by untrusted mobile code. We show that this analysis is powerful enough to
  2281. make significant guarantees about whether the program will access system
  2282. resources safely. Furthermore, by rendering the verification transparent to
  2283. the user, the security system is not vulnerable to human error, or dependent
  2284. on the user's technical abilities. Other verification techniques do not share
  2285. these advantages. We describe what requirements enable this analysis, explore
  2286. its limitations, and present prototype software that implements the idea.
  2287. %K dissertation
  2288. %Y
  2289.  
  2290. %A Debray, Saumya
  2291. %A Muth, Robert
  2292. %A Weippert, Matthew
  2293. %T Alias Analysis of Executable Code
  2294. %D July 18, 1997
  2295. %Z Wed, 08 Jan 97 00:00:00 GMT
  2296. %R TR97-13
  2297. %I The Department of Computer Science, University of Arizona
  2298. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-13.ps.Z
  2299. %X Recent years have seen increasing interest in systems that reason about and
  2300. manipulate executable code.  Such systems can generally benefit from
  2301. information about aliasing.  Unfortunately, most existing alias analyses
  2302. are formulated in terms of high-level language features, and are unable
  2303. to cope with features, such as pointer arithmetic, that pervade executable
  2304. programs.  This paper describes a simple algorithm that can be used to
  2305. obtain aliasing information for executable code.
  2306. In order to be practical, the algorithm is careful to keep its memory
  2307. requirements low, sacrificing precision where necessary to achieve this
  2308. goal.  Experimental results indicate that it is nevertheless able to
  2309. provide a reasonable amount of information about memory
  2310. references across a variety of benchmark programs.
  2311. %K keywords
  2312. %Y
  2313.  
  2314. %A Bhatti, Nina T.
  2315. %A Hiltunen, Matti A.
  2316. %A Schlichting, Richard D.
  2317. %A Chiu, Wanda
  2318. %T Coyote: A System for Constructing Fine-Grain Configurable Communication
  2319. Services
  2320. %D July 7, 1997
  2321. %Z Wed, 08 Jan 97 00:00:00 GMT
  2322. %R TR97-12
  2323. %I The Department of Computer Science, University of Arizona
  2324. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-12.ps.Z
  2325. %X Communication-oriented abstractions such as atomic multicast, group RPC,
  2326. and protocols for location-independent mobile computing can simplify the
  2327. development of complex applications built on distributed systems.  This
  2328. paper describes Coyote, a system that supports the construction of highly
  2329. modular and configurable versions of such abstractions. Coyote extends the
  2330. notion of protocol objects and hierarchical composition found in existing
  2331. systems with support for finer-grain objects called micro-protocols that
  2332. implement individual semantic properties of the target service.  A customized
  2333. service is constructed by selecting micro-protocols based on their semantic
  2334. guarantees and configuring them together with a standard runtime system to
  2335. form a composite protocol implementing the service. Micro-protocols within
  2336. a composite protocol can share data and are executed using an event-driven
  2337. paradigm that enhances configurability. The overall approach is described
  2338. and illustrated with examples of services that have been constructed using
  2339. Coyote, including atomic multicast, group RPC, membership, and mobile
  2340. computing protocols. A prototype implementation based on extending
  2341. {\it x}-kernel version 3.2 running on Mach MK82 with support for
  2342. micro-protocols is also presented, together with performance results from
  2343. a suite of micro-protocols from which over 60 variants of group RPC can be
  2344. constructed.
  2345. %K keywords
  2346. %Y
  2347.  
  2348. %A Jain, Mudita
  2349. %T Algorithms for Physical Mapping Using Unique Probes
  2350. %D June 9, 1997
  2351. %Z Wed, 08 Jan 97 00:00:00 GMT
  2352. %R TR97-11
  2353. %I The Department of Computer Science, University of Arizona
  2354. %U 
  2355. %X DNA molecules are sequences of characters over a four letter alphabet.
  2356. Determining the text of the DNA sequence contained in human cells is the goal
  2357. of the Human Genome Project. The structure of a DNA sequence is reconstructed
  2358. from a set of shorter fragments sampled from it at unknown locations, as it
  2359. is usually too long to be determined directly. We consider the problem when
  2360. the fragments are very long, and each fragment has a fingerprint consisting
  2361. of the presence of two or three pre-selected, smaller sequences called probes
  2362. within it. These probes have a unique location along the original DNA sequence.
  2363. The fingerprints contain false negative and false positive errors, and the
  2364. fragments may be chimeric. A physical map of a DNA sequence is a reconstruction
  2365. of the order of the probes and fragments along it. In short, given a collection
  2366. of fragments, with fingerprints for each fragment taken from a collection of
  2367. probles, and parameters that bound the rates of false negatives, false
  2368. positives, and chimeras in the input data, the problem is to find the most
  2369. likely probe ordering.
  2370.     Physical mapping in NP-complete when the input data contains errors.
  2371. To contstruct physical maps we first determine neighbourhoods of probes and
  2372. clones that are highly likely to be adjacent on the original DNA sequence.
  2373. We then use a new, versatile integer programming formulation of the problem,
  2374. to derive heuristics for ordering probes within neighbourhoods. This
  2375. formulation provides a single, uniform representation for diverse data such
  2376. as end-clone probes and in-situ hybridization, and provides a natural medium
  2377. for the integration of previously constructed maps with newer data. We also
  2378. present an ordering heuristic based upon end-clone data. Finally, we connect
  2379. these local permutations into a larger, more global probe permutation. For
  2380. this we use heuristics that have at their core previously mapped data. All
  2381. heuristics are implemented and evaluated by comparing the computed probe
  2382. orderings to the original probe orderings for simulated data.
  2383. %K dissertation; not available online
  2384. %Y
  2385.  
  2386. %A Han, Xiaonan Han
  2387. %A Hiltunen, Matti A.
  2388. %A Schlichting, Richard D.
  2389. %T Supporting Configurable Real-Time Communication Services
  2390. %D June 5, 1997
  2391. %Z Wed, 08 Jan 97 00:00:00 GMT
  2392. %R TR97-10 
  2393. %I The Department of Computer Science, University of Arizona
  2394. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-10.ps.Z
  2395. %X abstract
  2396. %K keywords
  2397. %Y
  2398.  
  2399. %A Evans, William
  2400. %A Kirkpatrick, David
  2401. %A Townsend, Gregg
  2402. %T Right Triangular Irregular Networks
  2403. %D May 30, 1997
  2404. %Z Wed, 08 Jan 97 00:00:00 GMT
  2405. %R TR97-09
  2406. %I The Department of Computer Science, University of Arizona
  2407. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-09.ps.Z
  2408. %X We describe a hierarchical data structure for representing a digital
  2409. terrain (height field) which contains approximations of the terrain at
  2410. different levels of detail. The approximations are based on triangulations
  2411. of the underlying two-dimensional space using right-angled triangles.
  2412. The methods we discuss allow the approximation to precisely represent
  2413. the surface in certain areas while coarsely approximating the surface
  2414. in others. Thus, for example, the area close to an observer may be
  2415. represented with greater detail than areas which lie outside their field
  2416. of view.
  2417. We discuss the application of this hierarchical data structure to
  2418. the problem of interactive terrain visualization.  We point out some of
  2419. the advantages of this method in terms of memory usage and speed.
  2420. %K keywords
  2421. %Y
  2422.  
  2423. %A Coffman, Jr., E.G.
  2424. %A Downey, Peter J.
  2425. %A Winkler, Peter
  2426. %T A Note on Packing Rectangles in Groups
  2427. %D May 15, 1997
  2428. %Z Wed, 08 Jan 97 00:00:00 GMT
  2429. %R TR97-07
  2430. %I Department of Computer Science, The University of Arizona
  2431. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-07.ps.Z
  2432. %X Rectangles from a list of length n are packed into a
  2433. unit width strip.  The rectangles have dimensions independently chosen
  2434. from a uniform distribution on [0, 1], and the packing objective is to
  2435. minimize the expected height of the packing of n items.
  2436. The packing algorithms of interest must operate on-line, as well as adhere
  2437. to a constraint reminiscent of the Tetris game: rectangles arrive from
  2438. the top and must be moved at arrival without overlap within the strip
  2439. to reach their final placement.  This paper assumes no rotation of rectangles.
  2440. The Group Packing algorithm GP_3 packs rectangles densely in groups of 3
  2441. at a time, starting a new level at the highest point reached by any
  2442. rectangle in the group.  The GP_3 algorithm achieves an asymptotic
  2443. expected height of (0.38541 ... ) n.  This is slightly worse than
  2444. the bound (0.38134 ... ) n achieved by Next Fit Level (NFL) packing.
  2445. %K two-dimensional bin-packing, strip packing, on-line algorithms, lower bounds
  2446. %Y
  2447.  
  2448. %A Mosberger-Tang, David
  2449. %T SCOUT: A Path-based Operating System
  2450. %D May 13, 1997
  2451. %Z Wed, 08 Jan 97 00:00:00 GMT
  2452. %R TR97-06
  2453. %I The Department of Computer Science, University of Arizona
  2454. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-06.ps.Z
  2455. %X Scout is a new operating system architecture that is designed
  2456. specifically to accommodate the needs of communication-centric
  2457. systems. An important class of such systems is formed by information
  2458. appliances, which, broadly speaking, are devices whose primary task is
  2459. to facilitate communication. Appliances are typically relatively
  2460. small, special-purpose, and often mobile devices such as remote
  2461. controls, personal information managers, network-attached disks,
  2462. cameras, displays, or dedicated file-servers.
  2463. Scout has a modular structure that is complemented by a new
  2464. abstraction called the path. The modular structure enables the
  2465. efficient building of systems that are tailored precisely to the
  2466. requirements of a particular appliance.  Paths address issues related
  2467. to the performance and quality with which a communication service is
  2468. rendered. A path can be visualized as a vertical slice through a
  2469. layered system or viewed abstractly as a bidirectional flow of
  2470. data. As such, a path typically traverses multiple modules in a Scout
  2471. system. This means that paths provide additional context to the
  2472. modules that process data that is being communicated through the
  2473. system. This context often makes it possible to implement data
  2474. processing more efficiently or to improve the quality with which
  2475. resource management, such as CPU scheduling or memory allocation, is
  2476. realized.
  2477. This dissertation develops the path abstraction from first principles
  2478. and then introduces the various aspects of the Scout
  2479. architecture. Aside from the path abstraction, Scout uses a novel
  2480. approach for network packet classification.  With the Scout
  2481. architecture defined, two studies are presented that provide an
  2482. in-depth look at how to use Scout and its path abstraction. The first
  2483. study employs the path abstraction to reduce processing latency in the
  2484. networking subsystem. Evaluating these path optimizations also
  2485. provides important insights on the performance behavior of networking
  2486. subsystems on modern RISC machines. The second study employs the path
  2487. abstraction to improve resource management for an information
  2488. appliance that involves a networked TV displaying MPEG encoded video.
  2489. %K dissertation
  2490. %Y
  2491.  
  2492. %A Gopal, Burra
  2493. %T Integrating Content-Based Access Mechanisms with Hierarchical File Systems
  2494. %D April 18, 1997
  2495. %Z Wed, 08 Jan 97 00:00:00 GMT
  2496. %R TR97-05
  2497. %I The Department of Computer Science, University of Arizona
  2498. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-05.ps.Z
  2499. %X We describe a new file system that provides, at the same time,
  2500. both name and content based access to files. To make this possible,
  2501. we introduce the concept of a semantic directory. Every
  2502. semantic directory has a query associated with it. When a user
  2503. creates a semantic directory, the file system automatically creates
  2504. a set of pointers to the files in the file system that satisfy
  2505. the query associated with the directory. This set of pointers is
  2506. called the query-result of the directory. To access the files
  2507. that satisfy the query, users just need to de-reference the
  2508. appropriate pointers. Users can also create files and sub-directories
  2509. within semantic directories in the usual way. Hence, users can
  2510. organize files in a hierarchy and access them by specifying path names,
  2511. and at the same time, retrieve files by asking queries that
  2512. describe their content.
  2513.     Our file system also provides facilities for query-refinement and customization. When a user creates a new semantic sub-directory within a semantic directory, the file system ensures that the query-result of the sub-directory is a subset of the query-result of its parent. Hence, users can create a hierarchy of semantic directories to refine their queries. Users can also edit the set of pointers in a semantic directory, and thereby modify its query-result without modifying its query or the files in the file system. In this way, users can customize the results of queries according to their personal tastes, and use customized results to refine queries in the future.  That is, users do not have to depend solely on the query language to achieve these objectives.
  2514.     Our file system has many other features, including semantic mount-points that allow users to access information in other file systems by content.  The file system does not depend on the query language used for content-based access. Hence, it is possible to integrate any content-based access mechanism into our file system.
  2515. %K dissertation
  2516. %Y
  2517.  
  2518. %A Coffman, E.G., Jr.
  2519. %A Downey, Peter
  2520. %A Winkler, Peter
  2521. %T Packing Rectangles in a Strip
  2522. %D April 8, 1997
  2523. %Z Wed, 08 Jan 97 00:00:00 GMT
  2524. %R TR97-04
  2525. %I The Department of Computer Science, University of Arizona
  2526. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-04.ps.Z
  2527. %X Rectangles with dimensions independently chosen from
  2528. a uniform distribution on [0, 1] are packed on-line into a
  2529. unit width strip under a constraint like that of the Tetris game:
  2530. rectangles arrive from the top and must be moved inside the strip
  2531. to reach their place; once placed, they cannot be moved again.
  2532. Cargo loading applications impose similar constraints.
  2533. This paper assumes that rectangles must be moved without rotation.
  2534. For n rectangles, the resulting packing
  2535. height is shown to have an asymptotic expected value of at least
  2536. (0.31382733 ... )n under any on-line packing algorithm.  An on-line
  2537. algorithm is presented that achieves an asymptotic expected height of
  2538. (0.36976421 ... )n.  This algorithm improves the bound achieved in
  2539. Next Fit Level (NFL) packing, by compressing the items packed on
  2540. two successive levels of an NFL packing via on-line movement
  2541. admissible under the Tetris-like constraint.
  2542. %K two-dimensional bin-packing, strip packing, on-line algorithms, lower bounds
  2543. %Y
  2544.  
  2545. %A Brakmo, Lawrence
  2546. %T End-To-End Congestion Detection and Avoidance in Wide Area Networks
  2547. %D 03/10/97
  2548. %Z Wed, 08 Jan 97 00:00:00 GMT
  2549. %R TR97-03
  2550. %I The Department of Computer Science, University of Arizona
  2551. %U 
  2552. %X As human dependence on wide area networks like the Internet increases,
  2553. so does contention for the network's resources. This contention has
  2554. noticeably affected the performance of these networks, reducing their
  2555. usability. This dissertation addresses this problem in two ways.
  2556.     First, it describes TCP Vegas, a new implementation of TCP that
  2557. is distinguished from current TCP implementations by containing a new
  2558. congestion detection and avoidance mechanism. This mechanism was
  2559. designed to work in currently available wide area networks and achieves
  2560. between 37% and 71% better throughput on the Internet, with one-fifth
  2561. to one-half the losses, as compared to the current implementation of
  2562. TCP.
  2563.     Second is describes x-Sim, a network simulator based on the x-kernel,
  2564. that is able to simulate the topologies and traffic patterns of large
  2565. scale networks. The usefulness of the simulator to analyze and debug
  2566. network components is illustrated throughout this dissertation.
  2567. %K dissertation; not available online
  2568. %Y
  2569.  
  2570. %A Orman, Hilarie
  2571. %T The Oakley Key Determination Protocol
  2572. %D February 17, 1997
  2573. %Z Wed, 08 Jan 97 00:00:00 GMT
  2574. %R TR97-02
  2575. %I The Department of Computer Science, University of Arizona
  2576. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-02.ps.Z
  2577. %X This document describes a protocol, named OAKLEY, by which two authenticated
  2578. parties can agree on secure and secret keying material.  The basic mechanism is
  2579. the Diffie-Hellman key exchange algorithm.
  2580.     The OAKLEY protocol supports Perfect Forward Secrecy, compatibility
  2581. with the ISAKMP protocol for managing security associations, user-defined
  2582. abstract group structures for use with the Diffie-Hellman algorithm, key
  2583. updates, and incorporation of keys distributed via out-of-band mechanisms.
  2584. %K keywords
  2585. %Y
  2586.  
  2587. %A Proebsting, Todd A.
  2588. %A Townsend, Gregg
  2589. %A Bridges, Patrick
  2590. %A Hartman, John H. 
  2591. %A Newsham, Tim 
  2592. %A Watterson, Scott A.
  2593. %T Toba: Java For Applications: A Way Ahead of Time (WAT) Compiler
  2594. %D January 8, 1997
  2595. %Z Wed, 08 Jan 97 00:00:00 GMT
  2596. %R TR97-01
  2597. %I The Department of Computer Science, University of Arizona
  2598. %U ftp://ftp.cs.arizona.edu/reports/1997/TR97-01.ps.Z
  2599. %X Toba is a system for generating efficient standalone Java applications.
  2600. Toba includes a Java-bytecode-to-C compiler, a garbage collector, a threads
  2601. package, and Java API support. Toba-compiled Java applications execute
  2602. 1.5--10 times faster than interpreted and Just-In-Time compiled applications.
  2603. %K keywords
  2604. %Y
  2605.  
  2606. %A Bhatti, Nina
  2607. %T A System for Constructing Configurable High-level Protocols
  2608. %D Wednesday, December 4, 1996
  2609. %Z Wed, 23 Oct 96 00:00:00 GMT
  2610. %R TR96-22
  2611. %I The Department of Computer Science, University of Arizona
  2612. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-22.ps.Z
  2613. %X Distributed applications often require sophisticated communication services
  2614. such as multicast, membership, group RPC (GRPC), transactions, or support for
  2615. mobility.  These services form a large portion of the supporting software for
  2616. distributed applications, yet the specific requirements of the service vary
  2617. from application to application.  Constructing communication services that
  2618. are useful for multiple diverse applications while still being manageable
  2619. and efficient is a major challenge.
  2620. This dissertation focuses on improving the construction of complex
  2621. communication services.  The contributions of the dissertation are a new
  2622. model for the construction of such services and the design and implementation
  2623. of a supporting network subsystem. In this model, a communication service is
  2624. decomposed into distinct micro-protocols, each implementing a specific semantic
  2625. property.  Micro-protocols have well-defined interfaces that use events to
  2626. coordinate actions and communicate state changes, which results in a highly
  2627. modular and configurable implementation. 
  2628. This model augments, rather than replaces, the conventional hierarchical
  2629. protocol model.  In this implementation, a conventional {\it x}-kernel
  2630. protocol is replaced with a composite protocol in which micro-protocol objects
  2631. are linked with a standard runtime system that externally presents the standard
  2632. {\it x}-kernel interface.  Internally, the runtime system provides common
  2633. message services, enforces a uniform interface between micro-protocols, detects
  2634. and generates events, and synchronously or asynchronously executes event
  2635. handlers.
  2636. The viability of the approach is demonstrated by performance tests for several
  2637. different configurations of a suite of micro-protocols for a group RPC service.
  2638. The micro-protocols in this suite implement multiple semantic properties of
  2639. procedure call termination, message ordering, reliability, collation of
  2640. responses, call semantics, membership, and failure. The tests were conducted
  2641. while running within the {\it x}-kernel as a user level task on the Mach
  2642. operating system.
  2643. Additional micro-protocols for mobile computing applications validate the
  2644. generality of the model.  We designed micro-protocols for quality of service
  2645. (QoS), transmitting and renegotiating QoS parameters during handoffs, as well
  2646. as for mobility management, covering cell detection, handoff, and
  2647. disconnection.  This suite of micro-protocols can be configured to accommodate
  2648. a range of different service requirements or even to mimic existing mobile
  2649. architectures such as those found in the Crosspoint, PARC TAB, InfoPad, or
  2650. DataMan projects.
  2651. %K dissertation 
  2652. %Y
  2653.  
  2654. %A Kagedal, Andreas
  2655. %A Debray, Saumya
  2656. %T A Practical Approach to Structure Reuse of Arrays in Single Assignment
  2657. Languages
  2658. %D December 2, 1996
  2659. %Z Wed, 23 Oct 96 00:00:00 GMT
  2660. %R TR96-21
  2661. %I The Department of Computer Science, University of Arizona
  2662. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-21.ps.Z
  2663. %X Array updates in single assignment languages generally require some
  2664. copying of the array, and thus tend to be more expensive than in
  2665. imperative languages.  As a result, programs in single assignment
  2666. languages sometimes suffer from a performance handicap compared to
  2667. those in imperative languages.  Traditional attempts to address this
  2668. problem have typically involved either complex compile-time analyses,
  2669. which tend to be slow and fragile; or new language constructs, which
  2670. do not always interface with already existing code.  In this paper, we
  2671. propose a new approach to this problem, based on a simple and
  2672. straightforward program transformation, that we believe addresses the
  2673. shortcomings of both of these approaches: it is easy to understand,
  2674. efficiently implemented, does not require new language constructs, and
  2675. yet is applicable to most commonly encountered programs.
  2676. %K keywords
  2677. %Y
  2678.  
  2679. %A Debray, Saumya
  2680. %A Proebsting, Todd
  2681. %T Title
  2682. %D December 2, 1996
  2683. %Z Wed, 23 Oct 96 00:00:00 GMT
  2684. %R TR96-20
  2685. %I The Department of Computer Science, University of Arizona
  2686. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-20.ps.Z
  2687. %X abstract
  2688. %K keywords
  2689. %Y
  2690.  
  2691. %A Debray, Saumya
  2692. %T Resource-Bounded Partial Evaluation
  2693. %D November 18, 1996
  2694. %Z Wed, 23 Oct 96 00:00:00 GMT
  2695. %R TR96-19
  2696. %I The Department of Computer Science, University of Arizona
  2697. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-19.ps.Z
  2698. %X Most partial evaluators do not take the availability of machine-level
  2699. resources, such as registers or cache, into consideration when making their
  2700. specialization decisions.  The resulting resource contention can lead to
  2701. severe performance degradation---causing, in extreme cases, the specialized
  2702. code to run slower than the unspecialized code.  In this paper we consider
  2703. how resource availability considerations can be incorporated within a
  2704. partial evaluator.  We develop an abstract formulation of the problem, show
  2705. that optimal resource-bounded partial evaluation is NP-complete, and discuss
  2706. simple heuristics that can be used to address the problem in practice.
  2707. %K keywords
  2708. %Y
  2709.  
  2710. %A Muth, Robert
  2711. %A Debray, Saumya
  2712. %T On the complexity of Function Pointer May-Alias Analysis
  2713. %D October 25, 1996
  2714. %Z Wed, 23 Oct 96 00:00:00 GMT
  2715. %R TR96-18
  2716. %I The Department of Computer Science, University of Arizona
  2717. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-18.ps.Z
  2718. %X This paper considers the complexity of interprocedural function pointer
  2719. may-alias analysis, i.e., determining the set of functions that a function
  2720. pointer (in a language such as C) can point to at a point in a program.
  2721. This information is necessary, for example, in order to construct the
  2722. control flow graphs of programs that use function pointers, which in turn is
  2723. fundamental for most dataflow analyses and optimizations.  We show that the
  2724. general problem is complete for deterministic exponential time.  We then
  2725. consider two natural simplifications to the basic (precise) analysis and
  2726. examine their complexity.  The approach described can be used to readily
  2727. obtain similar complexity results for related analyses such as reachability
  2728. and recursiveness.
  2729. %K keywords
  2730. %Y
  2731.  
  2732. %A Tong, Bo-Ming
  2733. %A Leung, Ho-Fung
  2734. %T Load Balancing in a Distributed-Memory Or-Parallel System
  2735. %D Date issued
  2736. %Z Wed, 23 Oct 96 00:00:00 GMT
  2737. %R TR 96-17
  2738. %I The Department of Computer Science, University of Arizona
  2739. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-17.ps.Z
  2740. %X We consider or-parallel logic programming implementations on parallel
  2741. machines with no shared-memory. Traditional implementation techniques as
  2742. employed in Aurora and Muse are not applicable.  In our or-parallel execution
  2743. model, all processors perform identical work initially.  At each choice point,
  2744. processors are divided evenly among alternatives of the choice point.
  2745. Backtracking is employed if there are not enough processors for such a
  2746. division. As execution proceeds, the division of processors among alternatives
  2747. becomes uneven. In this paper, we present two different methods of load
  2748. balancing called equalization and apportion, aimed at improving the degree
  2749. of parallelism.  Equalization and apportion reallocates all processors to the
  2750. or-parallel branches by copying heaps through a interprocessor communication
  2751. network.
  2752. %K keywords
  2753. %Y
  2754.  
  2755. %A Pagels, Michael A.
  2756. %T Chimaera: A High-Bandwidth Network Interface Supporting Cooperative Tasks
  2757. %D Date issued
  2758. %Z Wed, 23 Oct 96 00:00:00 GMT
  2759. %R TR96-16
  2760. %I The Department of Computer Science, University of Arizona
  2761. %U 
  2762. %X abstract
  2763. %K not available online
  2764. %Y
  2765.  
  2766. %A DeBosschere, Koen
  2767. %A Debray, Saumya
  2768. %T alto: A Link-Time Optimizer for the DEC Alpha
  2769. %D Date issued
  2770. %Z Wed, 23 Oct 96 00:00:00 GMT
  2771. %R TR96-15
  2772. %I The Department of Computer Science, University of Arizona
  2773. %U 
  2774. %X abstract
  2775. %K see TR98-14
  2776. %Y
  2777.  
  2778. %A Ogurtsov, Nick
  2779. %A Orman, Hilarie
  2780. %A Schroeppel, Richard 
  2781. %A O'Malley, Sean
  2782. %A Spatscheck, Oliver
  2783. %T Covert Channel Elimination Protocols
  2784. %D Date issued
  2785. %Z Wed, 23 Oct 96 00:00:00 GMT
  2786. %R TR96-14
  2787. %I The Department of Computer Science, University of Arizona
  2788. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-14.ps.Z
  2789. %X With the increasing growth of electronic communications, it is becoming
  2790. important to provide a mechanism for enforcing various security policies
  2791. on network communications. This paper discusses our implementation of
  2792. several previously proposed protocols that enforce theell LaPadula
  2793. security model. We also introduce a new protocol called "Quantized Pump"
  2794. that offers several advantages, and present experimental results to
  2795. support our claims.
  2796. %K keywords
  2797. %Y
  2798.  
  2799. %A Afjeh, Abdollah A.
  2800. %A Homer, Patrick T.
  2801. %A Lewandowski, Henry 
  2802. %A Reed, John A.
  2803. %A Schlichting, Richard D.
  2804. %T Implementing Monitoring and Zooming in a Distributed Jet Engine Simulation
  2805. %D Date issued
  2806. %Z Wed, 23 Oct 96 00:00:00 GMT
  2807. %R TR96-13
  2808. %I The Department of Computer Science, University of Arizona
  2809. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-13.ps.Z
  2810. %X The NASA Numerical Propulsion System Simulation (NPSS) project is
  2811. exploring the use of computer simulation to facilitate the design of
  2812. new jet engines. Several key issues raised in this research are being
  2813. examined in an NPSS-related research project: zooming, monitoring and
  2814. control, and support for heterogeneity. The design and implementation
  2815. of a simulation executive that addresses each of these issues is described.
  2816. In this work, the strategy of zooming, which allows codes that model at
  2817. different levels of fidelity to be integrated within a single simulation,
  2818. is applied to the fan component of a turbofan propulsion system. A
  2819. prototype monitoring and control system supports experimentation with
  2820. expert system techniques for active control of the simulation. An
  2821. interconnection system provides a transparent means of connecting
  2822. the heterogeneous systems that comprise the prototype.
  2823. %K keywords
  2824. %Y
  2825.  
  2826. %A Hiltunen, Matti A.
  2827. %T Configurable Fault-Tolerant Distributed Services
  2828. %D Date issued
  2829. %Z Wed, 23 Oct 96 00:00:00 GMT
  2830. %R TR96-12
  2831. %I The Department of Computer Science, University of Arizona
  2832. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-12.ps.Z
  2833. %X Fault tolerance---that is, the ability of a system to continue providing its
  2834. specified service despite failures---is becoming more important as computers
  2835. are increasingly used in application areas such as process control, air-traffic
  2836. control, and banking. Distributed systems, consisting of computers connected
  2837. by a network, are an important platform for many fault-tolerant systems.
  2838. Unfortunately, it is difficult to construct fault-tolerant distributed
  2839. software, so communication services such as multicast, RPC, membership, and
  2840. transactions have been proposed as simplifying abstractions. However, although
  2841. numerous versions of these services have been defined, no single implementation
  2842. provides a perfect match for all applications and all execution environments.
  2843.     This dissertation presents an approach to constructing highly
  2844. configurable fault-tolerant services. A new model is proposed where a service
  2845. is composed out of micro-protocol objects, each of which implements an
  2846. individual semantic property of the overall service. This makes it easy
  2847. to construct different customized versions of a service with properties
  2848. tailored to the specifics of an application. The model allows micro-protocols
  2849. to cooperate using user-definable events and shared variables, making the
  2850. model more flexible than existing approaches. Three prototype implementations
  2851. of the model are also described.
  2852.     In addition, a new approach is introduced for specifying abstract
  2853. properties of services using temporal logic over message ordering graphs,
  2854. which are abstract representations of collections of messages on each site.
  2855. Furthermore, the problem of which combinations of properties or corresponding
  2856. micro-protocols are feasible is addressed by defining relations that identify
  2857. those combinations that result in a functioning service. Dependency and
  2858. configuration graphs are presented as tools for constructing operational
  2859. configurations.
  2860.     This new approach is used to develop configurable membership and
  2861. group RPC services. Furthermore, the system diagnosis problem is contrasted
  2862. with membership, and new membership and system diagnosis algorithms are
  2863. derived based on the observations. Finally, the dissertation presents an
  2864. application of the event-driven model to adaptive systems that dynamically
  2865. change their behavior as a result of changes in the execution environment
  2866. or user requirements.
  2867. %K keywords
  2868. %Y
  2869.  
  2870. %A Hartman, John
  2871. %A Manber, Udi
  2872. %A Peterson, Larry L.
  2873. %A Proebsting, Todd
  2874. %T Liquid Software: A New Paradigm for Networked Systems
  2875. %D Date issued
  2876. %Z Wed, 23 Oct 96 00:00:00 GMT
  2877. %R TR96-11
  2878. %I The Department of Computer Science, University of Arizona
  2879. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-11.ps.Z
  2880. %X This paper introduces the idea of dynamically moving functionality in a
  2881. network-between clients and servers, and between hosts at the edge of the
  2882. network and nodes inside the network. At the heart of moving functionality
  2883. is the ability to support mobile code-code that is not tied to any single
  2884. machine, but instead can easily move from one machine to another. Mobile
  2885. code has been studied mostly for application-level code. This paper explores
  2886. its use for all facets of the network, and in a much more general way.
  2887. Issues of efficiency, interface design, security, and resource allocation,
  2888. among others, are addressed. We use the term liquid software to describe
  2889. the complete picture-liquid software is an entire infrastructure for
  2890. dynamically moving functionality throughout a network. We expect liquid
  2891. software to enble new paradigms, such as active networks that allow users
  2892. and applications to customize the network by interjecting code into it.
  2893. %K keywords
  2894. %Y
  2895.  
  2896. %A Freeh, Vincent W.
  2897. %A Andrews, Gregory R.
  2898. %T Dynamically Controlling False Sharing in a Distributed Shared Memory
  2899. %D Date issued
  2900. %Z Wed, 23 Oct 96 00:00:00 GMT
  2901. %R TR96-10
  2902. %I The Department of Computer Science, University of Arizona
  2903. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-10.ps.Z
  2904. %X Distributed shared memory (DSM) alleviates the need to program message
  2905. passing explicitly on a distributed-memory machine. In order to reduce memory 
  2906. latency, a DSM replicates copies of data. This paper examines several current
  2907. approaches to controlling thrashing caused by false sharing in a DSM. Then it
  2908. introduces a novel memory consistency protocol, writer-owns, which detects
  2909. and eliminates false sharing at run time. In iterative computations, where
  2910. the data is accessed similarly every iteration, the writer-owns protocol can
  2911. have tremendous benefits because the overhead of eliminating false sharing
  2912. is only incurred once. Performance results show that the writer-owns protocol
  2913. is competitive with and often better than existing approaches.
  2914. %K keywords
  2915. %Y
  2916.  
  2917. %A Downey, Peter J.
  2918. %T The Price of Synchrony
  2919. %D Date issued
  2920. %Z Wed, 23 Oct 96 00:00:00 GMT
  2921. %R TR96-09
  2922. %I The Department of Computer Science, University of Arizona
  2923. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-09.ps.Z
  2924. %X abstract
  2925. %K keywords
  2926. %Y
  2927.  
  2928. %A Bigot, Peter A.
  2929. %T pC*: Efficient and Portable Runtime Support for Data-Parallel Languages
  2930. %D Date issued
  2931. %Z Wed, 23 Oct 96 00:00:00 GMT
  2932. %R TR96-08
  2933. %I The Department of Computer Science, University of Arizona
  2934. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-08.ps.Z
  2935. %X A variety of historically-proven computer languages have recently been
  2936. extended to support parallel computation in a \emph{data-parallel}
  2937. framework.  The performance capabilities of modern microprocessors have made
  2938. the ``cluster-of-workstations'' model of parallel computing more attractive,
  2939. by permitting organizations to network together workstations to solve
  2940. problems in concert, without the need to buy specialized and expensive
  2941. supercomputers or mainframes.
  2942.      For the most part, research on these extended languages has focused on
  2943. compile-time analyses which detect data dependencies and use user-provided
  2944. hints to distribute data and encode the necessary communication operations
  2945. between nodes in a multiprocessor system.  These analyses have shown their
  2946. value when the necessary hints are provided, but require more information at
  2947. compile-time than may be available in large-scale real-world programs.
  2948.      This dissertation focuses on elements important to an efficient and
  2949. portable implementation of runtime support for data-parallel languages, to
  2950. the near absence of any reliance on compile-time information.  We consider
  2951. issues ranging from data distribution and global/local address conversion,
  2952. through a communication framework intended to support modern networked
  2953. computers, and optimizations for a variety of communications patterns common
  2954. to data-parallel programs.  The discussion is grounded in a complete
  2955. implementation of a data-parallel language, C*, on stock workstations
  2956. connected with standard network hardware.  The performance of the resulting
  2957. system is evaluated on a set of eight benchmark programs by comparing it to
  2958. optimized sequential solutions to the same problems, and to the reference
  2959. implementation of C* on the Connection Machine CM5 supercomputer.  Our
  2960. implementation, denoted pC* for ``portable C*'', generally performs within
  2961. a factor of four of the optimized sequential algorithms.  In addition, the
  2962. optimizations developed in this dissertation permit a cluster of twelve
  2963. workstations connected with Ethernet to outperform a sixty-four node CM5
  2964. in absolute performance on three of the eight benchmarks.
  2965.      Though we specifically address the issues of runtime support for C*,
  2966. the material in this dissertation applies equally well to a variety of other
  2967. parallel systems, especially the data-parallel features of Fortran 90 and
  2968. High Performance Fortran.
  2969. %K keywords
  2970. %Y
  2971.  
  2972. %A Myers, Eugene
  2973. %T Title
  2974. %D Date issued
  2975. %Z Wed, 23 Oct 96 00:00:00 GMT
  2976. %R TR96-07
  2977. %I The Department of Computer Science, University of Arizona
  2978. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-07.ps.Z
  2979. %X abstract
  2980. %K keywords
  2981. %Y
  2982.  
  2983. %A Suzuki, Masato
  2984. %A Katayama, Takuya
  2985. %A Schlichting, Richard
  2986. %T FTAG: A Functional and Attribute Based Model for Writing Fault-Tolerant
  2987. Software
  2988. %D Date issued
  2989. %Z Wed, 23 Oct 96 00:00:00 GMT
  2990. %R TR96-06
  2991. %I The Department of Computer Science, University of Arizona
  2992. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-06.ps.Z
  2993. %X Programs constructed using techniques that allow software or operational
  2994. faults to be tolerated are typically written using an imperative
  2995. computational model.  Here, an alternative is described in which such
  2996. programs are written using a functional and attribute based model called
  2997. FTAG (Fault-Tolerant Attribute Grammars).  The basic model is introduced
  2998. first, followed by a description of mechanisms that allow a variety of
  2999. standard fault-tolerance techniques to be realized in a straightforward
  3000. way.  Techniques that can be accommodated include replication and checkpointing
  3001. to tolerate operational faults, and recovery blocks and N-version programming
  3002. to tolerate software faults.  Several examples are given to illustrate these
  3003. techniques, including a replicated name server and a fault-tolerant sort that
  3004. uses recovery blocks.  A formal description of FTAG that precisely specifies
  3005. the semantics of the model is also presented.  Finally, a software
  3006. architecture describing how FTAG can be implemented in a computer system
  3007. containing multiple processors is given.
  3008. %K keywords
  3009. %Y
  3010.  
  3011. %A Mosberger, David
  3012. %A Peterson, Larry L.
  3013. %T Making Paths Explicit in the Scout Operating System
  3014. %D Date issued
  3015. %Z Wed, 23 Oct 96 00:00:00 GMT
  3016. %R TR96-05
  3017. %I The Department of Computer Science, University of Arizona
  3018. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-05.ps.Z
  3019. %X This paper makes a case for paths as an explicit abstraction
  3020. in operating system design. Paths provide a unifying infrastructure
  3021. for several OS mechanisms that have been introduced in the last several
  3022. years, including fbufs, integrated layer processing, packet classifiers,
  3023. code specialization, and migrating threads. This paper articulates
  3024. the potential advantages of a path-based OS structure, describes the
  3025. specific path architecture implemented in the Scout OS, and demonstrates
  3026. the advantages in a particular application domain---receiving, decoding,
  3027. and displaying MPEG-compressed video.
  3028. %K keywords
  3029. %Y
  3030.  
  3031. %A Larson, Susan
  3032. %A Jain, Mudita
  3033. %A Anson, Eric
  3034. %A Myers, Eugene
  3035. %T An Interface for a Fragment Assembly Kernel
  3036. %D Date issued
  3037. %Z Wed, 23 Oct 96 00:00:00 GMT
  3038. %R TR96-04a
  3039. %I The Department of Computer Science, University of Arizona
  3040. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-04a.ps.Z
  3041. %X This document describes the C programming language interface to our
  3042. Fragment Assembly Kernel library.  Inputs to the Fragment Assembly Kernel
  3043. are (1) DNA fragment sequences from potentially inaccurate sequencing
  3044. experiments, and (2) optional constraints on fragment assembly such as
  3045. known fragment overlaps or relative fragment orientation.  Fragment
  3046. sequence version control is supported.  The Fragment Assembly Kernel
  3047. produces the most probable reconstructions of the original DNA sequence
  3048. from the fragments, subject to any specified constraints.  Each fragment
  3049. assembly includes multiple sequence alignment and consensus sequences.
  3050. Multiple sequence alignment editing capabilities are provided to allow
  3051. manual correction of sequence errors.
  3052. %K keywords
  3053. %Y
  3054.  
  3055. %A Mosberger, David
  3056. %A Peterson, Larry L.
  3057. %A Bridges, Patrick G.
  3058. %A O'Malley, Sean
  3059. %T Analysis of Techniques to Improve Protocol Processing Latency
  3060. %D Date issued
  3061. %Z Wed, 23 Oct 96 00:00:00 GMT
  3062. %R TR96-03
  3063. %I The Department of Computer Science, University of Arizona
  3064. %U ftp://ftp.cs.arizona.edu/reports/1996/TR96-03.ps.Z
  3065. %X This paper describes several techniques designed to improve protocol
  3066. latency, and reports on their effectiveness when measured on a modern
  3067. RISC machine employing the DEC Alpha processor. We found that the memory
  3068. system---which has long been known to dominate network throughput---is
  3069. also a key factor in protocol latency.  In particular, improving instruction
  3070. cache effectiveness can greatly reduce protocol processing overheads. 
  3071. An important metric in this context is the memory cycles per instructions
  3072. (mCPI), which is the average number of cycles that an instruction stalls
  3073. waiting for a memory access to complete.  The techniques presented in this
  3074. paper reduce the mCPI by up to a factor of 5.8.  In analyzing the
  3075. effectiveness of the techniques, we also present a detailed study of the
  3076. protocol processing behavior of two protocol stacks---TCP/IP and RPC---on
  3077. a modern RISC processor.
  3078. %K keywords
  3079. %Y
  3080.  
  3081. %A Author
  3082. %T Title
  3083. %D Date issued
  3084. %Z Wed, 23 Oct 96 00:00:00 GMT
  3085. %R TR96-02
  3086. %I The Department of Computer Science, University of Arizona
  3087. %U ftp://ftp.cs.arizona.edu/reports
  3088. %X abstract
  3089. %K keywords
  3090. %Y
  3091.  
  3092. %A Author
  3093. %T Title
  3094. %D Date issued
  3095. %Z Wed, 23 Oct 96 00:00:00 GMT
  3096. %R TR96-01
  3097. %I The Department of Computer Science, University of Arizona
  3098. %U ftp://ftp.cs.arizona.edu/reports/1996
  3099. %X abstract
  3100. %K keywords
  3101. %Y
  3102.