2015年11月26日 星期四

Brillo Toybox

大概瞄了一下, 突然發現, system/bin/裏面不是裝busybox也不是裝toolbox了.改成用toybox了.
原來AOSP已經改用toybox了, 看起來這轉換的過程也歷經了許多的故事.
有興趣的可以看一下Android gets a toybox.

底下這張圖是brillo裏/system/bin的檔案列表.
.
├── bin
│   ├── acpi -> toybox
│   ├── apmanager
│   ├── applypatch_static
│   ├── audio_hal_playback_test
│   ├── audio_hal_record_test
│   ├── avahi-browse
│   ├── avahi-daemon
│   ├── base64 -> toybox
│   ├── basename -> toybox
│   ├── bdt
│   ├── blockdev -> toybox
│   ├── bluetooth-cli
│   ├── bluetoothtbd
│   ├── bootctl
│   ├── brillo_audio_test
│   ├── bzcat -> toybox
│   ├── cal -> toybox
│   ├── cat -> toybox
│   ├── chcon -> toybox
│   ├── check_prereq
│   ├── chgrp -> toybox
│   ├── chmod -> toybox
│   ├── chown -> toybox
│   ├── chroot -> toybox
│   ├── cjpeg
│   ├── cksum -> toybox
│   ├── clear -> toybox
│   ├── cmp -> toybox
│   ├── comm -> toybox
│   ├── core2md
│   ├── cp -> toybox
│   ├── cpio -> toybox
│   ├── crash_reporter
│   ├── crash_sender
│   ├── curl
│   ├── cut -> toybox
│   ├── date -> toybox
│   ├── dbus-daemon
│   ├── dbus-example-client
│   ├── dbus-example-daemon
│   ├── dbus-send
│   ├── dd -> toolbox
│   ├── df -> toybox
│   ├── dhcpcd
│   ├── dhcpcd-6.8.2
│   ├── dhcptool
│   ├── dirname -> toybox
│   ├── djpeg
│   ├── dmesg -> toybox
│   ├── dnsmasq
│   ├── dos2unix -> toybox
│   ├── du -> toybox
│   ├── echo -> toybox
│   ├── egrep -> grep
│   ├── env -> toybox
│   ├── expand -> toybox
│   ├── expr -> toybox
│   ├── fallocate -> toybox
│   ├── false -> toybox
│   ├── ff_debug
│   ├── fgrep -> grep
│   ├── find -> toybox
│   ├── firewalld
│   ├── flash_image
│   ├── flock -> toybox
│   ├── free -> toybox
│   ├── gdbserver
│   ├── getenforce -> toybox
│   ├── getevent -> toolbox
│   ├── getprop -> toybox
│   ├── grep
│   ├── groups -> toybox
│   ├── head -> toybox
│   ├── hostapd
│   ├── hostapd_cli
│   ├── hostname -> toybox
│   ├── hwclock -> toybox
│   ├── id -> toybox
│   ├── ifconfig -> toybox
│   ├── iftop -> toolbox
│   ├── initnetwork.sh
│   ├── inotifyd -> toybox
│   ├── insmod -> toybox
│   ├── ioctl -> toolbox
│   ├── ionice -> toybox
│   ├── iorenice -> toybox
│   ├── iotop
│   ├── ip
│   ├── ip6tables
│   ├── ip6tables-restore -> ip6tables
│   ├── ip6tables-save -> ip6tables
│   ├── iptables
│   ├── iptables-restore -> iptables
│   ├── iptables-save -> iptables
│   ├── iw
│   ├── keystore
│   ├── keystore_cli
│   ├── keystore_cli_v2
│   ├── kill -> toybox
│   ├── killall -> toybox
│   ├── linker
│   ├── ln -> toybox
│   ├── load_policy -> toybox
│   ├── log -> toolbox
│   ├── logcat
│   ├── logd
│   ├── logname -> toybox
│   ├── logpersist.cat -> logpersist.start
│   ├── logpersist.start
│   ├── logpersist.stop -> logpersist.start
│   ├── losetup -> toybox
│   ├── ls -> toybox
│   ├── lsmod -> toybox
│   ├── lsof -> toybox
│   ├── lsusb -> toybox
│   ├── md5sum -> toybox
│   ├── mediaserver
│   ├── memory_replay32
│   ├── metrics_client
│   ├── metrics_daemon
│   ├── mkdir -> toybox
│   ├── mknod -> toybox
│   ├── mkswap -> toybox
│   ├── mktemp -> toybox
│   ├── modinfo -> toybox
│   ├── more -> toybox
│   ├── mount -> toybox
│   ├── mountpoint -> toybox
│   ├── mv -> toybox
│   ├── nandread -> toolbox
│   ├── nativepowerman
│   ├── netstat -> toybox
│   ├── newfs_msdos -> toolbox
│   ├── nice -> toybox
│   ├── nl -> toybox
│   ├── nohup -> toybox
│   ├── od -> toybox
│   ├── paste -> toybox
│   ├── patch -> toybox
│   ├── periodic_scheduler
│   ├── pgrep -> toybox
│   ├── pidof -> toybox
│   ├── ping
│   ├── pkill -> toybox
│   ├── pmap -> toybox
│   ├── postinst_example
│   ├── power_example
│   ├── printenv -> toybox
│   ├── printf -> toybox
│   ├── prlimit -> toolbox
│   ├── ps -> toolbox
│   ├── pwd -> toybox
│   ├── r
│   ├── readlink -> toybox
│   ├── realpath -> toybox
│   ├── reboot
│   ├── renice -> toybox
│   ├── restorecon -> toybox
│   ├── rm -> toybox
│   ├── rmdir -> toybox
│   ├── rmmod -> toybox
│   ├── rootdev
│   ├── route -> toybox
│   ├── runcon -> toybox
│   ├── sed -> toybox
│   ├── sendevent -> toolbox
│   ├── sensorservice
│   ├── sensors-hal-example-app
│   ├── sensors-ndk-example-app
│   ├── seq -> toybox
│   ├── servicemanager
│   ├── setenforce -> toybox
│   ├── setprop -> toybox
│   ├── setsid -> toybox
│   ├── sh
│   ├── sha1sum -> toybox
│   ├── shill
│   ├── showlease
│   ├── sleep -> toybox
│   ├── slesTest_playFdPath
│   ├── slesTest_recBuffQueue
│   ├── slesTest_sawtoothBufferQueue
│   ├── sort -> toybox
│   ├── split -> toybox
│   ├── start -> toolbox
│   ├── stat -> toybox
│   ├── stop -> toolbox
│   ├── strings -> toybox
│   ├── swapoff -> toybox
│   ├── swapon -> toybox
│   ├── sync -> toybox
│   ├── sysctl -> toybox
│   ├── tac -> toybox
│   ├── tail -> toybox
│   ├── tar -> toybox
│   ├── taskset -> toybox
│   ├── tee -> toybox
│   ├── time -> toybox
│   ├── timeout -> toybox
│   ├── tlsdate
│   ├── tlsdated
│   ├── tlsdate-helper
│   ├── toolbox
│   ├── top -> toolbox
│   ├── touch -> toybox
│   ├── toybox
│   ├── tr -> toybox
│   ├── tracepath
│   ├── tracepath6
│   ├── traceroute6
│   ├── true -> toybox
│   ├── truncate -> toybox
│   ├── tty -> toybox
│   ├── umount -> toybox
│   ├── uname -> toybox
│   ├── uniq -> toybox
│   ├── unix2dos -> toybox
│   ├── update_engine
│   ├── update_engine_client
│   ├── updater
│   ├── uptime -> toybox
│   ├── usleep -> toybox
│   ├── vmstat -> toybox
│   ├── wc -> toybox
│   ├── weaved
│   ├── webservd
│   ├── which -> toybox
│   ├── whoami -> toybox
│   ├── wifi_init
│   ├── wpa_cli
│   ├── wpa_debug
│   ├── wpa_supplicant
│   ├── xargs -> toybox
│   ├── xxd -> toybox
│   └── yes -> toybox

沒有留言:

一個小故事讓我們明白資金流通的意義

“又是炎熱小鎮慵懶的一天。太陽高掛,街道無人,每個人都債台高築,靠信用度日。這時,從外地來了一位有錢的旅客,他進了一家旅館,拿出一張1000 元鈔票放在櫃檯,說想先看看房間,挑一間合適的過夜,就在此人上樓的時候---- 店主抓了這張1000 元鈔,跑到隔壁屠戶那裡支付了他欠的肉錢...