Java İpliklerinin Bağlam Bilgisiyle Birlikte Göç Ettirilmesi ; Strong Migration Of Java Threads
Saved in:
| Title: | Java İpliklerinin Bağlam Bilgisiyle Birlikte Göç Ettirilmesi ; Strong Migration Of Java Threads |
|---|---|
| Authors: | Genç, Ayşe |
| Contributors: | Erdoğan, Nadia, Bilgisayar Mühendisliği, Computer Engineering |
| Publisher Information: | Fen Bilimleri Enstitüsü Institute of Science and Technology |
| Publication Year: | 2010 |
| Collection: | Istanbul Teknik Üniversitesi: İTÜ Akademik Açık Arşiv / ITU Academic Open Archive |
| Subject Terms: | Java İpliklerinin Göçü, Java Bağlam Bilgisi, Java Thread Migration, Java Execution State |
| Description: | Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2010 ; Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 2010 ; Bu çalışmada Java ipliklerinin bağlam bilgisi korunarak farklı Java Sanal Makineleri (JVM) arasında göç ettirilmesi ve iplikler arası bağlam bilgisi değiştokuşu uygulamaya geçirilmiştir. Java iplik göçünü desteklemez ve iplik göçünü sağlamak için karşımıza çıkan en büyük engel JVM in ipliklerin bağlam bilgisine erişim hakkı vermemesidir. Bizim izlediğimiz yöntemde uygulamanın kaynak kodu bir ön işlemden geçirilerek bazı özel kod parçaları eklenir. Bu kod parçaları yardımıyla ipliklerinin bağlam bilgisinin saklanması ve yeniden yüklenmesi mümkün kılınmıştır. Bu yöntem JVM üzerinde herhangi bir değişiklik içermediği için Java nın platform bağımsızlığı ilkesiyle de uyumludur. Gerçeklenen uygulamalarda, uygulamanın bir diğer JVM e göç ederken eski JVM de kaldığı noktadan çalışmaya devam ettiği gözlemlenmiştir. Java ipliklerinin bağlam bilgisiyle birlikte göç ettirilmesini maliyeti kod boyutlarındaki artış olarak ölçülmüştür. ; In this study, strong migration of Java threads between different JVMs and context-switching of Java theads is implemented. Java does not support thread migration and the main issue when building Java thread migration is to be able to access the thread s execution state, which is internal to the JVM and is not directly accessible to Java programmers. In our approach, the application code is preprocessed before the execution in order to attach a backup object to the Java program executed by the thread, and to add new statements to program. The new statements manage the execution state capture and restoration operation and store the state in backup object. This approach does not interfere with platform independency of Java, since we did not modify the Java Virtual Machine. With this approach, the migrated the application is able to restart in the exactly same state and at the same code position as it is before the ... |
| Document Type: | master thesis |
| File Description: | application/pdf |
| Language: | unknown |
| Relation: | https://hdl.handle.net/11527/355 |
| Availability: | https://hdl.handle.net/11527/355 |
| Rights: | İTÜ tezleri telif hakkı ile korunmaktadır. Bunlar, bu kaynak üzerinden herhangi bir amaçla görüntülenebilir, ancak yazılı izin alınmadan herhangi bir biçimde yeniden oluşturulması veya dağıtılması yasaklanmıştır. ; İTÜ theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. |
| Accession Number: | edsbas.F4A0DB0C |
| Database: | BASE |
| Abstract: | Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2010 ; Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 2010 ; Bu çalışmada Java ipliklerinin bağlam bilgisi korunarak farklı Java Sanal Makineleri (JVM) arasında göç ettirilmesi ve iplikler arası bağlam bilgisi değiştokuşu uygulamaya geçirilmiştir. Java iplik göçünü desteklemez ve iplik göçünü sağlamak için karşımıza çıkan en büyük engel JVM in ipliklerin bağlam bilgisine erişim hakkı vermemesidir. Bizim izlediğimiz yöntemde uygulamanın kaynak kodu bir ön işlemden geçirilerek bazı özel kod parçaları eklenir. Bu kod parçaları yardımıyla ipliklerinin bağlam bilgisinin saklanması ve yeniden yüklenmesi mümkün kılınmıştır. Bu yöntem JVM üzerinde herhangi bir değişiklik içermediği için Java nın platform bağımsızlığı ilkesiyle de uyumludur. Gerçeklenen uygulamalarda, uygulamanın bir diğer JVM e göç ederken eski JVM de kaldığı noktadan çalışmaya devam ettiği gözlemlenmiştir. Java ipliklerinin bağlam bilgisiyle birlikte göç ettirilmesini maliyeti kod boyutlarındaki artış olarak ölçülmüştür. ; In this study, strong migration of Java threads between different JVMs and context-switching of Java theads is implemented. Java does not support thread migration and the main issue when building Java thread migration is to be able to access the thread s execution state, which is internal to the JVM and is not directly accessible to Java programmers. In our approach, the application code is preprocessed before the execution in order to attach a backup object to the Java program executed by the thread, and to add new statements to program. The new statements manage the execution state capture and restoration operation and store the state in backup object. This approach does not interfere with platform independency of Java, since we did not modify the Java Virtual Machine. With this approach, the migrated the application is able to restart in the exactly same state and at the same code position as it is before the ... |
|---|
Nájsť tento článok vo Web of Science