Beauty Salon α-BET (alphabet)

space001
Blender3d Collada dae modeling Use Papervision3d on Progression3 and 4 http://a-bet.secret.jp/#/access
more whaison works.
whaison space
space002
http://whaison.jugem.jp/ https://jp.pinterest.com/whaison/ https://www.instagram.com/whaison/ https://whaison.amebaownd.com/
https://suzuri.jp/whaison
http://whaison.blogspot.com/
http://whaison.tumblr.com/ http://qiita.com/users/whaison http://www.behance.net/whaison https://github.com/whaison/ https://bitbucket.org/whaison http://serato.com/user/whaison http://whaison.hatenablog.jp/

typo memo
http://d.hatena.ne.jp/whaison/


dayNote
http://www.myspace.com/whaison http://ameblo.jp/whaison/ http://blog.crooz.jp/whaison/ http://blog.crooz.jp/whaisoncafe/ http://nenpyo.org/whaison

fulldisk
http://full.shin-gen.jp/
http://whaison.client.jp/
http://www.dclog.jp/whaison/
featured forums.
space004
forum.unity3d.com/

forums.unrealengine.com.

Progression Forum.

FlashDevelop Forum.

Papervision3D Forum.

FlexUserGroup Forum.

SparkProjectForum.





Twitter







Mobile
qrcode
Calendar
SunMonTueWedThuFriSat
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< May 2018 >>
New Entries
Archives
Categories
Recent comment
  • FlashDevelopでフォント埋め込み
    感謝!! (12/24)
  • cocos2d-x-3.0rc0 ,c++ ,cpp でTexturePacker で 吐き出した、plist と png でパラパラアニメーションのコード例
    whaison (04/17)
  • Blender2.67にbvh(web上に2500個以上ころがってる)入れてそのBoneオブジェクトをUnity4.0のmecanimで使う
    whaison (08/19)
  • Apple Dev Center 「Certificates, Identifiers & Profiles」で Adhoc をつくってXCode4.6.1でArchiveしてipaを書き出し
    whaison (04/30)
  • Flash CS6でプロパティーパネルで物理演算のジャンプの高さを設定できるCitrus Engine
    whaison (03/01)
  • 「Flash以外、例えばKinectとか」ON TOKYO (会場:高田馬場4-11-8 Floor 6階 ) 短縮URL http://bit.ly/dI0Bfx
    uka (03/02)
  • App Store Review Guidelines アップル社のアプリ審査基準ガイドライン和訳 Apple が 開発者を悩ませ ユーザーをハッピーにしたいガイドライン。w
    whaison (01/25)
  • Unity3d では ADOBE JAPAN OSAKIで行われたFITC 2010 TOKYOでは、 「iOS用にパブリッシュするためには、フリー版ではなくて、有料版を買ってください。さらに追加のパッケージである、"iOS Package (for Development)"を買ってください」とのことだった。
    whaison (01/25)
  • enjoy Adidas-Futsal-Park
    whaison (01/16)
  • MacBookAir にFlashPlayer入れたらなった。Mac Flash Player 10.1/10.2でUstream などでカメラが認識されないバグそんなときはUstreamProducer!でもなくiPhoneだと直ぐにライブ配信できた
    whaison (01/14)
simple sintax high lighter2.0
space003
SyntaxHighlighter2.0用 の貼り付けコード作成する!
Profile
Links
Recommend
Admin
無料ブログ作成サービス JUGEM
Seach this site
            
2017.03.26 Sunday
https://blog.codecamp.jp/linux-install から必要なUSBの部分だけ抜粋 メモ 途中

 

 

https://blog.codecamp.jp/linux-install から必要なUSBの部分だけ抜粋

 

    OS X El CapitanとUbuntu 16.04 LTSのデュアルブート環境を構築する  http://ottan.xyz/el-capitan-ubuntu-dual-boot-4020/

 

 

注意点としては、Ubuntuのデフォルトのインストール状態ではWi-Fi接続を行うことができません。私が使用しているMacに搭載されているインターフェイスの情報は、上図の通りです。同一の「Broadcom BCM43xx」であれば、後述の手順でWi-Fiに接続できるようになります。

カードの種類: AirMac Extreme  (0x14E4, 0x134)

  ファームウェアのバージョン: Broadcom BCM43xx 1.0 (7.21.171.10.1a16)

 

 

注意点としては、Ubuntuのデフォルトのインストール状態ではWi-Fi接続を行うことができません。私が使用しているMacに搭載されているインターフェイスの情報は、上図の通りです。同一の「Broadcom BCM43xx」であれば、後述の手順でWi-Fiに接続できるようになります。

 

 

Ubuntu 16.04 LTSのISOファイルをダウンロードします。

iSO ready

http://releases.ubuntu.com/16.04/

http://releases.ubuntu.com/16.04/ubuntu-16.04.2-desktop-amd64.iso

 

/Applications/Utilities/Disk Utility.app

 

続いて、16GB以上のフラッシュメモリ(USBメモリ)を用意します。あらかじめ、ディスクユーティリティからフォーマットを行っておきます。フォーマットする際に、

「名前」は任意、

「フォーマット」は「MS-DOS(FAT)」、

「方式」は「GUIDパーティションマップ」

を選択します。

 

続いて、USBメモリを接続したまま、ターミナルを開きます。ターミナルは、「アプリケーション」→「ユーティリティ」フォルダの中にあります。ターミナルを開いたら、以下のコマンドを実行します。

$ diskutil list

T512G1GUIDnoMBP:~ t512g1guid$ diskutil list

