本篇文章给大家谈谈三星i777,以及三星i717刷机的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
文章详情介绍:
56万买_钢铁侠_ 三星S6定制版拍出天价
2015-06-15 10:25:19 作者:刘可昕
中关村在线消息:上周我们报道了三星在京东众筹推出了S6钢铁侠定制版的消息后,近日它又成为了热门话题,因为一台编号为“66”的靓号定制机在京东居然拍出了56万元人民币的天价。
编号“66”拍出56万元天价(图片引自京东)
你愿意花多少钱买一部手机,三、五千?现在有人愿意花56万。此次京东上面三星钢铁侠定制版S6的获得方法之一是通过拍卖拍得,而京东也很聪明地将拍卖的20台手机编号均选为靓号。首日编号为66的手机在经过土豪们的争抢后,最终以56万元落锤。
获得方式之一是通过拍卖(图片引自京东)
编辑点评:相比首日56万元的天价,昨日编号为3的“钢铁侠”则是以5万元拍出,在之后的靓号中还能看到像“777”、“999”、“666”和“888”等数字,而最后一天则是编号“1”,到时不知又会拍出什么样的天价,编辑也不由得感叹一句,土豪的游戏我们真是玩儿不起啊。
flash_image刷机及(PIE) are supported问题解决(IDA反汇编)
前 提:
有root权限
打开手机的USB调式模式
bootloader模式下用fastboot刷机经常不成功:
C:\tmp\fastboot>adb reboot bootloader
C:\tmp\fastboot>fastboot flash boot C:\tmp\gionee-f103_SV16\boot.img
Sending 'boot' (7004 KB) OKAY [ 0.689s]
Writing 'boot' FAILED (remote: 'download for partition 'boot' is not allowed
')
fastboot: error: Command failed
此时可用flash_image命令刷入试试(成功率低)。
将flash_image和将要刷入的boot.img传到手机sdcard目录下:
c:\tmp\fastboot>adb push c:/tmp/fastboot/flash_image11 /sdcard/flash_image
c:/tmp/fastboot/flash_image11: 1 file pushed. 0.2 MB/s (26172 bytes in 0.133s)
C:\tmp\fastboot>adb push C:\tmp\gionee-f103_SV16\boot.img /sdcard
C:\tmp\gionee-f103_SV16\boot.img: 1 fil...hed. 5.6 MB/s (7172096 bytes in 1.220s)
移动flash_image到/system/bin,改变属性和用户组:
1|root@GiONEE_GBL7319:/ # mount -rw -o remount /system
root@GiONEE_GBL7319:/sdcard # mv flash_image /system/bin/
root@GiONEE_GBL7319:/sdcard # chmod 755 /system/bin/flash_image
root@GiONEE_GBL7319:/sdcard # chown root.shell /system/bin/flash_image
root@GiONEE_GBL7319:/sdcard # ls -l /system/bin/fla*
-rwxr-xr-x root shell 26172 2022-02-23 15:00 flash_image
-rwxr-xr-x root shell 13968 2022-02-22 22:43 flash_image22
手机正常开机状态下刷机:
255|root@GiONEE_GBL7319:/sdcard # flash_image boot boot.img
刷recovery用:
255|root@GiONEE_GBL7319:/sdcard # flash_image recovery recovery.img
flash_image刷机时会遇到问题:
only position independent executables (PIE) are supported
root@GiONEE_GBL7319:/sdcard # flash_image boot boot.img
error: only position independent executables (PIE) are supported.
解决方法:
将/system/bin/linker从手机里下载到电脑:
C:\tmp\fastboot>adb pull /system/bin/linker c:/tmp/
/system/bin/linker: 1 file pulled. 5.2 MB/s (86664 bytes in 0.016s)
下载、安装、打开IDA反汇编软件,打开linker - 右键 - 选择“Text View” :
点击 “Text search” - 输入问题描述:
鼠标放在方框位置时会提示调用处的相关汇编命令:
相关内容上双击或右键 - 选择“Jump to Operand” 会跳到调用处:
触发错误信息的相关命令:
先了解几个汇编命令:
CMP: 比较是否相等,相等时置Z标志为0
B: 无条件跳转到它后面的标签
BL: 无条件跳转到它后面的标签,跳转前将PC存入R14
BNE: Z标志位不等于0时,跳转到它后面的标签处
BEQ: Z标志位等于0时,跳转到它后面的标签处
BNE.W: W:word,指操作数大小2个字节,B:byte,一个字节,L:long,4个字节
NOP: 空指令(机器码0X00BF)
CBNZ Rn, label : Rn非零时跳转
CBZ Rn, label : Rn为零时跳转
.text:00002F4C CMP R2, #3
.text:00002F4E BEQ loc_2F60
.text:00002F50 LDR R1, =(aErrorOnlyPosit - 0x2F58) ; "error: only position independent execut"...
.text:00002F52 MOVS R0, #2
.text:00002F54 ADD R1, PC ; "error: only position independent execut"...
.text:00002F56 BL __dl___libc_format_fd
.text:00002F5A MOV R0, R5
.text:00002F5C
.text:00002F5C loc_2F5C ; CODE XREF: __dl___linker_init+230↑j
.text:00002F5C BL __dl_exit
.text:00002F60
.text:00002F60 loc_2F60 ; CODE XREF: __dl___linker_init+38E↑j
.text:00002F60 LDR R1, =(asc_96C7 - 0x2F6C) ; ":"
.text:00002F62 MOV R0, R10
.text:00002F64 LDR R2, =(__dl__ZL18g_ld_library_paths - 0x2F6E)
上面第1行:命令 CMP R2, #3
地址是:0X00002F4C
意思:比较寄存器R2与数字3的大小
上面第2行:命令 BEQ loc_2F60
地址:00002F4E
loc_2F60是下面第12行的标签,地址为0X00002F60
意思:第1行比较结果相等则跳转到标签loc_2F60处继续执行。否则显示错误并中断程序。
我们的目的是无条件跳转到loc_2F60处继续执行,用“B”汇编指令替换“BEQ”。
鼠标点到BEQ上,然后切换到“Hex View - 1" :
将07D0修改为07E0: “E”是跳转指令“B”的机器码编码格式的第28-31位
右击 - 选择“Edit...”:
右击 - 选择“Apply chages”:
Edit - Patch program - Apply Patches to input file... :
修改保存后再上传linker到手机的/system/bin/目录下,修改一下属性.