Browsing by Author "Chang, RC"
Now showing 1 - 20 of 42
- Results Per Page
- Sort Options
Item type:Item, A configurable Java architecture for mobile terminal software download(2002) ;Lee, YF ;Juang, FS ;Chang, RC ;資訊工程學系Department of Computer ScienceThe objective of software radio is reconfigurability -the ability to dynamically configure software and hardware functionalities of mobile terminals. To achieve this, the concept of software download is emerging. With software download, a mobile terminal can be reconfigured using downloadable modules instead of saving all the software in its non-volatile memory. This paper presents the design of a configurable Java architecture. With this architecture, we may dynamically build secure and flexible execution environments for different software requirements. The implementation of the configurable Java virtual architecture is based on K virtual machine (KVM) and the constructed execution environment supports user application, man-machine interface (MMI), and protocol stack reconfigurability.Item type:Item, A new real-time disk scheduling algorithm and its application to distributed multimedia storage systems(1998) ;Chang, RI ;Shih, WK ;Chang, RC ;資訊工程學系Department of Computer ScienceIn this paper, a new real-time disk scheduling algorithm called BFI (best-fit-insertion) is proposed. Notably, different from the conventional realtime problem, the service time of a disk request depends on its schedule result. As the service time is not a constant value, it is time-consuming to verify the feasibility of a schedule. In this paper, we introduce a temporal parameter called maximum tardiness. With the help of maximum tardiness, we can verify the improvement of an insertion test within a constant time. We have evaluated and implemented our proposed algorithm on operating systems. Experiments show that the proposed algorithm can support more requests and can achieve higher disk throughput than that of the conventional approach.Item type:Item, A seamless vertical handoff scheme(2005) ;Kang, RJ ;Chang, HP ;Chang, RC ;資訊工程學系Department of Computer ScienceIn the last decade, many new wireless communication systems have been proposed and developed These communication systems have different extends of network coverage and form a hierarchical overlay network. A vertical handoff is thus occurred when moving between these different communication systems. In this paper, we propose a new vertical handoff scheme: MOST (Vertical Hand-Off through Seamless TCP-migration). In VHOST, we first design the mechanism to detect an ongoing handoff. Then, on the basis of TCP-migration, we show how a connection is migrated from the old communication system to the new one. Finally, MOST includes a handoff-aware TCP adaptation mechanism for link adaptation to accommodate with the different network characteristics. To verify the feasibility of our approach, we implement a prototype system on Linux. The experimental results show that the vertical handoff time is short and acceptable for most applications. Besides, TCP performance is improved by our proposed handoff-aware adaptation scheme. For example, the TCP throughput by proposed adaptation scheme is 1.8 times the original TCP without adaptation.Item type:Item, A secure disk system: Using file system level knowledge for disk data protection(2005) ;Tsai, DS ;Chang, DW ;Chang, RC ;資訊工程學系Department of Computer ScienceWhen the system is attacked and the privilege of the administrator is gained by the intruder, some important system files mail be tampered with or destroyed. In this paper, we propose a secure disk system called SecDisk, which is embedded in a disk and utilizes the knowledge of how the file system above is using the disk to protect on-disk data from intrusions. When the host system violates the access rules for the data, the administrator will be notified and the original data can be backed tip by the disk. This is beneficial since it can protect important data even when the host system is compromised. According to the experimental results, the overhead is acceptable during normal operation.Item type:Item, A simple self-collision avoidance for cloth animation(1998-01-01) ;Liu, JD ;Ko, MT ;Chang, RC ;資訊工程學系Department of Computer ScienceThis paper discusses the self-collision avoidance problem in simulating the dynamic behavior of deformable cloth. It is not an easy task to simulate realistically the response of cloth in various types of complicated self-collisions. In this paper, the bounding box technique in addition to ordinary pre-checking for collision detection is used to avoid self-collision. Instead of avoiding self-collision of cloth triangles, we relax to avoid the collision of the bounding boxes of cloth triangles. Some constraints are enforced on the vertices of the cloth triangles to prevent their bounding boxes from penetrating in the direction of collision. The experimental results show that the relaxed self-collision avoidance method can create realistic cloth behavior and wrinkling formation processes. Since the types of interaction between bounding boxes are simple, our method is simple but robust in avoiding self-collisions. (C) 1998 Elsevier Science Ltd. All rights reserved.Item type:Item, A systematic design of protocol processors(1996) ;Chen, AY ;Chen, YS ;Chang, RC ;Wen, KA交大名義發表An innovative design methodology is proposed for protocol processors design. The protocol description is mapped to statecharts and statecharts are then mapped to a real-time operating system as well as microprocessors. The IS-54 protocol for cellular wireless communication mobile station is taken as the design example. And an efficient and easy-for-evaluation design environment is then constructed.Item type:Item, Achieving predictable response time with an intelligent file system updater(1996-06-01) ;Feng, LC ;Chang, RC ;資訊工程學系Department of Computer ScienceDelayed write is a very popular technique to improve the file system performance of UNIX operating systems. When write operations are delayed, an update policy decides how and when to write these modified blocks to their assigned disk locations. Recent research results show that conventional update mechanisms do not perform very well, because they neglect the fact that different I/O requests naturally have different characteristics. It makes time critical interactive jobs endure large variations in response time. Update policy controls background write activities that are less time critical and should be performed under constraints that do not violate the urgency of other time critical jobs. In this paper we propose an effective update scheme. We suggest new techniques: burst declustering and opportunistic asynchronous write. Besides, we develop a system activity sensor called SAPRO (system activity probe) that monitors the system activities and disk queuing status to adjust the behavior of our algorithm. Performance evaluation shows that our algorithm can alleviate the lengthy queuing delay, reduce the variance and worst case read response time significantly (30% and 51% respectively). The mean read response time and total system performance are also improved.Item type:Item, Achieving predictable response time with an intelligent file system updater(1996-06-01) ;Feng, LC ;Chang, RC ;交大名義發表 ;資訊工程學系National Chiao Tung UniversityDelayed write is a very popular technique to improve the file system performance of UNIX operating systems. When write operations are delayed, an update policy decides how and when to write these modified blocks to their assigned disk locations. Recent research results show that conventional update mechanisms do not perform very well, because they neglect the fact that different I/O requests naturally have different characteristics. It makes time critical interactive jobs endure large variations in response time. Update policy controls background write activities that are less time critical and should be performed under constraints that do not violate the urgency of other time critical jobs. In this paper we propose an effective update scheme. We suggest new techniques: burst declustering and opportunistic asynchronous write. Besides, we develop a system activity sensor called SAPRO (system activity probe) that monitors the system activities and disk queuing status to adjust the behavior of our algorithm. Performance evaluation shows that our algorithm can alleviate the lengthy queuing delay, reduce the variance and worst case read response time significantly (30% and 51% respectively). The mean read response time and total system performance are also improved.Item type:Item, Adaptive-level memory caches on World Wide Web servers(2000-03-01) ;Chang, DW ;Ke, HR ;Chang, RC ;交大名義發表資訊工程學系Owing to the fast growth of World Wide Web (WWW), web traffic has become a major component of Internet traffics. Consequently, the reduction of document retrieval latency on WWW becomes more and more important. The latency can be reduced in two ways: reduction of network delay and improvement of web servers' throughput. Our research aims at improving a web server's throughput by keeping a memory cache in a web server's address space. In this paper, we focus on the design and implementation of a memory cache scheme. We propose a novel web cache management policy named the adaptive-level policy that either caches the whole file content or only a portion of it, according to the file size. The experimental results show three things. First, our memory cache is beneficial since, under our experimental workloads, the throughput improvement can achieve 32.7%. Second, our cache management policy is suitable for current web traffic. Third, with the increasing popularity of multimedia files, our policy will outperform others currently used in WWW. (C) 2000 Elsevier Science B.V. All rights reserved.Item type:Item, An efficient and stable ray tracing algorithm for parametric surfaces(2002-07-01) ;Wang, SW ;Shih, ZC ;Chang, RC ;資訊工程學系Department of Computer ScienceIn this paper, we propose an efficient and stable algorithm for finding the ray-surface intersections. Newton's method and Bezier clipping are adapted to form the core of our algorithm. Ray coherence is used to find starting points for Newton iteration. We introduce an obstruction detection technique to verify whether an intersection point found by using Newton's method is the closest one. When Newton's method fails to achieve convergence, we use Bezier clipping as the substitution to find the intersection points. This combination achieves significant improvement in tracing primary rays. A similar approach also successfully improves the performance in tracing secondary rays.Item type:Item, An implementation of using remote memory to checkpoint processes(1999-09-01) ;Hsu, ST ;Chang, RC ;資訊工程學系Department of Computer ScienceProcess checkpointing is a procedure which periodically saves the process states into stable storage. Most checkpointing facilities select hard disks for archiving. However, the disk seek time is limited by the speed of the read-write heads, thus checkpointing process into a local disk requires extensive disk bandwidth. In this paper, we propose an approach that exploits the memory on idle workstations as a faster storage for checkpointing. In our scheme, autonomous machines which submit jobs to the computation server offer their physical memory to the server for job checkpointing. Eight applications are used to measure the remote memory performance in four checkpointing policies. Experimental results show that remote memory reduces at least 34.5 per cent of the overhead for sequential checkpointing and 32.1 per cent for incremental checkpointing. Additionally, to checkpoint a running process into a remote memory requires only 60 per cent of the local disk checkpoint latency time. Copyright (C) 1999 John Wiley & Sons, Ltd.Item type:Item, Cache-aware real-time disk scheduling(2004-09-01) ;Chang, HP ;Chang, RI ;Shih, WK ;Chang, RC資訊工程學系Previous real-time disk scheduling algorithms assume that each disk request incurs a physical disk mechanical operation and only consider how to move the disk head under real-time constraints. However, with the increased capacity of on-disk cache, modern disk drives read-ahead data aggressively. Thus, the on-disk cache may service many disk requests without incurring physical disk access. By exploring the design methodology of on-disk cache, in this paper, we propose cache-aware real-time disk scheduling algorithms that take the on-disk cache into consideration during scheduling. Therefore, the scheduling algorithm can help the cache replacement scheme to minimize the cache miss ratio. Besides, the service timing estimation is more accurate in schedulability analysis since the cache effect is considered during scheduling. A simulation-based evaluation shows the proposed scheduling algorithms to be highly successful as compared with the classical real-time disk scheduling algorithms. For example, under sequential workload with 10 sequential streams, the data throughput of our scheme is 1.1 times that of DM-SCAN.Item type:Item, Classifying and alleviating the communication overheads in matrix computations on large-scale NUMA multiprocessors(1998-12-01) ;Wang, YM ;Wang, HH ;Chang, RC ;資訊工程學系Department of Computer ScienceLarge-scale, shared-memory multiprocessors have non-uniform memory access (NUMA) costs. The high communication cost dominates the source of matrix computations' execution. Memory contention and remote memory access are two major communication overheads on large-scale NUMA multiprocessors. However, previous experiments and discussions focus either on reducing the number of remote memory accesses or on alleviating memory contention overhead. In this paper, we propose a simple but effective processor allocation policy, called rectangular processor allocation, to alleviate both overheads at the same time. The policy divides the matrix elements into a certain number of rectangular blocks, and assigns each processor to compute the results of one rectangular block. This methodology may reduce a lot of unnecessary memory accesses to the memory modules. After running many matrix computations under a realistic memory system simulator, we confirmed that at least one-fourth of the communication overhead map be reduced. Therefore, we conclude that rectangular processor allocation policy performs better than other popular policies, and that the combination of rectangular processor allocation policy with software interleaving data allocation policy is a better choice to alleviate communication overhead. (C) 1998 Elsevier Science Inc. All rights reserved.Item type:Item, Classifying and alleviating the communication overheads in matrix computations on large-scale NUMA multiprocessors(1998-12-01) ;Wang, YM ;Wang, HH ;Chang, RC ;資訊工程學系Department of Computer ScienceLarge-scale, shared-memory multiprocessors have non-uniform memory access (NUMA) costs. The high communication cost dominates the source of matrix computations' execution. Memory contention and remote memory access are two major communication overheads on large-scale NUMA multiprocessors. However, previous experiments and discussions focus either on reducing the number of remote memory accesses or on alleviating memory contention overhead. In this paper, we propose a simple but effective processor allocation policy, called rectangular processor allocation, to alleviate both overheads at the same time. The policy divides the matrix elements into a certain number of rectangular blocks, and assigns each processor to compute the results of one rectangular block. This methodology may reduce a lot of unnecessary memory accesses to the memory modules. After running many matrix computations under a realistic memory system simulator, we confirmed that at least one-fourth of the communication overhead map be reduced. Therefore, we conclude that rectangular processor allocation policy performs better than other popular policies, and that the combination of rectangular processor allocation policy with software interleaving data allocation policy is a better choice to alleviate communication overhead. (C) 1998 Elsevier Science Inc. All rights reserved.Item type:Item, Cleaning policies in mobile computers using flash memory(1999-11-01) ;Chiang, ML ;Chang, RC ;資訊工程學系Department of Computer ScienceFlash memory is small, lightweight, shock-resistant, nonvolatile, and consumes little power. Flash memory therefore shows promise for use in storage devices for consumer electronics, mobile computers and embedded systems. However, flash memory cannot be overwritten unless erased in advance. Erase operations are slow that usually decrease system performance, and consume power. The number of erase cycles is also limited. For power conservation, better system performance, and longer flash memory lifetime, system support for erasure management is necessary. In this paper, we use the non-update-in-place scheme to implement a flash memory server and propose a new cleaning policy to reduce the number of erase operations needed and to evenly wear out flash memory. The policy uses a fine-grained method to effectively cluster hot data and cold data in order to reduce cleaning overhead. A wear-leveling algorithm is also proposed. Performance evaluations show that erase operations are significantly reduced and flash memory is evenly worn, Though the proposed fine-grained separation scheme is targeted at flash memory-based systems, it can be applied to other storage systems as well. (C) 1999 Elsevier Science Inc. All rights reserved.Item type:Item, Clustered affinity scheduling on large-scale NUMA multiprocessors(1997-10-01) ;Wang, YM ;Wang, HH ;Chang, RC ;資訊工程學系Department of Computer ScienceModern shared-memory multiprocessors have high and non-uniform memory access (NUMA) costs. The communication cost gradually dominates the source of parallel applications' execution. Algorithms based on affinity, like affinity scheduling algorithm (AFS), perform better than dynamic algorithms, such as guided self-scheduling (GSS) and trapezoid self-scheduling (TSS). However, as the number of processors increases, AFS suffers heavy overheads for migrating workload. The overheads include remote reads to the queues for the indices information, synchronous writes to the queues for migrating iterations, and the time in loading data into cache. In this paper, we propose a new loop scheduling algorithm, clustered affinity scheduling (CAFS), to improve affinity scheduling algorithm. We distribute the processors into several clusters, and cluster-based migrations are carried on when imbalance occurs. We confirm our idea by running many applications under a realistic hierarchy memory simulator. Our results show that CAFS reduces at least 1/3 of both remote reads and synchronous writes to the queues under most applications. CAFS also improves the cache hit ratios, and balances the workload. Therefore, we conclude that under large NUMA multiprocessor, CAFS is a better choice among loop scheduling algorithms. (C) 1997 Elsevier Science Inc.Item type:Item, Collision avoidance in cloth animation(1996) ;Liu, JD ;Ko, MT ;Chang, RC ;資訊工程學系Department of Computer ScienceFor cloth modeling and animation, we use a physically based model to simulate the dynamic formation of folds, pleats, and wrinkles and the final static appearance of cloth draped over a rigid object. To simulate the behavior of the cloth and its final static appearance on the model, we propose a new collision and self-collision avoidance method to prevent penetration between the cloth and rigid objects and between parts of the cloth. At each time step, we enforce constraints over those grid points about to penetrate other objects. Our method is easier and more robust than conventional methods at representing interaction between the cloth and various objects.Item type:Item, Continuous checkpointing: Joining the checkpointing with virtual memory paging(1997-09-01) ;Hsu, ST ;Chang, RC ;資訊工程學系Department of Computer ScienceCheckpointing is a basic mechanism for backward error-recovery in fault-tolerant systems. A checkpointed process stops execution and saves its states to files periodically. To reduce the file sizes, only data modified between two consecutive checkpoint times is saved. However, existing approaches do not consider operating system paging activities; which, if ignored may double the number of disk accesses required to checkpoint non-resident dirty pages. In this paper, we propose continuous checkpointing, which combines the checkpoint facility with virtual memory paging operations. Thus, checkpointing is continuous during the Lifetime of a process without extra overhead. Checkpoint size is no longer proportional to application size, but rather is bounded by resident dirty pages. Experimental results show that disk accesses can be reduced by about 80% when checkpointing large applications. (C) 1997 by John Wiley & Sons, Ltd.Item type:Item, Developing dynamic-reconfigurable communication protocol stacks using Java(2005-05-01) ;Lee, YF ;Chang, RC ;資訊工程學系Department of Computer ScienceThis paper proposes the development of a dynamic-reconfigurable protocol stack, which allows the programmer to create, to remove, and to replace protocol modules during their operation. Moreover, this protocol stack also aims to preserve the module state, such as the data structures that manage the existing connections. To achieve these goals, a Java-based component framework is developed so that the programmers are able to implement their components under the proposed framework. This framework can dynamically reconfigure the components at a safe period and can help the components transfer their states, and the dynamic reconfiguration is transparent to the user application running on top of the stack. To demonstrate the component framework, a TCP component is implemented. While maintaining active connections for the user application, the TCP component is able to be dynamically replaced by another version. Copyright © 2005 John Wiley & Sons, Ltd.Item type:Item, EJVM: an economic Java run-time environment for embedded devices(2001-02-01) ;Chang, DW ;Chang, RC ;資訊工程學系Department of Computer ScienceAs network-enabled embedded devices and Java grow in their popularity, embedded system researchers start seeking ways to make these devices Java-enabled. However, it is a challenge to apply Java technology to these devices due to their shortage of resources. In this paper, we propose EJVM (Economic Java Virtual Machine), an economic way to run Java programs on network-enabled and resource-limited embedded devices. Espousing the architecture proposed by distributed JVM, we store all Java codes on the server to reduce the storage needs of the client devices. In addition, we use two novel techniques to reduce the client-side memory footprints: server-side class representation conversion and on-demand bytecode loading. Finally, we maintain client-side caches and provide performance evaluation on different caching policies. We implement EJVM by modifying a freely available JVM implementation, Kaffe. From the experiment results, we show that EJVM can reduce Java heap requirements by about 20-50 % and achieve 90 % of the original performance. Copyright (C) 2001 John Wiley & Sons, Ltd.