/dev/disk0 (internal, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *1.0 TB     disk0

   1:                        EFI EFI                     209.7 MB   disk0s1

   2:                  Apple_HFS Macintosh HD            499.0 GB   disk0s2

   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

   4:       Microsoft Basic Data BOOTCAMP                500.7 GB   disk0s4

 

/dev/disk1 (external, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:                            ENTERTAIN 2016         *5.9 GB     disk1

 

/dev/disk2 (external, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *512.1 GB   disk2

   1:                        EFI EFI                     209.7 MB   disk2s1

   2:                  Apple_HFS T512G1GUID              255.5 GB   disk2s2

   3:                 Apple_Boot Recovery HD             650.0 MB   disk2s3

   4:                  Apple_HFS T512G2GUID              255.1 GB   disk2s4

   5:                 Apple_Boot Recovery HD             650.0 MB   disk2s5

 

/dev/disk3 (external, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *512.1 GB   disk3

   1:                        EFI EFI                     209.7 MB   disk3s1

   2:                  Apple_HFS R512G4GUID              200.0 GB   disk3s2

   3:                  Apple_HFS R512G6GUID              55.7 GB    disk3s3

   4:                  Apple_HFS R512G3GUID              199.5 GB   disk3s4

   5:                 Apple_Boot Recovery HD             650.0 MB   disk3s5

   6:                  Apple_HFS R512G5GUID              55.6 GB    disk3s6

 

/dev/disk4 (external, physical):

   #:                       TYPE NAME                    SIZE       IDENTIFIER

   0:      GUID_partition_scheme                        *15.5 GB    disk4

   1:                        EFI EFI                     209.7 MB   disk4s1

   2:       Microsoft Basic Data UBUNTU010US             15.3 GB    disk4s2

 

T512G1GUIDnoMBP:~ t512g1guid$ 

T512G1GUIDnoMBP:~ t512g1guid$ 

T512G1GUIDnoMBP:~ t512g1guid$ 

USBメモリのディスクの番号を控えておきます。ここでは「disk4」が該当のUSBメモリです。

誤って他のディスクを消去することがないよう注意しましょう。

次に、

ターミナルから以下のコマンドを実行します。

disk4」は該当の番号に置き換えてください。

これで、アンマウントされます。

$ diskutil unmountDisk /dev/disk4

$ diskutil unmountDisk /dev/disk4

Unmount of all volumes on disk4 was successful

T512G1GUIDnoMBP:~ t512g1guid$ 

T512G1GUIDnoMBP:~ t512g1guid$ 

 

 

続いて、ダウンロードしたISOファイルの場所に移動します。例えば、「ダウンロード」フォルダに移動したい場合は、以下のコマンドを実行します。

 

 

以下のコマンドを実行します。

$ cd ~/Downloads

T512G1GUIDnoMBP:Downloads t512g1guid$ 

T512G1GUIDnoMBP:Downloads t512g1guid$ 

T512G1GUIDnoMBP:Downloads t512g1guid$ 

最後に、USBメモリにUbuntuのインストールディスクの書き込みを行います。

最後に、USBメモリにUbuntuのインストールディスクの書き込みを行います。

ターミナルから以下のコマンドを実行します。

「ubuntu-16.04-desktop-amd64.iso」は実際にダウンロードしたファイル名、「/dev/rdisk1」は事前に控えたディスクの番号に読み替えてください。「/dev/disk1」でも良いのですが、「/dev/rdisk1」とすると書き込みが速くなります。

$ sudo dd if=ubuntu-16.04.2-desktop-amd64.iso of=/dev/rdisk4 bs=1m

 

T512G1GUIDnoMBP:Downloads t512g1guid$ 

T512G1GUIDnoMBP:Downloads t512g1guid$ 

T512G1GUIDnoMBP:Downloads t512g1guid$ 

T512G1GUIDnoMBP:Downloads t512g1guid$ sudo dd if=ubuntu-16.04.2-desktop-amd64.iso of=/dev/rdisk4 bs=1m

Password:

--------------------------------5分ぐらいここで止まります。

1482+1 records in

1482+1 records out

1554186240 bytes transferred in 133.169906 secs (11670702 bytes/sec)

T512G1GUIDnoMBP:Downloads t512g1guid$ 

T512G1GUIDnoMBP:Downloads t512g1guid$ 

 

 

USBメモリへの書き込み完了後に上記のような警告ダイアログが出る可能性がありますが、とりあえず無視しておきます。

 

では、Ubuntuのパーティションの作成です。。。

ディスクユーティリティを開き、「Macintosh HD」が含まれるディスクを選択します。

選択した状態で「パーティション」をクリックします。

Ubuntuのパーティションを作成します。

「パーティション」は任意、

「フォーマット」は「MS-DOS(FAT)」、

「サイズ」は任意です。

50GBもあれば十分でしょう。

 

では、ブートローダーの準備をしましょう。。。

次に、以下のリンク

http://www.rodsbooks.com/refind/getting.html

から「rEFInd」をダウンロードします。

A binary zip file」を選択してダウンロードしてください。

ダウンロードしたら、任意のフォルダに解凍しておいてください。

 

ダウンロードしたら、「アプリケーション」→「ユーティリティ」フォルダにある「ターミナル」を起動します。

cdコマンドで、ダウンロードした「rEFInd」フォルダに移動したら、フォルダに含まれる「install.sh」を実行します。

 

 

T512G1GUIDnoMBP:refind-bin-0.10.5 t512g1guid$ ls

COPYING.txt banners mountesp

CREDITS.txt docs mvrefind

LICENSE.txt fonts refind

NEWS.txt keys refind-install

README.txt mkrlconf refind-mkdefault

T512G1GUIDnoMBP:refind-bin-0.10.5 t512g1guid$ 

 

refind-install.sh をダブルクリックして実行しました。

Last login: Sun Mar 26 03:36:47 on ttys001

/Users/t512g1guid/Downloads/refind-bin-0.10.5/refind-install ; exit;

T512G1GUIDnoMBP:~ t512g1guid$ /Users/t512g1guid/Downloads/refind-bin-0.10.5/refind-install ; exit;

Not running as root; attempting to elevate privileges via sudo....

Password:

ShimSource is none

Installing rEFInd on OS X....

Installing rEFInd to the partition mounted at /Volumes/ESP

 

**** ALERT: SIP ENABLED! ****

 

rEFInd cannot be installed because System Integrity Protection (SIP) seems

to be enabled! You must install rEFInd from your Recovery installation or

from another OS. To install from the Recovery system:

 

  1. Reboot

  2. Hold down Command+R as the chime sounds

  3. When the OS has booted, select Utilities->Terminal

  4. Change to this directory with the 'cd' command; it will probably be under

     /Volumes/T512G1GUID/Users/t512g1guid

  5. Re-run this script.

 

If you believe SIP is NOT enabled, you may attempt an installation anyhow,

but it may fail.

 

For more on this subject, see http://www.rodsbooks.com/refind/sip.html

 

Do you want to attempt installation (Y/N)? Y

Copied rEFInd binary files

 

Copying sample configuration file as refind.conf; edit this file to configure

rEFInd.

 

Could not set boot device property: 0xe00002bc

 

ALERT:

Installation has completed, but problems were detected. Review the output for

error messages and take corrective measures as necessary. You may need to

re-run this script or install manually before rEFInd will work.

 

Unmounting install dir

Volume EFI on disk0s1 unmounted

logout

Saving session...

...copying shared history...

...saving history...truncating history files...

...completed.

Deleting expired sessions...none found.

 

[プロセスが完了しました]

 

 

なお、ここでは

Downloads」フォルダに解凍してあるものとします。

 

Downloads」フォルダに解凍してあるものとします。

http://ottan.xyz/os-x-ubuntu-dual-boot-2-1236/

さて、El Capitanからは「SIP」と呼ばれる新たなセキュリティ機構が導入され、

デフォルトの状態では「rEFInd」をインストールすることができません。

そこで、Macをリカバリーモードで起動する必要があります。

 

Macを再起動し、+Rを押し続けてください。Macがリカバリーモードで起動します。リカバリーモードで起動したら、以下の手順で「rEFInd」をインストールします。

  1. メニューの「ユーティリティ」→「ターミナル」をクリックします
  2. ターミナルから、「rEFInd」を解凍しているフォルダに移動します。以下のコマンドを参照。「ottan」、「Downloads」、「refind-0.10.2」は適宜読み替えてください
  3. ./refind-installを実行。「Installation has completed successfully.」と表示されればインストールは完了です
  4. Macを通常モードで再起動します
# cd /Volumes/Macintosh¥ HD/Users/ottan/Downloads/refind-0.10.2

通常では、「rEFInd」のインストールが完了した時点で、作業は完了なのですが、どうもEl Capitanの環境ではこのままではうまく動作しないようです。Ubuntuのインストール完了後に、Macを(option)を押したまま再起動し、Ubuntuの起動ディスクが見えないようでしたら、以下の手順を試してみてください。

 

https://wavisaviwasavi.amebaownd.com/posts/208897

を参考に。。「

 

 

こちらを参考に、少々小細工します。ターミナルを開いて、以下のコマンドを実行します。

 

$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS Macintosh HD            250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

「EFI」の「IDENTIFIER」を控えておいてください。次に、ターミナルから以下のコマンドを実行します。

$ mkdir /Volumes/efi
$ sudo mount -t msdos /dev/disk0s1 /Volumes/efi

「/dev/disk0s1」は事前に確認した「EFI」の「IDENTIFIER」です。適宜読み替えてください。次に、Finderを開き、/Volumes/efiに移動します。具体的には、Finderで、++Gで、移動する場所に上記を指定してください。

その後の作業については上記リンクに書いてある通りです。

 

 

 

http://ottan.xyz/el-capitan-ubuntu-dual-boot-4020/ 続き

| whaison | Operating System | 17:10 | comments(0) | - | pookmark |
            
2017.03.26 Sunday
NVIDIA GRID TM APPLICATION SIZING GUIDE  FOR: AUTODESK MAYA 2017 の日本語 翻 訳 用  HTML

 

https://knowledge.autodesk.com/ja/support/maya/troubleshooting/caas/sfdcarticles/sfdcarticles/JPN/System-requirements-for-Autodesk-Maya-2017.html

Maya の 動作環境 Oparation System にある NVIDIA GRID

オペレーティング システム
  • 10 Professional オペレーティング システムが Windows 7 (SP1)、Microsoft ® Windows ®
  • X 10.10.5 Apple ® Mac OS ®、10.11.x オペレーティング システム
  • Red Hat ® Enterprise Linux ® 6.5 WS オペレーティング システムと 7.2
  • CentOS 6.5 Linux オペレーティング システムと 7.2
  • グリッドと VMware の仮想化の NVIDIA ガイド

 

 

http://images.nvidia.com/content/grid/pdf/maya/NVIDIA-GRID%20Application-Guide-Autodesk-Maya.pdf

 

NVIDIA GRID

TM APPLICATION SIZING GUIDE FOR: AUTODESK MAYA 2017

 

 

NVIDIA GRID TM

APPLICATION SIZING GUIDE FOR: AUTODESK MAYA 2017

 

NVIDIA Performance Engineering

 

November 2016

 

-------------------------------------------------------------TABLE OF CONTENTS------------------------------------------------Start

 

Users per Server (UPS) ........................................................................ 3

Determining users per server ............................................................................... 4

Scalability Test Result Summary ........................................................................... 4

About the Application: Maya 2017 ......................................................................... 5

About NVIDIA GRID .......................................................................................... 6

Testing and methodology description ..................................................................... 7

Test Descriptions .......................................................................................... 8

Methodology Description ...................................................................................14

Appendix .........................................................................................20

-------------------------------------------------------------TABLE OF CONTENTS------------------------------------------------END

 

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 2

page2image4720

The purpose of this guide is to give a detailed analysis of how many users organizations can expect to get per servers based on performance testing with the Autodesk Maya applications. The NVIDIA Performance Lab worked in cooperation with the Autodesk Maya team to determine the maximum recommended number of users for the reference server configuration. Autodesk provided specific test scripts for the Maya 2017 software that are not generally available to end users, which the NVIDIA GRID performance team used to test specific combinations of virtual machines for performance and scale. These test scripts have been submitted to the SPEC review committee for inclusion in a Maya 2017 SPEC benchmark. Based on extensive testing, NVIDIA GRID provides the following performance and scalability recommendation.

!

NOTE: THESE NUMBERS ARE INTENDED TO BE USED A GENERAL GUIDANCE FOR A MAXIMUM NUMBER OF USERS PER HOST. CHANGES IN SERVER CONFIGURATION AND DIFFERENCES IN USAGE OF THE SOFTWARE WILL CAUSE PERFORMANCE TO VARY.

page3image13584

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 3

page3image14600

USERS PER SERVER (UPS)

DETERMINING USERS PER SERVER

Since Maya 2017 is used as both modeling and animation software, both user functions are important to consider when determining sizing of a virtual environment. Our testing reveals that these functions have differences between the amount of GPU used for each function that can be quite significant. Also, the tests have shown that the availability of vCPU resources (i.e. cores) is critical to performance for animation workloads.

These tests were written to replicate typical artist workflows which use effects and take advantage of the GPU.

The following tests were provided by Autodesk:

Table 1 Maya Test catagories

page4image7160

Test area

page4image8592

T est

Bifröst simulation

Bridge

page4image12800

Animation

page4image14024

Jungle

page4image15264

Modeling/T essellation

page4image16528

Character

page4image17776 page4image18528

XGen Hair

page4image19904 page4image20064

Tiger

For simplicity purposes, test will be often referenced by their shorter name, i.e. Character, Jungle, Bridge and Tiger, throughout this scalability report.

SCALABILITY TEST RESULT SUMMARY

The test results show that XGen modeling workloads, or any workload that requires OpenCL, the maximum possible number of users per server is four. Testing shows that with 4 concurrent M60-8Q profiles running simultaneously, all users see less than a 10% degradation in performance, well below discomfort level. We conclude that 4 concurrent users per server is the maximum. The Character modeling/tessellation test can support 16 VMs/Users per server, which is the maximum number of VM’s for the M60-2Q profile. Both the Tiger and Character workflow tests achieve the maximum number of VMs per GPU board, but the tests themselves are not GPU intensive. The frame buffer allocated to the VM was not entirely used by the application during test execution.

The Jungle animation and Bifröst simulation Bridge tests exceeded acceptable usability levels when reaching 10 VMs, and the Bridge test was found to perform better when more vCPU was added to the VM. Both tests put a larger demand on the CPU than GPU. In the case of the Bridge test, reconfiguring vCPU to 10 increased the performance

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 4

page4image32720

of the VM. However, as such, the host CPU would become too overallocated if the host had more than 10 VM’s running. On this class of server, the maximums VM’s which are concurrently executing for Bifröst simulation or the Character animation work modelled within the test reside between 6 and 8 users per server.

ABOUT THE APPLICATION: MAYA 2017

Maya provides a comprehensive suite of tools for your 3D content creation work ranging from modeling, animation, and dynamics through to painting and rendering to name but a few. With Maya, you can create and edit 3D models in a variety of modeling formats and animate your models using Maya’s suite of animation tools. Maya also provides a range of tools to allow you to render your animated 3D scenes to achieve photo realistic imagery and animated visual effects.

GPU Override is feature which is enabled by default in Maya 2017, this feature allows the GPU to perform operations which would otherwise be performed on the CPU. GPU Override requires Viewport 2.0 to be active, and the Evaluation Manager must be set to Serial or Parallel modes (Parallel is recommended and set by default). When the Maya preference “GPU Override” is enabled in Maya 2017, then standard deforming animation (i.e. Character animation) will offloaded to the GPU rather than CPU. If a user disables “GPU Override”, then these deforming animations would be processed on the CPU.

It is important to note, not all effects will be performed by the GPU even when GPU override is enabled. The following is a list of effects which make more use of the GPU:

  •   Scenes which use Viewport 2.0 effects such as lighting, shadows, SSAO, motion blur, depth peeling transparency.

  •   Playback and tumbling with very dense geometry.

  •   Generally, operations that use OpenCL (i.e. XGen).

  •   OpenSubdiv smoothing.

    The following is list of effect which are CPU limited and do not take advantage of the GPU:

  •   Playback or tumbling in scenes with very large numbers of objects.

  •   Rigging in general (i.e. editing Character rigs).

  •   Modeling on dense meshes.

  •   Particlesimulationandcaching.

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 5

page5image20216

ABOUT NVIDIA GRID

NVIDIA redefined visual computing by giving designers, engineers, scientists, and graphics artists the power to take on the biggest visualization challenges with immersive, interactive, photorealistic environments. NVIDIA Tesla GPU Accelerators bring this same power to the virtual desktop. Leveraging NVIDIA TeslaTM GPUs, NVIDIA GRIDTM delivers virtual workstations from the data center or cloud. Architects, engineers, and designers are now liberated from their desk and can access their applications and data anywhere. The NVIDIA Tesla M60 GPU accelerator works with NVIDIA GRID software to provide the industry’s highest user performance for virtualized workstations, desktops, and applications. This solution allows enterprises to virtualize any application—including professional graphics applications—and deliver them out to any device, anywhere.

Table 2 Tesla M60 Features and Specs

Virtualization Use Case

page6image9728

Performance-Optimized Graphics Virtualization

GPU Product

NVIDIA Tesla M60 - designed for the datacenter

GPU Architecture

page6image15696

NVIDIA MaxwellTM

GPUs per Board

2

Max User per Board

32(16 per GPU)

page6image22480

NVIDIA CUDA Cores

4096 NVIDIA CUDA Cores (2048 per GPU)

page6image25432

GPU Memory

16 GB of GDDR5 Memory (8 per GPU)

H.264 1080p30 Streams

36

page6image31120

Max Power Consumption

page6image32608

300 W

Thermal Solution

Active/Passive

Form Factor

PCIe 3.0 Dual Slot

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 6

page6image41048

TESTING AND METHODOLOGY DESCRIPTION

This section describes the tests performed and the method of testing used to determine sizing and server loads.

Test Environment

The following table describes the server host:

Table 1 Reference host specifications

Reference Host

Model

Supermicro SYS-2028GR-TRT

CPU

Intel Xeon CPU e5-2698 v3 @2.30Ghz

Logical Processors

page7image13216

64

Memory

page7image15680

256 GB

Storage

page7image17864

26 TB

GPU’s

page7image20728

2X Tesla M60

page7image22376

Hypervisor

VMware ESXi, 6.0.0, 3380124

page7image24960

VDI Management Software

VMware Horizon 7.01

NVIDIA GRID Software

page7image28200

Virtual Workstation

NVIDIA GRID Software

page7image31144

369.17(host) 367.43(guest)

page7image32432

Server BIOS Settings

Turbo Boost Technology

page7image35968

Enabled

Power Settings

page7image39168

Maximum Performance

page7image40616

Hyperthreading

page7image43160

Enabled

The VM operating system was Windows 7 SP1 with VMware Tools was installed. All testing was run on a single, full HD (1920x1080) monitor.

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 7

page7image46840

Test Descriptions Modelling/Tessellation: Character

The following is a screenshot of the Character test during test execution:

page8image1992

Figure 1 Character test screen shot

Figure 2 Character test display settings

page8image3264

Display settings, such as number of vertices, edges, faces, tris and UV’s, determine the

page8image4392

complexity of the model. The following screenshot describes the display settings used

page8image5440

for the test:

page8image6128

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 8

page8image7408

Animation: Jungle

page9image936

The Jungle test provides basic animation information for a specific object in a scene.

page9image2064

Below are two screenshots taken during Jungle test execution:

page9image2992

Figure 3 Jungle test screenshot

page9image3768

Figure 4 Jungle test screenshot

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 9

page9image5392

Color shading is turned on and off during the tests. The following screenshot describes the complexity of the scene:

Figure 5 Jungle test display settings

Bifröst Simulation: Bridge

page10image2488

Autodesk describes Bifröst as a procedural framework that can create simulated liquid

and aerodynamic effects using a FLIP (fluid implicit particle) solver. You can generate

liquid from emitters and have it fall under gravity, as well as interact with colliders to

direct the flow and create splashes, and use fields to create jets and other effects.

page10image7496

Figure 6 Bridge test screenshot

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 10

page10image9120

The following screenshot describes the model:

Figure 7 Bridge test display settings

XGen Hair: Tiger

page11image1864

XGen is described by Autodesk as users can procedurally create and style hair, fur and feathers

for characters.

With XGen users can

create realistic, self-shadowing fur and short hair on multi-

surface NURBS, polygonal and subdivision surface models. The Tiger tests is the most GPU

intensive test and requires OpenCL. The following is a screenshot of the Tiger test during test

execution:

page11image8704

Figure 8 Tiger test screenshot

The following screenshot shows the heads up display settings of the scene:

Figure 9 Tiger test display settings

Importance of vCPU vs. vGPU

Configuring the virtualized environment is essential for providing a consistently performant user experience. Improper configuration can lead to errors within the

page11image12208

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 11

page11image13224

application, sluggish performance or worse yet, application crashes. Autodesk has provided some error detection within the application to assist users in understanding issues which that may use to address issues which can occur due to insufficient GPU resources.

For Maya to take advantage of the GPU and multi-threading, the test scripts automatically enabled Parallel Evaluation and GPU Override.

Figure 10 Maya test script parameters

The following is a screenshot of an error message which occurs if the application does not have the proper amount of graphics memory (frame buffer) available as a resource:

Figure 11 Error message due to low memory config

Additionally, certain workflows such as those captured in the XGen Hair (Tiger) test requires OpenCL. When virtualizing the GPU, and using the GRID M60 card, the only vGPU profile which enables OpenCL is the M60-8Q Profile. If the M60-8Q profile is not assigned for this workload, Maya will crash upon opening. The following application event 1000 error was captured in the Windows Event log.

page12image9480 page12image9648 page12image9816

Figure 12 Event 1000 Application Error

To avoid this application crash, users should consult the Maya output window which is displayed in front of the application. This output window will indicate this issues exist with graphic card drivers and/or Open CL requirements.

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 12

page12image13344

Other configuration items, such as vCPU, memory and network are equally essential to provide a great Maya user experience. These configuration items will be highlighted in the upcoming test approach sections.

Maya 3D Viewport Settings

Maya has several 3D viewport settings that the application can run. Each of these viewport settings may perform differently, therefore all tests ran using all 3 viewport settings. These settings were applied using environment variables and are as follows:

 DirectX 11  OpenGL
 CoreProfile

The default viewport setting is CoreProfile.

Test Metrics

VM Metrics

- Maya Application Logs o Total test runtime

- Windows Performance Counters o CPU

o Memory
o Disk
o Network
o NVIDIAGPU

The Windows NVIDIA GPU performance counters were added at NVIDIA GRID 367.17, 367.14 version release. These counters measured frame buffer (FB) used and GPU % Utilization within the VM.

Host Metrics

The following host metrics were captured and analyzed:

  • -  Esxtop (Utilization by Core)

  • -  NVIDIA-smi (GPU Usage) Test Limitations

    Automated scalability testing can be considered more aggressive by nature than a typical user workflow. In most cases, it is not typical that 10 users will be executing rendering requests simultaneously or even to the degree of which were replicated in multiple test iterations. As such, the test results from our automated scalability testing can be considered worst case scenario and in most cases, a host should be able to support more than the concluded amount of VMs. The degree to which higher

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 13

page13image16696

scalability would be achieved is dependent on the typical day to day activities of a user, such as the number of meetings and the length of lunch or breaks, multi-tasking, etc.

This type of peak performance testing leads to conservative estimates of scalability, by design. It is therefore likely that results in typical or even aggressively loaded datacenters will have higher scalability. These results indicate likely minimums for rarefied conditions, to serve as “safe” guidelines.

Methodology Description

The scalability testing was conducted in two phases.  Single benchmark phase

 Scalability phase
Single Benchmark Phase

In this phase, virtual machines were created with a standard configuration. The test suite of four tests were run on the individual VMs to determine the amount of critical resources each test workflow typically used.

To ensure that each workflow had adequate resources (vCPU, GPU and RAM) to perform the workflows optimally, the single benchmark VMs were intentionally overprovisioned with CPU and Memory; 16 vCPU, 16GB of RAM. Each benchmark test also used the M60-8Q vGPU profile which provided access to the entire GPU. The utilization rates of these resources as well as test run times were then analyzed to determine the optimal VM configuration for each workflow. In some test cases, tests were re-executed at scale after re-configuring VMs.

vGPU Calculation

The following table indicates the GPU memory (frame buffer) utilization rates of the M60-8Q profile. This value was calculated by examining how the 8GB frame buffer was being utilized within the VM during test execution. These values, assisted in identifying the appropriate vGPU profile needed to support each workflow as follows:

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 14

page14image15856

Table 2 Typical test resource utilization

page15image3304 page15image5440 page15image5760 page15image6080 page15image6400

Workflow

Test Name

% GPU Memory

GPU Memory

vGPU Profile

Comments

page15image10456 page15image10616 page15image10776 page15image10936 page15image11096 page15image11256 page15image11416 page15image11840 page15image12160 page15image12744 page15image12904 page15image13064 page15image13224

Bifröst Simulation

Bridge

11%

0.88 GB

M60-1Q

page15image16288 page15image16448 page15image16608 page15image16768 page15image16928 page15image17088 page15image17248 page15image17672 page15image17992 page15image18576 page15image18736 page15image18896 page15image19056

Modeling T exturing

Character

24%

1.92 GB

M60-2Q

page15image22160 page15image22320 page15image22480 page15image22640 page15image22800 page15image22960 page15image23120 page15image23544 page15image23864 page15image24448 page15image24608 page15image24768 page15image24928

XGen Hair

Tiger

34%

2.72 GB

M60-4Q M60-8Q

OpenCL requirement; M60- 8Q See below

page15image28624 page15image28944 page15image29104 page15image29264 page15image29424 page15image29584 page15image29744 page15image29904 page15image30328 page15image30648 page15image31232 page15image31392 page15image31552 page15image31712

Character Animation

Jungle

19%

1.52 GB

M60-2Q

page15image35840 page15image36904 page15image38072

 

page15image39000 page15image39160 page15image39320 page15image40392

Note: NVIDIA GRID with Tesla M60 supports both high-end graphics and CUDA/OpenCL accelerated computing

Since the XGen functionally within the Maya application requires OpenCL, the Tiger test required the M60-8Q profile. Currently OpenCL capabilities are only enabled using the M60-8Q profile.

vCPU Calculation

It is important to note that a VM with more vCPU does not necessarily out perform a VM with less vCPU when using multi-threaded applications. In most of the tests, the 8- vCPU configuration was adequate, however since Maya is multi-threaded, test runtimes for the Bridge and Character tests decreased when the vCPU was altered; the Character VM increased performance when the vCPU count was lowered to 4. Theory of operation for this phenomenon holds that the Maya application generates threads for every vCPU it finds. This can lead to thread contention, which decreases performance. The following tables describes the required vCPU for each test:

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 15

page15image51392

Table 3 vCPU configurations for testing

vCPU configuration becomes increasing important during the next phase of testing; scalability testing. Allocating too much vCPU to a VM can cause a performance overhead on the host. Allocating too little vCPU can cause sluggish performance no matter how much vGPU the VM has. Aggressive vCPU allocation management is warranted.

Single Benchmark Results

The following tables summarizes how the vCPU and vGPU were reconfigured after analyzing the single benchmarks to support each type of workflow:

Table 4 vGPU and vCPU configurations for each test

Workflow

Test Name

vCPU Reconfiguration

Bifröst Simulation

Bridge

10

Modeling/T essellation

Character

4

XGen Hair

Tiger

8

Character Animation

Jungle

8

page16image28960 page16image29384 page16image29704 page16image30768 page16image31088 page16image31408

Workflow

Test Name

vCPU

vGPU

page16image33720 page16image33880 page16image34040 page16image34464 page16image34624 page16image34784 page16image34944 page16image35424 page16image35584 page16image35744

Bifröst Simulation

Bridge*

10

M60-1Q

page16image38056 page16image38216 page16image38640 page16image38800 page16image38960 page16image39120 page16image39600 page16image39760 page16image39920

Modeling/T essellation

Character

4

M60-2Q

page16image42232 page16image42392 page16image42816 page16image42976 page16image43136 page16image43296 page16image43776 page16image43936 page16image44096

XGen Hair

Tiger

8

M60-8Q

page16image46248 page16image46408 page16image46568 page16image46992 page16image47152 page16image47312 page16image47472 page16image47952 page16image48112 page16image48272

Character Animation

Jungle

8

M60-2Q

page16image50744 page16image51064 page16image51488 page16image51808 page16image52128 page16image53296

 

page16image54224 page16image54384 page16image54544 page16image55616

Note: * Bifröst Simulation workflow within the Bridge test reported 11% decrease in test runtime when increasing vCPU from 8 to 10.

Scalability Testing Phase

The second phase of testing consisted of scalability test runs for each individual artist workflow. A series of scalability test runs were executed and were incremented; 4, 8, 10, 12, 16 VMs. Between each test run, results and metrics were analyzed to understand how the application was performing as well as how the shared host resources were being utilized. In some test cases, VMs were reconfigured to improve the VM test run time. All configuration used are highlighted in the forthcoming test results sections.

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 16

page16image64424

Over 500 tests were run during scalability tests. Test were initially executed using the optimal VM configuration determined in the single benchmark phase.

The vGPU profile assigned to each workflow dictates the amount of density which is achievable in regards to the scalability of concurrently running VMs on the host. For example, XGen Hair (Tiger) workflow, required the M60-8Q profile due to its OpenCL requirement, therefore the maximum number of VMs is 2 per board. Our test server has two NVIDIA Tesla M60 cards, each card has 2 GPU’s, totally 4 GPU’s. Therefore, the maximum amount of currently running VMs using the M60-8Q profile is 4. The following tables describes the maximum number of possible currently running VMs for each of the test workflows and their vGPU profile requirement:

Table 5 Maximum possible VMs for test

During scalability testing, three of the four workflows (Character, Jungle, Bridge) scaled up to 16 concurrent VMs and the test results were analyzed. The Tiger tests scaled up to 4 VMs.

Scalability Test Metrics

The Maya application logs were the first level of analysis. Total test runtimes were post- processed for additional calculations:

 Standard Deviation across all VMs
● This value can be used as indicator to instability. If a higher value is reported, test

run times are slower or faster from one VM to another.  Average runtime for each scalability test

● This value is the reported value for the entire scalability test run. For example, a 4VM scalability test, reports the average test runtime of all 4 VM test runtimes.

 Percentage change in test runtime was also calculated.

  • ●  This value was considered the final threshold value for determining the amount of VMs which the host could adequately support without severally degraded user experience.

  • ●  Test thresholds less than 30% were considered to deliver adequate user
    experience. This threshold value is slightly higher than a typical physical or single user threshold, taking in consideration of the aggressive nature of the stress test. This level therefore became the threshold for our testing.

Workflow

Test Name

vGPU

Max # of VMs

XGen Hair

page17image27000

Tiger

page17image28360
page17image28864 page17image29776

M60-8Q

page17image30968

4

Modeling/T essellation

Character

M60-2Q

16

Character Animation

Jungle

page17image38776

M60-2Q

16

Bifröst simulation

Bridge

page17image43552
page17image44368

M60-1Q

page17image45296

32

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 17

page17image48288

Once these outputted VM metrics were analyzed, the host metrics were analyzed to determine the test bottleneck to performance.

Scalability Test Results

The following tables describes the test results from our testing and the amount concurrent VMs adequately supported on the host:

Table 6 Concurrent users per host

T est Name

Test Area

# of VM’s

vCPU

vGPU

% Change Threshold

page18image14464 page18image14888

Tiger

page18image16592

XGen-Hair

page18image17936

4

page18image20016

8

page18image21376

M60-8Q

page18image23368 page18image23952

-7.87%

Cards at full capacity (32GB)

Character

Modeling/ T essellation

16

4

M60-2Q

-22.58%

page18image31712 page18image32136

Jungle

page18image33352

Character Animation

page18image34672

10

page18image36152

8

page18image37328

M60-2Q

page18image38808

-20.79%

page18image39992
page18image42448

Bridge

Bifröst Simulation

page18image44576 page18image44896

6

10

page18image48136 page18image48728

M60-1Q

-28.21%

page18image51216

!

NOTE: Overall, all the four artist workflows provided by Autodesk showed that the bottleneck on the host was CPU rather than GPU.

Although the Tiger and Character workflow tests could achieve the maximum number of VMs per GPU board, the tests themselves are not GPU intensive. Therefore, the frame buffer allocated to the VM was not entirely used by the application during test execution.

As in the Tiger and Character tests, the Jungle and Bridge tests also required more CPU than GPU. As such, the test threshold value was quickly surpassed when the amount of concurrent VMs increased to 10. The following table shows the increase in test runtime as the amount of concurrent VMs increased:

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 18

page18image64208

Table 7 Bridge test threshold results

As discovered in the single VM test, the Bridge test runtimes were most optional using 10vCPU. However, if the amount of concurrent VMs were increased to 32 to reach to GPU maximum capacity of the GRID M60-1Q profile, the host CPU would be over allocated (320 vCPU) since the host has 64 logical cores with hyper threading enabled. Powering on more VMs meant using more vCPU than the host had as a shared resource.

CONCLUSION

The test results show that XGen modeling workloads, or any workload that requires OpenCL, the maximum possible number of users per server is four. Testing shows that with 4 concurrent M60-8Q profiles running simultaneously, all users see less than a 10% degradation in performance, well below discomfort level. We conclude that 4 concurrent users per server is the maximum. The Character modeling test can support 16 VMs/Users per server, which is the maximum number of VM’s for the M60-2Q profile. Both the Tiger and Character workflow tests achieve the maximum number of VMs per GPU board, but the tests themselves are not GPU intensive. The frame buffer allocated to the VM was not entirely used by the application during test execution.

The Jungle and Bridge tests exceeded acceptable usability levels when reaching 10 VMs, and the Bridge test was found to perform better when more vCPU was added to the VM. Both tests put a larger demand on the CPU than GPU. In the case of the Bridge test, reconfiguring vCPU to 10 increased the performance of the VM. However, as such, the host CPU would become too overallocated if the host had more than 10 VM’s running. On this class of server, the maximums VM’s which are concurrently executing for Bifröst simulation or the Character animation work modelled within the test reside between 6 and 8 users per server.

Bridge Avg. Test Time- 1Q vGPU Profile - 10vCPU

% Change Threshold

1VM

6VM

8VM

1VM vs 6VMs

CoreProfile

02:35.4

03:36.4

page19image30272

04:12.3

page19image31600

-28.21%

OpenGL

02:35.2

03:36.5

04:09.2

-28.32%

DX11

02:35.6

page19image41792

03:36.6

page19image43376

04:09.2

-28.15%

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 19

page19image46928

ADDITIONAL TESTING: MAYA 2017 SPEC

Maya 2017 SPEC contains eight artist workflows. The 4 workflows referenced in this whitepaper are also included with SPEC. The following is a list of the tests included in SPEC:

  • -  Bifröst Bridge

  • -  Jungle Animation

  • -  Seven Space Animation

  • -  Space Crash

  • -  Seven Character Animation

  • -  XGen Hair Tiger

  • -  Character Model Texture

  • -  Toy store

    This SPEC test provides individual elapsed time test results for the different modes tested such as animation, Bifröst, smooth shade (SSAO, edges, texture, all lights), and wire. These elapsed times were compared to a physical NVIDIA workstation graphic card and the test results were within range. No crashes or errors were reported.

    The Tiger workflow was modified for SPEC; the same Tiger model is loaded but exercises the GPU more heavily by rotating the model on the screen. This SPEC Tiger workflow intends to model real Maya users who build models as they are animating on the screen and requires both powerful GPU and CPU. Since the Tiger XGen capabilities within Maya requires OpenCL, the SPEC benchmark was ran using the same GRID M60-8Q vGPU (8GB) profile as used in our original test.

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 20

page20image13736

APPENDIX

The following graphs illustrated GPU and CPU Utilization rates on the VM during a single benchmark test. This graph captures the entire SPEC benchmark (total of 8 tests).

page21image2032

Figure 13 GPU and CPU utilization rates

NVIDIA GRID Application Sizing Guide for Autodesk Maya 2017 www.nvidia.com/grid 21

page21image3736

page22image392

Notice

The information provided in this specification is believed to be accurate and reliable as of the date provided. However, NVIDIA Corporation (“NVIDIA”) does not give any representations or warranties, expressed or implied, as to the accuracy or completeness of such information. NVIDIA shall have no liability for the consequences or use of such information or for any infringement of patents or other rights of third parties that may result from its use. This publication supersedes and replaces all other specifications for the product that may have been previously supplied.

NVIDIA reserves the right to make corrections, modifications, enhancements, improvements, and other changes to this specification, at any time and/or to discontinue any product or service without notice. Customer should obtain the latest relevant specification before placing orders and should verify that such information is current and complete.

NVIDIA products are sold subject to the NVIDIA standard terms and conditions of sale supplied at the time of order acknowledgement, unless otherwise agreed in an individual sales agreement signed by authorized representatives of NVIDIA and customer. NVIDIA hereby expressly objects to applying any customer general terms and conditions with regard to the purchase of the NVIDIA product referenced in this specification.

NVIDIA products are not designed, authorized or warranted to be suitable for use in medical, military, aircraft, space or life support equipment, nor in applications where failure or malfunction of the NVIDIA product can reasonably be expected to result in personal injury, death or property or environmental damage. NVIDIA accepts no liability for inclusion and/or use of NVIDIA products in such equipment or applications and therefore such inclusion and/or use is at customer’s own risk.

NVIDIA makes no representation or warranty that products based on these specifications will be suitable for any specified use without further testing or modification. Testing of all parameters of each product is not necessarily performed by NVIDIA. It is customer’s sole responsibility to ensure the product is suitable and fit for the application planned by customer and to do the necessary testing for the application in order to avoid a default of the application or the product. Weaknesses in customer’s product designs may affect the quality and reliability of the NVIDIA product and may result in additional or different conditions and/or requirements beyond those contained in this specification. NVIDIA does not accept any liability related to any default, damage, costs or problem which may be based on or attributable to: (i) the use of the NVIDIA product in any manner that is contrary to this specification, or (ii) customer product designs.

No license, either expressed or implied, is granted under any NVIDIA patent right, copyright, or other NVIDIA intellectual property right under this specification. Information published by NVIDIA regarding third-party products or services does not constitute a license from NVIDIA to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property rights of the third party, or a license from NVIDIA under the patents or other intellectual property rights of NVIDIA. Reproduction of information in this specification is permissible only if reproduction is approved by NVIDIA in writing, is reproduced without alteration, and is accompanied by all associated conditions, limitations, and notices.

ALL NVIDIA DESIGN SPECIFICATIONS, REFERENCE BOARDS, FILES, DRAWINGS, DIAGNOSTICS, LISTS, AND OTHER DOCUMENTS (TOGETHER AND SEPARATELY, “MATERIALS”) ARE BEING PROVIDED “AS IS.” NVIDIA MAKES NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. Notwithstanding any damages that customer might incur for any reason whatsoever, NVIDIA’s aggregate and cumulative liability towards customer for the products described herein shall be limited in accordance with the NVIDIA terms and conditions of sale for the product.

HDMI

HDMI, the HDMI logo, and High-Definition Multimedia Interface are trademarks or registered trademarks of HDMI Licensing LLC.

OpenCL

OpenCL is a trademark of Apple Inc. used under license to the Khronos Group Inc.

Trademarks

NVIDIA and the NVIDIA logo are trademarks and/or registered trademarks of NVIDIA Corporation in the U.S. and other countries. Other company and product names may be trademarks of the respective companies with which they are associated.

Copyright

© 2016 NVIDIA Corporation. All rights reserved.

page22image36488

www.nvidia.com 

| whaison | Operating System | 15:55 | comments(0) | - | pookmark |
            
2017.03.05 Sunday
Android_00100__Google_Opatation_instance_= new Google OS  型 Google_OS_PropatyList= __Google_Opatation_instance_.Propaties Google_OS_PropatyList._Name=”android” Google_OS_PropatyList._User

 

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

Android_00100__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList._Name<String>=”android

Google_OS_PropatyList._User<Human>=Global.GetHuman(

   Global.CountryList<Global.Country.Japan>.).instance<Human> ,

   Network . Jumin_Kihon_Daicyoo_Array[ 23748923401 ] .

)

 

 

 

Android_00200__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList.Name=”android”

 

Android_00300__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList.Name=”android”

 

Android_00400__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList.Name=”android”

 

Android_00500__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList.Name=”android”

 

Android_00200__Google_Opatation_instance_= new Google OS  <Oparating System >型 Google_OS_PropatyList<Genelic.List>= __Google_Opatation_instance_.Propaties<Genelic.List> Google_OS_PropatyList.Name=”android”

 

 

---------------------------------------------かなと思ったが

 

 

Wiki DataBase   Operating System 先生に聞いてみた

———————————————————————————



Android (operating system)
From Wikipedia, the free encyclopedia


Android



Android 7.1 Nougat home screen
* Developer            Google
*         Open Handset Alliance
Written in    Java (UI),[1] C (core), C++
OS family    Unix-like
Working state    Current
Source model    Open source[2] and in most devices withproprietarycomponents[3]
Initial release    September 23, 2008; 8 years ago[4]
Latest release    7.1.1 "Nougat" / December 5, 2016; 2 months ago
Latest preview    7.1.2 "Nougat" / January 30, 2017; 32 days ago
Marketing target    Smartphones, tablet computers, Android TV,Android Auto andAndroid Wear
Available in    100+ languages[5]
Package manager    APK (Primarily throughGoogle Play) and installing apks from alternative sources such as F-Droid
Platforms    32- and 64-bit ARM,x86,[6] MIPS[7] andMIPS64[a]
Kernel type    Monolithic (modified Linux kernel)
Userland    Bionic libc,[8] mkshshell,[9] Toybox as core utilities beginning with Android 6.0,[10][11]previously native core utilities with a few fromNetBSD[12][13]
Default user interface    Graphical (multi-touch)
License    Apache License 2.0
GNU GPL v2 for theLinux kernelmodifications[14]
Official website    android.com
Android (stylized as android) is a mobile operating systemdeveloped by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such assmartphones and tablets. Android's user interface is mainly based on direct manipulation, using touch gestures that loosely correspond to real-world actions, such as swiping, tapping and pinching, to manipulate on-screen objects, along with a virtual keyboard for text input. In addition to touchscreen devices, Google has further developed Android TV for televisions, Android Auto for cars, and Android Wearfor wrist watches, each with a specialized user interface. Variants of Android are also used on notebooks, game consoles, digital cameras, and other electronics.
Android has the largest installed base of all operating systems (OS) of any kind.[b] Android has been the best selling OS on tablets since 2013, and on smartphones it is dominant by any metric.[15][16]
Initially developed by Android, Inc., which Google bought in 2005,[17] Android was unveiled in 2007 along with the founding of the Open Handset Alliance – a consortium ofhardware, software, and telecommunication companies devoted to advancing open standards for mobile devices.[18]As of July 2013, the Google Play store has had over one million Android applications ("apps") published – including many "business-class apps"[19] that rival competing mobile platforms[20] – and as of May 2016 over 65 billion applications downloaded.[21] An April–May 2013 survey of mobile application developers found that 71% of developers create applications for Android,[22] and a 2015 survey found that 40% of full-time professional developers see Android as their priority target platform, which is comparable to Apple's iOS on 37% with both platforms far above others.[23] In September 2015, Android had 1.4 billion monthly active devices.[24]
Android's source code is released by Google under an open source license, although most Android devices ultimately ship with a combination of free and open source andproprietary software, including proprietary software required for accessing Google services.[3] Android is popular with technology companies that require a ready-made, low-cost and customizable operating system for high-tech devices.[25] Its open nature has encouraged a large community of developers and enthusiasts to use the open-source code as a foundation for community-driven projects, which deliver updates to older devices, add new features for advanced users[26] or bring Android to devices originally shipped with other operating systems. The success of Android has made it a target for patent (and copyright) litigation as part of the so-called "smartphone wars" between technology companies.[27][28]

Contents  [hide] 
*         1            History            2            Features            2.1            Interface            2.2            Applications            2.3            Memory management            2.4            Virtual reality            3            Hardware            4            Development            4.1            Update schedule            4.2            Linux kernel            4.3            Software stack            4.4            Open-source community            5            Security and privacy            5.1            Scope of surveillance by public institutions            5.2            Common security threats            5.3            Technical security features            6            Licensing            6.1            Leverage over manufacturers            7            Reception            7.1            Market share            7.2            Adoption on tablets            7.3            Platform usage            7.4            Application piracy            8            Legal issues            9            Other uses            10            See also            11            Notes            12            References            13            External links

History
See also: Android version history

Former Android logo wordmark (2007-2014)
Android, Inc. was founded in Palo Alto, California in October 2003 by Andy Rubin (co-founder of Danger),[29] Rich Miner (co-founder of Wildfire Communications, Inc.),[30] Nick Sears (once VP at T-Mobile),[31] and Chris White (headed design and interface development at WebTV[17]) to develop "smarter mobile devices that are more aware of its owner's [sic] location and preferences".[17] The early intentions of the company were to develop an advanced operating system for digital cameras. Though, when it was realized that the market for the devices was not large enough, the company diverted its efforts toward producing a smartphone operating system that would rival Symbian and Microsoft Windows Mobile.[32] Despite the past accomplishments of the founders and early employees, Android Inc. operated secretly, revealing only that it was working on software for mobile phones.[17] That same year, Rubin ran out of money. Steve Perlman, a close friend of Rubin, brought him $10,000 in cash in an envelope and refused a stake in the company.[33]
In July 2005, Google acquired Android Inc. for at least $50 million. Its key employees, including Rubin, Miner and White, stayed at the company after the acquisition.[15][17] Not much was known about Android Inc. at the time, but many assumed that Google was planning to enter the mobile phone market with this move.[17]At Google, the team led by Rubin developed a mobile device platform powered by the Linux kernel. Google marketed the platform to handset makers and carriers on the promise of providing a flexible, upgradeable system. Google had lined up a series of hardware component and software partners and signaled to carriers that it was open to various degrees of cooperation on their part.[34][35][36]
Speculation about Google's intention to enter the mobile communications market continued to build through December 2006.[37] An earlier prototype codenamed "Sooner" had a closer resemblance to a BlackBerryphone, with no touchscreen, and a physical, QWERTY keyboard, but was later re-engineered to support a touchscreen, to compete with other announced devices such as the 2006 LG Prada and 2007 AppleiPhone.[38][39] In September 2007, InformationWeek covered an Evalueserve study reporting that Google had filed several patent applications in the area of mobile telephony.[40][41]

Eric Schmidt, Andy Rubin andHugo Barra at a 2012 press conference announcing Google's Nexus 7 tablet
On November 5, 2007, the Open Handset Alliance, a consortium of technology companies including Google, device manufacturers such asHTC, Sony and Samsung, wireless carriers such as Sprint Nextel and T-Mobile, and chipset makers such as Qualcomm and Texas Instruments, unveiled itself, with a goal to develop open standards for mobile devices.[18] That day, Android was unveiled as its first product, a mobile device platform built on the Linux kernel.[18][42] The first commercially available smartphone running Android was the HTC Dream, released on October 22, 2008.[43]
Since 2008, Android has seen numerous updates which have incrementally improved the operating system, adding new features and fixing bugs in previous releases. Each major release is named in alphabetical order after a dessert or sugary treat; for example, version 1.5 "Cupcake" was followed by 1.6 "Donut". In 2010, Google launched its Nexusseries of devices – a line of smartphones and tablets running the Android operating system, and built by manufacturing partners. HTC collaborated with Google to release the first Nexus smartphone,[44] the Nexus One. Google has since updated the series with newer devices, such as the Nexus 5 phone (made by LG) and the Nexus 7 tablet (made by Asus). Google releases the Nexus phones and tablets to act as their flagshipAndroid devices, demonstrating Android's latest software and hardware features. From 2013 until 2015, Google offered several Google Play Edition devices over Google Play. While not carrying the Google Nexus branding, these were Google-customized Android phones and tablets that also ran the latest version of Android, free from manufacturer or carrier modifications.
From 2010 to 2013, Hugo Barra served as product spokesperson, representing Android at press conferences and Google I/O, Google’s annual developer-focused conference. Barra's product involvement included the entire Android ecosystem of software and hardware, including Honeycomb, Ice Cream Sandwich, Jelly Bean and KitKat operating system launches, the Nexus 4 and Nexus 5 smartphones, theNexus 7[45] and Nexus 10 tablets,[46] and other related products such as Google Now[47] and Google Voice Search, Google’s speech recognition product comparable to Apple’s Siri.[47] In 2013, Barra left the Android team for Chinese smartphone maker Xiaomi.[48] The same year, Larry Page announced in a blog post that Andy Rubin had moved from the Android division to take on new projects at Google.[49] He was replaced bySundar Pichai who became the new head of Android and Chrome OS,[50] and, later, by Hiroshi Lockheimer when Pichai became CEO of Google.[51]
In 2014, Google launched Android One, a line of smartphones mainly targeting customers in the developing world. In May 2015, Google announced Project Brillo as a cut-down version of Android that uses its lower levels (excluding the user interface), intended for the "Internet of Things" (IoT) embedded systems.[52]
University of Cambridge research in 2015, concluded that almost 90% of Android phones in use had known but unpatched security vulnerabilities due to lack of updates and support.[53][54] In a year since (mid-2015) that report, well over a billion Android smartphones have been sold (more than the just over billion sold in 2014); and Android 5.0 (with better security) and later, went from 5.4% market share to currently over half, which means that the 90% number must be very outdated; those phones now very likely represent less than half of all Android phones. Recent devices do get security updates;[55][56] Android 5.0 introduced an improved centralized update system.[57][58]
Features
See also: List of features in Android
Interface
Android's default user interface is mainly based on direct manipulation,[59] using touch inputs that loosely correspond to real-world actions, like swiping, tapping, pinching, and reverse pinching to manipulate on-screen objects, along with a virtual keyboard.[59] Game controllers and full-size physical keyboards are supported via Bluetooth or USB.[60] The response to user input is designed to be immediate and provides a fluid touch interface, often using the vibration capabilities of the device to provide haptic feedback to the user. Internal hardware, such as accelerometers, gyroscopes and proximity sensors[61] are used by some applications to respond to additional user actions, for example adjusting the screen from portrait to landscape depending on how the device is oriented, or allowing the user to steer a vehicle in a racing game by rotating the device, simulating control of a steering wheel.[62]
Android devices boot to the homescreen, the primary navigation and information "hub" on Android devices that is analogous to the desktop found on personal computers. (Android also runs on regular personal computers, as described below). Android homescreens are typically made up of app icons and widgets; app icons launch the associated app, whereas widgets display live, auto-updating content, such as the weather forecast, the user's email inbox, or a news ticker directly on the homescreen.[63] A homescreen may be made up of several pages, between which the user can swipe back and forth, though Android's homescreen interface is heavily customisable, allowing users to adjust the look and feel of the devices to their tastes.[64]Third-party apps available on Google Play and other app stores can extensively re-theme the homescreen, and even mimic the look of other operating systems, such as Windows Phone.[65] Most manufacturers, and some wireless carriers, customise the look and feel of their Android devices to differentiate themselves from their competitors.[66] Applications that handle interactions with the homescreen are called "launchers" because they, among other purposes, launch the applications installed on a device.
Along the top of the screen is a status bar, showing information about the device and its connectivity. This status bar can be "pulled" down to reveal a notification screen where apps display important information or updates, such as a newly received email or SMS text, in a way that does not immediately interrupt or inconvenience the user.[67] Notifications are persistent until read by tapping it, which opens the relevant app, or dismissed by sliding it off the screen. Beginning on Android 4.1, "expanded notifications" can display expanded details or additional functionality; for instance, a music player can display playback controls, and a "missed call" notification provides buttons for calling back or sending the caller an SMS message.[68]
Android provides the ability to run applications that change the default launcher, and hence the appearance and externally visible behaviour of Android. These appearance changes include a multi-page dock or no dock, and many more changes to fundamental features of the user interface.[69]
Applications
See also: Android software development and Google Play
Applications ("apps"), which extend the functionality of devices, are written using the Android software development kit (SDK) and, often, the Java programming language, which has complete access to the Android APIs. Java may be combined with C/C++, together with a choice of non-default runtimes that allow better C++ support;[70][71][72] the Go programming language is also supported since its version 1.4, which can also be used exclusively although with a restricted set of Android APIs.[73] The SDK includes a comprehensive set of development tools,[74] including a debugger, software libraries, a handset emulatorbased on QEMU, documentation, sample code, and tutorials. Initially, Google's supported integrated development environment (IDE) was Eclipse using the Android Development Tools (ADT) plugin; in December 2014, Google released Android Studio, based on IntelliJ IDEA, as its primary IDE for Android application development. Other development tools are available, including a native development kit (NDK) for applications or extensions in C or C++, Google App Inventor, a visual environment for novice programmers, and various cross platform mobile web applications frameworks. In January 2014, Google unveiled an framework based on Apache Cordova for porting Chrome HTML 5 web applications to Android, wrapped in a native application shell.[75]
Android has a growing selection of third-party applications, which can be acquired by users by downloading and installing the application's APK (Android application package) file, or by downloading them using anapplication store program that allows users to install, update, and remove applications from their devices.Google Play Store is the primary application store installed on Android devices that comply with Google's compatibility requirements and license the Google Mobile Services software.[3][76] Google Play Store allows users to browse, download and update applications published by Google and third-party developers; as of July 2013, there are more than one million applications available for Android in Play Store.[77] As of July 2013, 50 billion applications have been installed.[78][79] Some carriers offer direct carrier billing for Google Play application purchases, where the cost of the application is added to the user's monthly bill.[80]
Due to the open nature of Android, a number of third-party application marketplaces also exist for Android, either to provide a substitute for devices that are not allowed to ship with Google Play Store, provide applications that cannot be offered on Google Play Store due to policy violations, or for other reasons. Examples of these third-party stores have included the Amazon Appstore, GetJar, and SlideMe. F-Droid, another alternative marketplace, seeks to only provide applications that are distributed under free and open source licenses.[3][81][82][83]
Memory management
Since Android devices are usually battery-powered, Android is designed to manage processes to keep power consumption at a minimum. When an application is not in use the system suspends its operation so that, while available for immediate use rather than closed, it does not use battery power or CPU resources.[84][85]
Android manages the applications stored in memory automatically: when memory is low, the system will begin invisibly and automatically closing inactive processes, starting with those that have been inactive for longest.[86][87] Lifehacker reported in 2011 that third-party task killers were doing more harm than good.[88]
Virtual reality
At Google I/O on May 2016, Google announced Daydream, a virtual reality platform that relies on a smartphone and provides VR capabilities through a virtual reality headset and controller designed by Google itself.[89] The platform is built into Android starting with Android Nougat, differentiating from standalone support for VR capabilities. The software is available for developers, and was released in 2016.
Hardware

HTC Dream or T-Mobile G1, the first commercially released device running Android (2008).
See also: Android hardware requirements
The main hardware platform for Android is the ARM (ARMv7 andARMv8-A architectures), with x86 and MIPS architectures also officially supported in later versions of Android. The unofficialAndroid-x86 project provided support for the x86 architectures ahead of the official support.[6][90] MIPS architecture was also supported before Google did. Since 2012, Android devices with Intelprocessors began to appear, including phones[91] and tablets. While gaining support for 64-bit platforms, Android was first made to run on 64-bit x86 and then on ARM64. Since Android 5.0 "Lollipop", 64-bit variants of all platforms are supported in addition to the 32-bitvariants.[92]
Requirements for the minimum amount of RAM for devices running Android 5.1 range from 512 MB of RAM for normal-density screens, to about 1.8 GB for high-density screens.[93] The recommendation for Android 4.4 is to have at least 512 MB of RAM,[94] while for "low RAM" devices 340 MB is the required minimum amount that does not include memory dedicated to various hardware components such as thebaseband processor.[95] Android 4.4 requires a 32-bit ARMv7, MIPS or x86 architecture processor (latter two through unofficial ports),[6][96] together with an OpenGL ES 2.0 compatible graphics processing unit(GPU).[97] Android supports OpenGL ES 1.1, 2.0, 3.0, 3.1 and as of latest major version, 3.2 and Vulkan. Some applications may explicitly require a certain version of the OpenGL ES, and suitable GPU hardware is required to run such applications.[97]
Android devices incorporate many optional hardware components, including still or video cameras, GPS,orientation sensors, dedicated gaming controls, accelerometers, gyroscopes, barometers, magnetometers,proximity sensors, pressure sensors, thermometers, and touchscreens. Some hardware components are not required, but became standard in certain classes of devices, such as smartphones, and additional requirements apply if they are present. Some other hardware was initially required, but those requirements have been relaxed or eliminated altogether. For example, as Android was developed initially as a phone OS, hardware such as microphones were required, while over time the phone function became optional.[79]Android used to require an autofocus camera, which was relaxed to a fixed-focus camera[79] if present at all, since the camera was dropped as a requirement entirely when Android started to be used on set-top boxes.
In addition to running on smartphones and tablets, several vendors run Android natively on regular PC hardware with a keyboard and mouse.[98][99][100][101] In addition to their availability on commercially available hardware, similar PC hardware-friendly versions of Android are freely available from the Android-x86 project, including customized Android 4.4.[102] Using the Android emulator that is part of the Android SDK, or by using BlueStacks or Andy, Android can also run non-natively on x86.[103][104] Chinese companies are building a PC and mobile operating system, based on Android, to "compete directly with Microsoft Windows and Google Android".[105] The Chinese Academy of Engineering noted that "more than a dozen" companies were customising Android following a Chinese ban on the use of Windows 8 on government PCs.[106][107][108]
Development

Android green figure, next to its original packaging
Android is developed in private by Google until the latest changes and updates are ready to be released, at which point the source code is made available publicly.[109] This source code will only run without modification on select devices, usually the Nexus series of devices. The source code is, in turn, adapted by original equipment manufacturers(OEMs) to run on their hardware.[110] Android's source code does not contain the often proprietary device drivers that are needed for certain hardware components.[111]
In 2007, the green Android logo was designed for Google by graphic designer Irina Blok. The design team was tasked with a project to create a universally identifiable icon with the specific inclusion of a robot in the final design. After numerous design developments based on science-fiction and space movies, the team eventually sought inspiration from the human symbol on restroom doors and modified the figure into a robot shape. As Android is open-sourced, it was agreed that the logo should be likewise, and since its launch the green logo has been reinterpreted into countless variations on the original design.[112]
Update schedule
See also: Android version history
Google provides major incremental upgrades to Android every six to nine months, with confectionery-themed names, which most devices are capable of receiving over the air.[113] The latest major release is Android 7.0 "Nougat".
Compared to its primary rival mobile operating system, iOS, Android updates typically reach various devices with significant delays. Except for devices with the Google Nexus brand, updates often arrive months after the release of the new version, or not at all.[114] This is partly due to the extensive variation in hardware of Android devices, to which each upgrade must be specifically tailored, as the official Google source code only runs on their own Nexus devices. Porting Android to specific hardware is a time- and resource-consuming process for device manufacturers, who prioritize their newest devices and often leave older ones behind.[114] Hence, older smartphones are frequently not updated if the manufacturer decides it is not worth the investment of resources, although the device may be compatible. This problem is compounded when manufacturers customize Android with their own interface and apps, which must be reapplied to each new release. Additional delays can be introduced by wireless carriers who, after receiving updates from manufacturers, further customize and brand Android to their needs and conduct extensive testing on their networks before sending the upgrade out to users.[114]
The lack of after-sale support from manufacturers and carriers has been widely criticized by consumer groups and the technology media.[115][116] Some commentators have noted that the industry has a financial incentive not to upgrade their devices, as the lack of updates for existing devices fuels the purchase of newer ones,[117] an attitude described as "insulting".[116] The Guardian complained that the method of distribution for updates is complicated only because manufacturers and carriers have designed it that way.[116] In 2011, Google partnered with a number of industry players to announce an "Android Update Alliance", pledging to deliver timely updates for every device for 18 months after its release;[118] however, there has not been another official word about that alliance since its announcement.[114][119]
In 2012, Google began decoupling certain aspects of the operating system (particularly core applications) so they could be updated through Google Play Store independently of the operating system. One of these components, Google Play Services, is a closed-source system-level process providing APIs for Google services, installed automatically on nearly all devices running Android version 2.2 and higher. With these changes, Google can add new operating system functionality through Play Services and application updates without having to distribute an upgrade to the operating system itself. As a result, Android 4.2 and 4.3 contained relatively fewer user-facing changes, focusing more on minor changes and platform improvements.[3][120]
In May 2016, it was announced that Google is considering "shaming" smartphone makers who fail to release updated versions of Android to their devices.[121]
Linux kernel
Android's kernel is based on one of the Linux kernel's long-term support (LTS) branches. Since April 2014, Android devices mainly use versions 3.4, 3.10 or 3.18 of the Linux kernel.[122][123] The specific kernel version depends on the actual Android device and its hardware platform;[124][125][126] Android has used various kernel versions since the version 2.6.25 that was used in Android 1.0.[42]
Android's variant of the Linux kernel has further architectural changes that are implemented by Google outside the typical Linux kernel development cycle, such as the inclusion of components like Binder, ashmem, pmem, logger, wakelocks, and different out-of-memory (OOM) handling.[127][128][129] Certain features that Google contributed back to the Linux kernel, notably a power management feature called "wakelocks", were rejected by mainline kernel developers partly because they felt that Google did not show any intent to maintain its own code.[130][131][132] Google announced in April 2010 that they would hire two employees to work with the Linux kernel community,[133] but Greg Kroah-Hartman, the current Linux kernel maintainer for the stable branch, said in December 2010 that he was concerned that Google was no longer trying to get their code changes included in mainstream Linux.[131] Some Google Android developers hinted that "the Android team was getting fed up with the process," because they were a small team and had more urgent work to do on Android.[134]
In August 2011, Linus Torvalds said that "eventually Android and Linux would come back to a common kernel, but it will probably not be for four to five years".[135] In December 2011, Greg Kroah-Hartman announced the start of Android Mainlining Project, which aims to put some Android drivers, patches and features back into the Linux kernel, starting in Linux 3.3.[136] Linux included the autosleep and wakelocks capabilities in the 3.5 kernel, after many previous attempts at merger. The interfaces are the same but the upstream Linux implementation allows for two different suspend modes: to memory (the traditional suspend that Android uses), and to disk (hibernate, as it is known on the desktop).[137] Google maintains a public code repository that contains their experimental work to re-base Android off the latest stable Linux versions.[138][139]
The flash storage on Android devices is split into several partitions, such as /system for the operating system itself, and /data for user data and application installations.[140] In contrast to desktop Linux distributions, Android device owners are not given root access to the operating system and sensitive partitions such as /system are read-only. However, root access can be obtained by exploiting security flawsin Android, which is used frequently by the open-source community to enhance the capabilities of their devices,[141] but also by malicious parties to install viruses and malware.[142]
Android is a Linux distribution according to the Linux Foundation,[143] Google's open-source chief Chris DiBona,[144] and several journalists.[145][146] Others, such as Google engineer Patrick Brady, say that Android is not Linux in the traditional Unix-like Linux distribution sense; Android does not include the GNU C Library(it uses Bionic as an alternative C library) and some of other components typically found in Linux distributions.[147]
Software stack

Android's architecture diagram
On top of the Linux kernel, there are the middleware,libraries and APIs written in C, and application software running on an application framework which includes Java-compatible libraries. Development of the Linux kernel continues independently of other Android's source code bases.
Until version 5.0, Android used Dalvik as a process virtual machine with trace-based just-in-time (JIT) compilation to run Dalvik "dex-code" (Dalvik Executable), which is usually translated from the Java bytecode. Following the trace-based JIT principle, in addition to interpreting the majority of application code, Dalvik performs the compilation and native execution of select frequently executed code segments ("traces") each time an application is launched.[148][149][150] Android 4.4 introduced Android Runtime (ART) as a new runtime environment, which uses ahead-of-time (AOT) compilation to entirely compile the application bytecode into machine code upon the installation of an application. In Android 4.4, ART was an experimental feature and not enabled by default; it became the only runtime option in the next major version of Android, 5.0.[151]
For its Java library, the Android platform uses a subset of the now discontinued Apache Harmonyproject.[152] In December 2015, Google announced that the next version of Android would switch to a Java implementation based on OpenJDK.[153]
Android's standard C library, Bionic, was developed by Google specifically for Android, as a derivation of theBSD's standard C library code. Bionic itself has been designed with several major features specific to the Linux kernel. The main benefits of using Bionic instead of the GNU C Library (glibc) or uClibc are its smaller runtime footprint, and optimization for low-frequency CPUs. At the same time, Bionic is licensed under the terms of the BSD licence, which Google finds more suitable for the Android's overall licensing model.[150]
Aiming for a different licensing model, toward the end of 2012, Google switched the Bluetooth stack in Android from the GPL-licensed BlueZ to the Apache-licensed BlueDroid.[154]
Android does not have a native X Window System by default, nor does it support the full set of standardGNU libraries. This made it difficult to port existing Linux applications or libraries to Android,[147] until version r5 of the Android Native Development Kit brought support for applications written completely in Cor C++.[155] Libraries written in C may also be used in applications by injection of a small shim and usage of the JNI.[156]
Since Marshmallow, "Toybox", a collection of command line utilities (mostly for use by apps, as Android doesn't provide a command line interface by default), replaced similar "Toolbox" collection.[157]
Android has another operating system, Trusty OS, within it, as a part of "Trusty" "software components supporting a Trusted Execution Environment (TEE) on mobile devices." "Trusty and the Trusty API are subject to change. [..] Applications for the Trusty OS can be written in C/C++ (C++ support is limited), and they have access to a small C library. [..] All Trusty applications are single-threaded; multithreading in Trusty userspace currently is unsupported. [..] Third-party application development is not supported in" the current version, and software running on the OS and processor for it, run the "DRM framework for protected content. [..] There are many other uses for a TEE such as mobile payments, secure banking, full-disk encryption, multi-factor authentication, device reset protection, replay-protected persistent storage, wireless display ("cast") of protected content, secure PIN and fingerprint processing, and even malware detection."[158]
Open-source community
Android has an active community of developers and enthusiasts who use the Android Open Source Project(AOSP) source code to develop and distribute their own modified versions of the operating system.[159]These community-developed releases often bring new features and updates to devices faster than through the official manufacturer/carrier channels, with a comparable level of quality;[26] provide continued support for older devices that no longer receive official updates; or bring Android to devices that were officially released running other operating systems, such as the HP TouchPad. Community releases often come pre-rooted and contain modifications not provided by the original vendor, such as the ability to overclock orover/undervolt the device's processor.[160] CyanogenMod was the most widely used community firmware,[161] and CyanogenMod has been discontinued and LineageOS is the successor of CyanogenMod[162] l Android-x86 is a version of Android for IBM PC compatibles. There have also been attempts with varying degrees of success to port Android to iPhones, notably the iDroid Project.[163]
Historically, device manufacturers and mobile carriers have typically been unsupportive of third-partyfirmware development. Manufacturers express concern about improper functioning of devices running unofficial software and the support costs resulting from this.[164] Moreover, modified firmwares such as CyanogenMod sometimes offer features, such as tethering, for which carriers would otherwise charge a premium. As a result, technical obstacles including locked bootloaders and restricted access to root permissions are common in many devices. However, as community-developed software has grown more popular, and following a statement by the Librarian of Congress in the United States that permits the "jailbreaking" of mobile devices,[165] manufacturers and carriers have softened their position regarding third party development, with some, including HTC,[164] Motorola,[166] Samsung[167][168] and Sony,[169] providing support and encouraging development. As a result of this, over time the need to circumvent hardware restrictions to install unofficial firmware has lessened as an increasing number of devices are shipped with unlocked or unlockable bootloaders, similar to Nexus series of phones, although usually requiring that users waive their devices' warranties to do so.[164] However, despite manufacturer acceptance, some carriers in the US still require that phones are locked down, frustrating developers and customers.[170]
Security and privacy
See also: Mobile security and WARRIOR PRIDE
Scope of surveillance by public institutions
As part of the broader 2013 mass surveillance disclosures it was revealed in September 2013 that the American and British intelligence agencies, the National Security Agency (NSA) and Government Communications Headquarters (GCHQ), respectively, have access to the user data on iPhone, BlackBerry, and Android devices. They are reportedly able to read almost all smartphone information, including SMS, location, emails, and notes.[171] In January 2014, further reports revealed the intelligence agencies' capabilities to intercept the personal information transmitted across the Internet by social networks and other popular applications such as Angry Birds, which collect personal information of their users for advertising and other commercial reasons. GCHQ has, according to The Guardian, a wiki-style guide of different apps and advertising networks, and the different data that can be siphoned from each.[172] Later that week, the Finnish Angry Birds developer Rovio announced that it was reconsidering its relationships with its advertising platforms in the light of these revelations, and called upon the wider industry to do the same.[173]
The documents revealed a further effort by the intelligence agencies to intercept Google Maps searches and queries submitted from Android and other smartphones to collect location information in bulk.[172] The NSA and GCHQ insist their activities are in compliance with all relevant domestic and international laws, although the Guardian stated "the latest disclosures could also add to mounting public concern about how the technology sector collects and uses information, especially for those outside the US, who enjoy fewer privacy protections than Americans."[172]
Common security threats
Research from security company Trend Micro lists premium service abuse as the most common type of Android malware, where text messages are sent from infected phones to premium-rate telephone numberswithout the consent or even knowledge of the user.[174] Other malware displays unwanted and intrusive advertisements on the device, or sends personal information to unauthorised third parties.[174] Security threats on Android are reportedly growing exponentially; however, Google engineers have argued that the malware and virus threat on Android is being exaggerated by security companies for commercial reasons,[175][176] and have accused the security industry of playing on fears to sell virus protection software to users.[175] Google maintains that dangerous malware is actually extremely rare,[176] and a survey conducted by F-Secure showed that only 0.5% of Android malware reported had come from the Google Play store.[177]
Android's fragmentation is a problem for security, since patches to bugs found in the core operating system often do not reach users of older and lower-price devices.[178][179] One set of researchers say that the failure of vendors to support older devices with patches and updates leaves more than 87% of active devices vulnerable.[180][181] However, the open-source nature of Android allows security contractors to take existing devices and adapt them for highly secure uses. For example, Samsung has worked with General Dynamics through their Open Kernel Labs acquisition to rebuild Jelly Bean on top of their hardened microvisor for the "Knox" project.[182][183]
Android smartphones have the ability to report the location of Wi-Fi access points, encountered as phone users move around, to build databases containing the physical locations of hundreds of millions of such access points. These databases form electronic maps to locate smartphones, allowing them to run apps likeFoursquare, Google Latitude, Facebook Places, and to deliver location-based ads.[184] Third party monitoring software such as TaintDroid,[185] an academic research-funded project, can, in some cases, detect when personal information is being sent from applications to remote servers.[186]
Technical security features
Android applications run in a sandbox, an isolated area of the system that does not have access to the rest of the system's resources, unless access permissions are explicitly granted by the user when the application is installed. Before installing an application, Play Store displays all required permissions: a game may need to enable vibration or save data to an SD card, for example, but should not need to read SMS messages or access the phonebook. After reviewing these permissions, the user can choose to accept or refuse them, installing the application only if they accept.[187] The sandboxing and permissions system lessens the impact of vulnerabilities and bugs in applications, but developer confusion and limited documentation has resulted in applications routinely requesting unnecessary permissions, reducing its effectiveness.[188] Google has now pushed an update to Android Verify Apps feature, which will now run in background to detect malicious processes and crack them down.[189]
In Android 6.0 Marshmallow, the permissions system was changed to allow the user to control an application's permissions individually, to block applications if desired from having access to the device's contacts, calendar, phone, sensors, SMS, location, microphone and camera.[190] Full permission control is only possible with root access to the device.[191]
Google uses Google Bouncer malware scanner to watch over and scan applications available in the Google Play Store.[192] It is intended to flag suspicious apps and warn users of any potential threat with an application before they download it.[193] Android version 4.2 Jelly Bean was released in 2012, with enhanced security features, including a malware scanner built into the system, which works in combination with Google Play but can scan apps installed from third party sources as well, and an alert system which notifies the user when an app tries to send a premium-rate text message, blocking the message unless the user explicitly authorises it.[194] Several security firms, such as Lookout Mobile Security,[195] AVG Technologies,[196] andMcAfee,[197] have released antivirus software for Android devices. This software is ineffective as sandboxing also applies to such applications, limiting their ability to scan the deeper system for threats.[198][199]
In August 2013, Google released Android Device Manager (ADM), a component that allows users to remotely track, locate, and wipe their Android device through a web interface.[120][200] In December 2013, Google released ADM as an Android application on the Google Play store, where it is available to devices running Android version 2.2 and higher.[201][202]
Licensing
The source code for Android is open-source: it is developed in private by Google, with the source code released publicly when a new version of Android is released. Google publishes most of the code (including network and telephony stacks) under the non-copyleft Apache License version 2.0. which allows modification and redistribution.[203][204] The license does not grant rights to the "Android" trademark, so device manufacturers and wireless carriers have to license it from Google under individual contracts. Associated Linux kernel changes are released under the copyleft GNU General Public License version 2, developed by the Open Handset Alliance, with the source code publicly available at all times. Typically, Google collaborates with a hardware manufacturer to produce a flagship device (part of the Nexus series) featuring the new version of Android, then makes the source code available after that device has been released.[205] The only Android release which was not immediately made available as source code was the tablet-only 3.0Honeycomb release. The reason, according to Andy Rubin in an official Android blog post, was becauseHoneycomb was rushed for production of the Motorola Xoom,[206] and they did not want third parties creating a "really bad user experience" by attempting to put onto smartphones a version of Android intended for tablets.[207]
Only the base Android operating system (including some applications) is open-source software, whereas most Android devices ship with a substantial amount of proprietary software, such as Google Mobile Services, which includes applications such as Google Play Store, Google Search, and Google Play Services – a software layer that provides APIs for the integration with Google-provided services, among others. These applications must be licensed from Google by device makers, and can only be shipped on devices which meet its compatibility guidelines and other requirements.[76][120] Custom, certified distributions of Android produced by manufacturers (such as TouchWiz and HTC Sense) may also replace certain stock Android apps with their own proprietary variants and add additional software not included in the stock Android operating system.[3] There may also be "binary blob" drivers required for certain hardware components in the device.[3][111]
Some stock applications in AOSP code that were formerly used by earlier versions of Android, such as Search, Music, and Calendar, have been abandoned by Google in favor of non-free replacements distributed through Play Store (Google Search, Google Play Music, and Google Calendar) that are no longer open-source. Moreover, open-source variants of some applications also exclude functions that are present in their non-free versions, such as Photosphere panoramas in Camera, and a Google Now page on the default home screen (exclusive to the proprietary version "Google Now Launcher", whose code is embedded within that of the main Google application).[3][208][209][210]
Richard Stallman and the Free Software Foundation have been critical of Android and have recommended the usage of alternatives such as Replicant, because drivers and firmware vital for the proper functioning of Android devices are usually proprietary, and because the Google Play Store application can forcibly install or deinstall applications and, as a result, invite non-free software. although the Free Software Foundation has not found Google to use it for malicious reasons [211][212]
Leverage over manufacturers
Google licenses their Google Mobile Services software, along with Android trademarks, only to hardware manufacturers for devices that meet Google's compatibility standards specified in the Android Compatibility Program document.[213] Thus, forks of Android that make major changes to the operating system itself do not include any of Google's non-free components, stay incompatible with applications that require them, and must ship with an alternative software marketplace in lieu of Google Play Store.[3] Examples of such Android forks are Amazon's Fire OS (which is used on the Kindle Fire line of tablets, and oriented toward Amazon services), the Nokia X Software Platform (a fork used by the Nokia X family, oriented primarily toward Nokiaand Microsoft services), and other forks that exclude Google apps due to the general unavailability of Google services in certain regions (such as China).[214][215] In 2014, Google also began to require that all Android devices which license the Google Mobile Services software display a prominent "Powered by Android" logo on their boot screens.[76]
Members of the Open Handset Alliance, which include the majority of Android OEMs, are also contractually forbidden from producing Android devices based on forks of the OS;[3][216] in 2012, Acer Inc. was forced by Google to halt production on a device powered by Alibaba Group's Aliyun OS with threats of removal from the OHA, as Google deemed the platform to be an incompatible version of Android. Alibaba Group defended the allegations, arguing that the OS was a distinct platform from Android (primarily using HTML5 apps), but incorporated portions of Android's platform to allow backwards compatibility with third-party Android software. Indeed, the devices did ship with an application store which offered Android apps; however, the majority of them were pirated.[217][218][219]
Reception

Android-x86 running on an ASUS EeePC netbook; Android has been unofficially ported to traditional PCs for use as a desktop operating system.
Android received a lukewarm reaction when it was unveiled in 2007. Although analysts were impressed with the respected technology companies that had partnered with Google to form the Open Handset Alliance, it was unclear whether mobile phone manufacturers would be willing to replace their existing operating systems with Android.[220] The idea of an open-source, Linux-based development platform sparked interest,[221] but there were additional worries about Android facing strong competition from established players in the smartphone market, such as Nokia and Microsoft, and rival Linux mobile operating systems that were in development.[222] These established players were skeptical:Nokia was quoted as saying "we don't see this as a threat,"[223] and a member of Microsoft's Windows Mobile team stated "I don't understand the impact that they are going to have."[223]
Since then Android has grown to become the most widely used smartphone operating system[25][224] and "one of the fastest mobile experiences available."[225] Reviewers have highlighted the open-source nature of the operating system as one of its defining strengths, allowing companies such as Nokia (Nokia X family),[226]Amazon (Kindle Fire), Barnes & Noble (Nook), Ouya, Baidu and others to fork the software and release hardware running their own customised version of Android. As a result, it has been described by technology website Ars Technica as "practically the default operating system for launching new hardware" for companies without their own mobile platforms.[25] This openness and flexibility is also present at the level of the end user: Android allows extensive customisation of devices by their owners and apps are freely available from non-Google app stores and third party websites. These have been cited as among the main advantages of Android phones over others.[25][227]
Despite Android's popularity, including an activation rate three times that of iOS, there have been reports that Google has not been able to leverage their other products and web services successfully to turn Android into the money maker that analysts had expected.[228] The Verge suggested that Google is losing control of Android due to the extensive customization and proliferation of non-Google apps and services – Amazon's Kindle Fire line uses Fire OS, a heavily modified fork of Android which does not include or support any of Google's proprietary components, and requires that users obtain software from its competingAmazon Appstore instead of Play Store.[3] In 2014, in an effort to improve prominence of the Android brand, Google began to require that devices featuring its proprietary components display an Android logo on the boot screen.[76]
Android has suffered from "fragmentation",[229] a situation where the variety of Android devices, in terms of both hardware variations and differences in the software running on them, makes the task of developing applications that work consistently across the ecosystem harder than rival platforms such as iOS where hardware and software varies less. For example, according to data from OpenSignal in July 2013, there were 11,868 models of Android device, numerous different screen sizes and eight Android OS versions simultaneously in use, while the large majority of iOS users have upgraded to the latest iteration of that OS.[230] Critics such as Apple Insider have asserted that fragmentation via hardware and software pushed Android's growth through large volumes of low end, budget-priced devices running older versions of Android. They maintain this forces Android developers to write for the "lowest common denominator" to reach as many users as possible, who have too little incentive to make use of the latest hardware or software features only available on a smaller percentage of devices.[231] However, OpenSignal, who develops both Android and iOS apps, concluded that although fragmentation can make development trickier, Android's wider global reach also increases the potential reward.[230]
Market share
Main article: Usage share of operating systems
Research company Canalys estimated in the second quarter of 2009, that Android had a 2.8% share of worldwide smartphone shipments.[232] By the fourth quarter of 2010, this had grown to 33% of the market becoming the top-selling smartphone platform,[233] overtaking Symbian.[234] By the third quarter of 2011,Gartner estimated that more than half (52.5%) of the smartphone sales belonged to Android.[235] By the third quarter of 2012 Android had a 75% share of the global smartphone market according to the research firm IDC.[236]
In July 2011, Google said that 550,000 Android devices were being activated every day,[237] up from 400,000 per day in May,[238] and more than 100 million devices had been activated[239] with 4.4% growth per week.[237] In September 2012, 500 million devices had been activated with 1.3 million activations per day.[240][241] In May 2013, at Google I/O, Sundar Pichai announced that 900 million Android devices had been activated.[242]
Android market share varies by location. In July 2012, "mobile subscribers aged 13+" in the United States using Android were up to 52%,[243] and rose to 90% in China.[244] During the third quarter of 2012, Android's worldwide smartphone shipment market share was 75%,[236] with 750 million devices activated in total. In April 2013 Android had 1.5 million activations per day.[241] As of May 2013, 48 billion applications ("apps") have been installed from the Google Play store,[245] and by September 2013, one billion Android devices have been activated.[246]
As of July 2013, the Google Play store has had over one million Andr

| whaison | Operating System | 14:42 | comments(0) | - | pookmark |