ISTANBUL TECHNICAL UNIVERSITY ELECTRICS-ELECTRONICS FACULTY REMOTE CONTROL OF PC FROM CELL PHONE



Benzer belgeler
Java 2 Micro Edition (J2ME)

Java Programlama Giriş

İnternet Programcılığı

Yüz Tanımaya Dayalı Uygulamalar. (Özet)

DESINING AND IMPLEMENTING 3D, MULTIPLAYER AND REAL TIME COMPUTER GAME (SUMMARY)

Coslat Monitor (Raporcu)

MIRACLE DATA WORKS KURULUM DOKÜMANI

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

ÖĞRENCİ LABORATUARLARI İÇİN OPTİMUM ÇÖZÜMLER

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ DUYARGA AĞLARINDA HABERLEŞME ALGORİTMASI TASARIMI VE TINYOS ÜZERİNDE GERÇEKLEMESİ

FortiGate Endpoint Control. v4.00-build /08

Sistem Nasıl Çalışıyor: Araç İzleme ve Filo Yönetim Sistemi

Wolvox Kapı Ekranı. AKINSOFT Wolvox Kapı Ekranı Yardım Dosyası. Doküman Versiyon :

KONTAKSĐ. Bitirme Ödevi. Metin Kaplan Ferhat Karakoç Bölüm : Bilgisayar Mühendisliği Anabilim Dalı: Bilgisayar Bilimleri

Fiery Command WorkStation 5.8 ile Fiery Extended Applications 4.4

FortiGate & FortiAP WiFi Controller

CİSCO ANY CONNECT UYGULAMASI İLE İÇ KAYNAKLARA ERİŞİMİ KLAVUZU

PocketRest Kullanımı

Home ile ilk defa her yetkiye sahip Computer Administrator ve kısıtlı yetkilere sahip Limited Users (sınırlı kullanıcılar) ile tanışıyoruz.

VPN KURULUM ve KULLANIM REHBERİ

Dell EMC VDI Cloud Client Computing Uçtan Uca Çözümler. İsel Horada Dell EMC Forum İstanbul

CEP TELEFONU ĐLE SĐSTEMĐN UZAKTAN KONTROLÜ REMOTE CONTROL SYSTEM WĐTH MOBĐLE PHONE

Dicle Üniversitesi Bilgi İşlem Online Talep Takip Sistemi

İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır.

Useroam Cloud Kurulum Rehberi

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ ÖZET FONKSİYON TABANLI GÜVENLİ BİR RFID PROTOKOLÜNÜN FPGA ÜZERİNDE GERÇEKLENMESİ

Asp.Net Veritabanı İşlemleri

OPNET IT Guru- Güvenlik Duvarı ve Sanal Özel Ağ (Firewalls and Virtual Private Network, VPN)

FIRAT ÜNİVERSİTESİ SMS - WAP OTOMASYONU UNIVERSITY OF FIRAT SMS - WAP OUTOMASION

İSTANBUL TEKNİK ÜNİVERSİTESİ ELEKTRİK-ELEKTRONİK FAKÜLTESİ GENOPE

1.1.1 Network Konfigürasyonu

Sistem Yöneticiliği Seti

ARTESIS ENTERPRISE SERVER OPC TÜNELLEME İSTEMCİSİ

Bilgisayarım My Computer

Kılavuz içerisinde sisteme ait tüm özellikler anlatılmakta olup, yapacağınız konfigürasyonlar satın aldığınız lisans ile sınırlıdır.

Clonera Bütünleşik İş Sürekliliği Gereksinimler ve Kurulum Dökümanı

Nevşehir Hacı Bektaş Veli Üniversitesi Bilgi Portalı Android Uygulaması

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

Farklı Mobil Platformlar Üzerinde Servis Tabanlı Mimari(SOA) Yaklaşımı: Elektronik Uçuş Çantası Vaka Çalışması

THE DESIGN AND USE OF CONTINUOUS GNSS REFERENCE NETWORKS. by Özgür Avcı B.S., Istanbul Technical University, 2003

HUAWEI Cihazlara Erişim Yöntemleri

CELAL BAYAR ÜNİVERSİTESİ KÜTÜPHANE VERİTABANLARINA ÜNİVERSİTE DIŞINDAN ERİŞİM

