Writing Mobile Code Essential Software Engineering for Building Mobile Applications [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Writing Mobile Code Essential Software Engineering for Building Mobile Applications [Electronic resources] - نسخه متنی

Ivo Salmre

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید











Computer Architecture Differences


In terms of architecture, desktop and laptop computers are like large houses in the countryside. Mobile devices are like apartments and condominiums in the city. Both serve specific needs and pose specific restrictions on how they can most effectively be used.

Houses tend to be relatively large and have lots of storage space. Some storage space is close at hand, whereas some other space is harder to get to. In a house, the stuff you do not use very often is stored in the attic or the basement, and now and then you have to go look for it when you need it.

Apartments and condominiums, on the other hand, tend to have very little storage space. Things you need close at hand are kept there. Less frequently used things are discarded. Rather than own things you use infrequently, it is often easier just to rent them as needed.

The same holds true for mobile devices. Both the available memory as well as the long-term storage is geared toward keeping around what you use often. Less frequently used data should be pushed onto servers to be accessed when needed.

On a desktop computer, RAM and long-term storage space are separated. On devices, your RAM is often used both as working application RAM as well as mid- and long-term storage. Flash storage devices are also increasingly being used for longer-term storage, and the bulk of this storage space is often in the form of removable memory cards.


Some Very Quick Math to Prove a Point About Memory Sizes


A rich mobile device today may have 64MB of RAM. This RAM is often partitioned between program RAM and virtual file system. Let's assume that 32MB of this RAM goes to the file system to hold all the long-term data you work with (things such as photos, documents, music, and other information). This leaves 32MB for the operating system and applications to share. Assume that five applications are running simultaneously (not uncommon), all are using roughly equal amounts of RAM, and that the operating system further uses resources equal to an application. This leaves a ration of 5 to 6MB of RAM for each application to use. This size is considerable but by no means infinite. A few big digital photographs brought into memory could consume most of this RAM. Many mobile devices have considerably less RAM to work with and may be asked to run more applications simultaneously. The RAM available on the device sets the absolute limit and is non-negotiable. If you use up the available physical memory, things will not be moved to a page file on hard disk as it would on the desktop. Most likely you will run out of memory and your application will crash.

A few megabytes of working space is pretty good when used effectively in the same way that a one-bedroom apartment in Manhattan can offer a nice amount of space so long as you do not try to fill it with too much stuff. Keep piling more stuff in and you will reach a critical point where nothing else will fit and you can only navigate around the apartment with extreme difficulty. With enough stuff in it, your apartment will become unusable. So it is with mobile devices.


/ 159