home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / reports / bibs.refer.20090604 < prev    next >
Text File  |  2009-06-04  |  146KB  |  3,023 lines

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