Bilgisayarım My Computer. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

İletişim.

1-20 Kullanıcı. 2*Xeon 2.4 GHZ 4 GB 2*146 GB 15k (Raid 1) c: 30 GB, d: Kullanıcı Kullanıcı Kullanıcı.

IDE4DB Veritabanı Geliştirme Platformu Bitirme Projesi Sunumu

Suite 8 on Oracle 11gR2 Donanım İsterleri Kullanıcı (interface'ler dahil) Kullanıcı (interface'ler dahil)

Sistem Gereksinimleri Opera v5

Introduction to NComputing Changing the Economics of Computing with Desktop Virtualization

BEUN VPN Hizmeti. VPN Nedir?

Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz.

Windows Live ID ve parolanızı giriniz.

RTP TEKNOLOJİSİ İLE ON-LİNE GÖRÜNTÜ İLETİMİ VE İLGİLİ GÖRÜNTÜNÜN ON-LİNE KONTROLÜ

BitTorrent İstemci Kullanımı

Mobil Cihazlarda Görüntü İşleme İçin Bir Çözüm Önerisi

Yedek Almak ve Yedekten Geri Dönmek

İnşaat Mühendisliği Bölüm Başkanlığı na

Windows 7 - IIS 7.5 üzerine PHP ve MySQL kurulumu

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

Cisco 881 Router ve AirLink ES4X0, WAN Failover Tanımı

İstemci Yönetimi ve Genel Yazdırma Çözümleri

SOFTWARE ENGINEERING Ders İzlence Formu. Kodu:CSE400 Dersin Adı: SOFTWARE ENGINEERING Toplam Saat

ETA:MOBİL KURULUM TALİMATI

Tarım makineleri kullanımında mesleki riskleri önlemek için görsel iletişim araçlarıyla eğitim

"SQL Server Management Studio" yazılımını yüklemek için alttaki resmi sitesinden 180 günlük deneme sürümünü indirebilirsiniz.

Cyberoam Single Sing On İle

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci

EKLER EK 12UY0106-5/A4-1:

WiFi RS232 Converter Sayfa 1 / 12. WiFi RS232 Converter. Teknik Döküman

NA VNC SERVER KULLANIMI. Genel Bilgi NA VNC Server Ayarları

SATIŞ DESTEK DOKÜMANI

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2

Tüm personel kendi KEP hesapları üzerinden mevcut ve önceki maaş bordrolarını görüntüleyebilecektir.

Web Servis-Web Sitesi Bağlantısı

2

TAPU VERİ SAYISALLAŞTIRMA YAZILIMI KURULUM DÖKÜMANI. Tapu Kadastro Genel Müdürlüğü-Bilgi Teknolojileri Daire Başkanlığı Page 1

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

Güvenli Switching. Başka Bir Switch: ARUBA Tunneled Node. Semih Kavala ARUBA Sistem Mühendisi. #ArubaAirheads

Useroam Kurulum Rehberi

Web Server Sunucu Loglarının K-Komşu Algoritması ile İ ncelenmesi

Antalya Tıp Bilişim Kongresi Kasım Can AKSOY IT Network (CTO / STL)

EMC ÇÖZÜMLERİ İLE KULLANICI DENEYİMİNDE DÖNÜŞÜM

Checkpoint SSL-VPN Kurulum Prosedürü. Checkpoint Endpoint VPN Client

TÜRKİYE CUMHURİYETİ ORMAN GENEL MÜDÜRLÜĞÜ DASDIFFUSION DEPARTMENTAL EDITION 1. FAZ İSTEMCİ PC KURULUM KILAVUZU

Film Arşiv Sistemi. Yazılım Tasarım Belgesi

Öğrencilerin Canlı derslere katılması, * Sisteme giriş

OSPF PROTOKOLÜNÜ KULLANAN ROUTER LARIN MALİYET BİLGİSİNİN BULANIK MANTIKLA BELİRLENMESİ

C# ile NJ Simulatöre Bağlanmak

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI

PCC 6505 PROFILE CUTTING LINE

Yazılım Mühendisliğine Giriş 2018 GÜZ

CENG 302 Yazılım Mühendisliği Yazılım Mimarisi - Devam. Alper UĞUR

TITUS VERİ SINIFLANDIRMA ÇÖZÜMÜ

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

Client Management ve Mobile Printing Çözümleri. Belge Parça Numarası:

Transkript:

ISTANBUL TECHNICAL UNIVERSITY ELECTRICS-ELECTRONICS FACULTY REMOTE CONTROL OF PC FROM CELL PHONE Graduation Project Fethi KAVAL 040010419 Deniz IŞIK 040010421 Department:Computer Engineering Division: Computer Sciences Advisor : Assist.Prof. Feza BUZLUCA May 2005 1

Declaration Of Innovation I declare that, in this project: 1. All citations from other sources are made by giving references to them, 2. Other parts except citations, especially the main part of the project which is constucted by the therotetical studies and the software are designed by me İstanbul, 29.05.2005 Fethi KAVAL Deniz IŞIK 2

This project is dedicated to Nilüfer İsmailova. We would like to thank Assist. Prof. Feza Buzluca for his great advises and orientation, our colleagues Melih Işık, Yusuf Kutlu, Şahin Şakar, Arda Seyyarsabit, Cenk Karagöz for the help on the stage of development of the idea, and our classmates Doğan Fennibay, Oğuz Kamer Doğan for the help they provided on the testing stage of the project. 3

REMOTE CONTROL OF PC FROM CELL PHONE (SUMMARY) In this project, we have developed a system which enables users to manage a remote PC from a cell phone. This document, first gives information about concepts for developing applications over cell phones and then explains the procedures for communicating a cell phone with a remote machine and the protocols for sending and receiving data. The project is consist of two parts which are the server side(pc) and the client side(cell phone). Server side application is running as a listener. It waits for connection from a client and performs actions according to the messages which it took from client application. These messages constructs a protocol for communication and both sides communicate according to this protocol. Details of the protocol is explained in detail in the design section(section 5). Client side application takes reponses from the server and applies them to cell phone. This document also describes the critical topics for developing applications over cell phones such as limited capabilities of the cell phones and the difficulties we encountered due to the limited capabilities. Also we have described the ways of finding solutions for solving the problems due to the capabilities of cell phones. At the end of the document, topics about the improvements of the project are listed and suggestions about these improvements are given. 4

CEP TELEFONUNDAN PC NIN UZAKTAN KONTROLÜ (ÖZET) Bu projede kullanıcıların uzaktaki bir bilgisayarı cep telefonundan kontrol edebilmelerini sağlayan bir sistem geliştirildi. Bu dökümanda ilk önce cep telefonu üzerinde uygulama geliştirmeyle ilgili bilinmesi gereken kavramlar üzerinde duruldu ve cep telefonu ile uzaktaki makina arasında bağlantı kurulması ve veri transterinin gerçekleştirilmesi için kullanılmış olan protokolün yapısı açıklandı. Bu proje sunucu tarafı(pc) ve istemci tarafı(cep telefonu) olmak üzere iki kısımdan oluşmaktadır. Sunucu tarafı kendisine yapılan isteklere cevap veren bir uygulama olarak çalışmaktadır. Kendisine bağlanmaya çalışan istemcilere yanıt verir ve onların istekleri doğrultusunda PC üzerindeki işlemleri gerçekleştirir. Haberleşmek için kullanılan bu mesajlar bir protokol oluşmasını sağlar ve her iki taraf da bu protokolün yapısına göre hareket eder. Bu protokol sayesinde de haberleşme sağlanmış olur ve PC üzerinde çalışmakata olan uygulama sayesinde de uzaktan yönetim gerçekleştirilmiş olur. Burada uzaktan kullanım PC üzerindeki uygulama ile haberleşmek ve yapılmak istenen işlemleri bu uygulamaya yaptırmak olarak gerçeklenmiştir. Bu dökümanda ayrıca cep telefonları üzerinde uygulama geliştirirken dikkat edilmesi gereken noktalara dikkat çekilmektedir. Cep telefonlarının herhangi bir PC ye nazaran özelliklerinin kısıtlı olması gibi nedenlerle cep telefonları üzerinde çok esnek uygulamaların geliştirilmesi mümkün olmamaktadır. Cep telefonlarının kısıtlı özelliklerinin ne gibi zorluklara neden olduğundan bahsedilmiş ve bu zorlukların yazılan kodu nasıl etkilediği anlatılmıştır. Bunun yanında da olası çözümler listelenmiştir. Proje tamaemen nesneye dayalı programla modeline göre tasarlandı ver gerçeklendi. Programlama dili olarak nesneye dayalı programlama modelini tam olartak destekleyen bir dil olan Java kullanıldı. Gerek sunucu gerekse istemci tarafı gerçekleşitireceği işlemlere göre nesnelere bölündü ve nesnelere görevler atandı. Projenin sunucu ve istemci tarafı gibi iki taraflı bir yapıda olması projenin projeyi yapan öğrenciler arasında paylaştırılmasını kolaylaştırdı. Öncelikle arada kullanılacak olan protokol kararlaştırıldıktan sonra proje iki kısma ayrıldı ve paralel olarak yürütülmesi sağlandı. Cep telefonu üzerinde uygulama geliştirirken Java dilinin J2ME API si kullanılmıştır. Bu API ye göre gerçeklenen uygulamalar tamamen platformdan bağımsız uygulamalar olmakta ve standart özellikleri bulunan her telefon üzerinde çalışabilmektedir. Bu amaçla da uygulama geliştirirken Sun Microsystem ın geliştirdiği cep telefonu simülatörü(j2me Wireless Toolkit 2.2) üzerinde testler yapılmıştır. Bu sayede yazılan kod her değiştirildiğinde cep telefonu üzerine yüklenerek 5

test edilmesi gibi bir işlemden kurtulunmuş ve olası hataların cep telefonu mekanizmasını olumsuz yönde etkilemesi önlenmiştir. Bu projenin seçilmesinin temel nedenlerinden biri proje sayesinde bilgisayar haberleşmesi ve bilgisayar ağları derslerinde görülen kavramların sıkça kullanılacak olması ve bunun yanında da işletim sistemleri dersinde görülen kavramlara başvurulacak olmasıdır. Sunucu-istemci şeklinde iki uygulama birbiri ile haberleştirilecek ve haberleşmeye yönelik kavramlar geliştirilecektir. Bunun yanında karşıdaki işletim sisteminin yeteneklerini kullanarak onun uzaktan yönetilmesi işletim sistemleri bilgimizi pekiştirecektir. İşletim sistemleri derslerinde görülen ortak kaynakların kullanımı konuları özellikle ipliklerin uygulama içerisinde kullanımı konusunda bilgimiz arttıracaktır. Uygulama haberleşmeye dayalı bir uygulama olduğundan karşıdaki sistemle haberleşmek için arada bir engel olmması gerekmektedir. Karşıdaki sistemin önünde ve ya üzerinde bir firewall bulunması durumunda bu firewall üzerindeki konfigürasyonda değişiklik yapılması gerekmektedir. Sunucu uygulama varsayılan olarak 9000 portunu dinlemektedir. Dolayısıyla sunuculuk yapan bilgisayarın 9000 portuna dışarıdan erişimin açık olması gerekmektedir. Bu projenin oluşturulmasında temel amaç, uzaktaki bir makinaya acil müdahale etme gereğinin oluştuğu durumlarda kullanıcıların cep telefonlarında yüklemiş oldukları yazılımı kullanarak ulaşmak istedikleri bilgisayara bağlanıp yönetimsel işleri gerçekleştirmeleridir. Bunun dışındaki durumlarda zaten kullanıcılar halka açık olarak kullanlabilen herhangi bir bilgisayardan uzaktaki bilgisayara bağlanabilmektedir. Ancak bunun için de kullanacakları bilgisayarlarda uzaktan yönetim programının yüklenmiş olması gerekmekte ve bu programın yüklenebilmesi için kullanıcının yetkisi bulunamamaktadır. Bu projenin yapılmasına karar verirken kullanıcıların yaşadıkları bu zorluklar görülmiş ve projenin yapılmasına karar verilmiştir. Gerçekleştirilmiş olduğumuz proje acil durumlarda kullanıcıların kendi makinalarına ulaşabilmesini hedeflediğinden uygulama geliştirirken mümkün olduğunca yönetimsel işlerle uğraşması gereken kişilere yönelik olarak tasarım yapılmıştır. Bu tip kullanıcıların gereksinimi olabileceği işlevler gerçeklenmiştir. Gereksiz işlevlerin cep telefonlarının kısıtları nedeniyle mümkün olduğunca proje kapsamına alınmaması kararlaştırılmıştır. Örneğin bağlanılan bilgisayardan cep telefonuna seslerin aktarılması bu proje kapsamında göz ardı edilebilecek bir durumdur, çünkü yönetimsel işlevlerin gerçekleştirilmesi durumlarında karşı bilgisayardaki seslerin duyulmasına ihtiyaç duyulmamaktadır. Bunun yanında bağlanılan bilgisayarda görüntülenen bir filmin gösterilmesi gibi bir ihtiyaç da bulunmamaktadır. Zaten bu işlem için saniyede 20-25 adet görüntünün gönderilmesi gibi bir durum gerçekleşecek ve bunun cep telefonuna aktarılması güç olacaktır. İnsanların bu projeyi kullanmadaki gereksinimleri göz önüne alınarak kullanışlı ve yüksek performanslı bir uygulama geliştirilmesi hedeflenmiş ve uygulamaya gereksinimler doğrultusundaki özellikler eklenmiştir. Uygulamanın kullanışlığını artırmak amacıyla kullanıcının hızlı bir şekilde ulaşabileceği yerlere kısayollar konmuştur. Bunda amaç kullanıcının bir an önce acil olan işlerini gerçekleştirebilmesidir. Yönetimsel işler için gerekli olabilecek kontrol paneline ve kullanıcının 6

disk üzerindeki belgelere hızlı bir şekilde erişebilmesi için kullanıcının bütün disklerini görebileceği yerlere kısayol verilmiştir. Bunu yanında kullanıcının acil olarak internet üzerindeki bazı sitelerden bilgi almak gibi bir ihtiyacı olabileceği düşünülerek internet explorera kısayol verilmiştir. Bu özellikler kullanıcının işlerini hızlandırmak amacıyla yapılmıştır ancak bu özelliklerin eklenmesi bağlanılacak olan bilgisayarlar üzerinde windows işletim sistemi olacağı düşüncesiyle yapılmıştır. Bu nedenle başka bir platform üzerinde bu kısayolların kullanılması mümkün olmayacaktır. Proje java ile gerçekleştirilmiş olduğu için Java sanal makinesinin yüklü olduğu her platformda sunucu uygulama çalıştırılabilmektedir. İstemci uygulama ile de bu uygulamaya bağlanılarak platformdan bağımsız bir şekilde uzaktan yönetim gerçekleştirilebilmektedir. Projeye esneklik kazandırılması için projenin ileriki versiyonlarında karşıdaki platformun bilgileri alınarak platforma özel kısayolların yaratılması sağlanabilecektir. Ancak bu projede hedefimiz windows bilgisayarları kontrol etmek olduğu için bu özellik eklenmemiştir. Kısayol özellikleri kullanmamak kaydıyla kullanıcılar üzerilerinde herhangi bir platform olan bilgisayarları kontrol edebilmektedirler. Projenin kullanılabilmesi için ulaşılmak istenen bilgisayarda bizim geliştirmiş olduğumuz uygulamanın koşuyor olması gerektiğinden bahsettik. Bu uygulamaya erişmek için ilgili makınanın IP adresinin yanında bir de şifre girilmesi gerekmektedir. Sunucu tarafında önceden belirlenmiş olan bir şifrenin gönderilmesi ile ilgili makına kontrol edilebilmekte, şifrenin yanlış olması durumunda bağlantı koparılmaktadır. Bu sayede sadece şifreyi bilen kullanıcıların login olabilmesi sağlanmaktadır. Proje kullanıcıların temel gereksinimlerini karşılamak amacıyla taarlanmıştır ancak üzerinde yapıalcak ufak değişikliklerle daha fazla popüler olabilecek bir yazılım haline dönüştürülebilir. Örneğin aradaki haberleşmeyi gerçekleştirmek için kullanılan protokol şifrelenmemiş verilerin aktarılmasını öngörmektedir. Proje geliştirilerek şifreli haberleşme sağlanabilir ve daha güvenli bir iletişim sağlanabilir. Projede sunucu tarafında oluşturulan resim network üzerinden cep telefonuna gönderilmektedir. Bu resim öncelikle JPEG formatına çevrilmekte ve ardından da boyu ve eni yarısına indirilmektedir. Ardından da resim kalitesi düşürülerek gönderilecek olan resmin boyutu düşürülmektedir. Bu şekilde efektif bir şekilde resim gönderilmesi sağlanmaktadır. Resmin kalitesinin istemci uygulama tarafından ilk bağlantı kurulurken belirlenmesi kullanıcı açısından iyi bir özellik olabilir. Çünkü kulanıcının her oturumda yapmak istediği işlemler farklı olabilir. Örneğin bir uygulamada word dosyası açıp içerisine yazı yazmak isteyebilir, bu durumda yazıların okunabilmesi için daha yüksek kaliteli bir resmin gönderrilmesi gerekebilir. Ancak yazı yazmak yerine belli servisleri başlatmak ve ya durdurmak gibi işlemler yapacaksa daha düşük kaliteli bir resim gönderilmesi yeterli olacaktır. Böylece de gerekip gerekmediğine göre resim kalitesi ayarlanarak ağdan gönderilen veri miktarı azaltılabilir. Ayrıca görüntü bizim geliştirdiğimiz uygulamada renkli olarak gönderilmektedir. Kullanıcının kullandığı cep telefonu renkli resimlerin gösterilmesini desteklemiyorsa ve ya kullanıcı renksiz resimlerle çalışmayı tercih ederse görüntü renksiz olarak oluşturulabilir ve böylece gönderilen veri miktarı yarı yarıya azaltılabilir. 7

Bunun yanında sunucu uygulama her bir saniyede ekran üzerinde herhangi bir değişiklik olup olmadığını test etmekte ve ona göre resmi göndermektedir. Kullanıcı yapacağı işleme göre kontrol etme aralığını dilediği gibi değiştirirse bu hem sunucu uygulamanın kullandığı kaynakları azaltacak hem de kullanıcının isteğine göre güncellenme miktarı değiştirilerek daha efektif bir güncellenme sağlanabilecektir. 8

Table Of Contents REMOTE CONTROL OF PC FROM CELL PHONE...1 REMOTE CONTROL OF PC FROM CELL PHONE...4 (SUMMARY)...4 CEP TELEFONUNDAN PC NIN UZAKTAN KONTROLÜ...5 (ÖZET)...5 1 INTRODUCTION...11 2 PROJECT DESCRIPTION AND PLAN...13 3. THEORETICAL INFORMATION...15 3.1 J2ME...15 3.2 Connected Limited Device Configuration (CLDC)...16 3.2.1 Introduction...16 3.2.2 The CLDC Configuration...17 3.2.3 Profiles...17 3.2.4 Optional Packages...17 3.2.5 Objectives...18 3.2.6 Target Devices...18 3.3 Mobile Information Device Profile (MIDP)...19 3.3.1 Introduction...19 3.3.2 Specifications...19 3.3.3 Development Tools...19 3.3.4 Benefits...19 3.3.4.1 Rich User Interface Capabilities:...20 3.3.4.2 Extensive Connectivity:...20 3.3.4.3 Multimedia and Game Functionality:...20 3.3.4.4 Over-the-Air-Provisioning:...20 3.3.4.5 End-to-End Security:...20 3.4 Micro Edition (J2ME) Wireless Toolkit...21 3.4.1 Introduction...21 3.4.2 Features and Benefits...21 3.5 Constraints of Small Devices...22 3.5.1 Introduction...22 3.5.2 Limited Processor Speed...22 3.5.3 Limited memory and storage...23 3.5.4 Limited networking and bandwidth...23 3.6 Threads, mutual exclusion and synchronization...23 4. ANALYSIS AND MODELING...25 4.1 Server Side...25 4.1.1 Analysis...25 4.2 Client Side...27 4.2.1 Analysis...27 4.2.2 Modeling...28 9

5 Design and Test...30 5.1 MIDlet design...30 5.1.1 The MIDlet Life-Cycle...30 5.2 Server-Client...31 5.2.1 Server Side...31 5.2.2 Client side...32 5.3 Test...32 6. Experimental Results...33 6.1 Introduction...33 6.2 VNC...33 6.3 Remote Desktop...34 6.4 Our Product...34 7. Conclusion and Suggestions...36 8. References...37 10