其他的93ttl计算机考试分几个等级进口,都试过了wwW93ttlcom还是没能登上。

<div id="click_content_aid_
<div id="favrite_content_aid_
网件R6300 V2路由器评测之五:能做NAS能超频,即使变砖也能救
网件R6300 V2路由器评测之五:能做NAS能超频,即使变砖也能救
16:15&&|&&作者:
&&|&&关键字:,,,,,
R6300 V2路由器超频教程以R6300 V2路由器的散热能力来说,我们其实并不推荐玩家对路由器的CPU进行超频,不过在玩家群中确实有不少同学会尝试提升R6300
V2的处理器主频,希望藉此让路由器的性能得到提升。笔者的一名朋友就将自用的R6300
V2超频至处理器主频1GHz、内存频率800MHz,运行稳定而且温度也没有没有变化,USB接口的性能理论上会有所提升,就是日常使用中很难体验到。有这方面需要的朋友可以在R6300
V2上运行以下命令,提升路由器CPU和内存的频率。R6300 V2处理器超频到1GHz,内存超频至800MHz:nvram set clkfreq=nvram commit && rebootR6300 V2恢复处理器800MHz,内存533MHz:nvram set clkfreq=800,533nvram commit && reboot再次一提的是,R6300
V2的处理器虽然有一定的超频潜力,但毕竟每一个路由器的体质是不同的,倒在了超频下的小伙伴不在少数。非要对路由器进行超频的玩家,我们在这里建议采用步进式超频,虽然一般而言R6300
V2的CPU稳定运行在1.2G主频下应该不成问题。自己动手救活变砖路由如果在超频过程中出现了问题,玩家可以使用TFTP进行CHK恢复,但是前提必须是可以连接路由器并且TTL=100。由于R6300
V2没有可供用户使用的工厂恢复模式,如果出现了路由器可以开机但是无法连接(现象为电源灯常亮,其它灯不亮)的情形时,对于多数玩家来说返厂就是唯一的选择了,因此各位玩家要充分认识在执行危险命令和操作时的风险。不过如果各位玩家对自己的动手能力有信心的话,实际上我们也可以使用USB-TTL连接线搭配PuTTY软件来救活TFTP无法链接的路由器。在这里我们简单说一下步骤,
以下教程适用于R7000、R6300 V2、R6250(R6300 V1不适用)。首先我们需要以下设备:- FTDI TTL-232R-3V3连接线- Windows端的PuTTY软件- TFTP客户端(Windows 7系统可在程序中开启)- 原厂CHK固件,R6300 V2为R.0.0.8_1.0.4PRRU.chk具体修复步骤如下,以R6300 V2路由器为例:首先拆开R6300 V2路由器找到PCB板正面的“J252”区域J252区域有四根针脚,从右至左的前三根依次为TX、RX和GND,这也是修复R6300 V2需要用到的三根针脚。将FTDI TTL连接器连接至J252区的以上三个针脚中,顺序为:GND-GND、TX-RX、RX-TX注意,上图这种TTL USB连接器是错误的,一定是要232R 3V3的才行,但是接线位是一样的在计算机的设备管理器中检查FTDI TTL的COM端口,并设置为”115200“,数据位”8“,停止”1“打开PuTTY,按照上图进行设置之后回到PuTTY的主页面,选择连接方式为Serial并填入相对的COM端口,传输速率会自动变成之前设置好的。运行PuTTY,在路由器未通电开启之前,PuTTY窗口为上图源于Kongac的Linux下minicom界面这时给路由器通电,并链接LAN端口,这时可以看到PuTTY开始初始化路由,一大堆指向BCM芯片的命名开始写入,接着使用Ctrl+C中断命令后,光标会停在CFE恢复模式接口。随后我们可以使用CMD的CD命令定位CHK文件的所在目录,并执行以下命名上传至路由器,命令如下:tftp -i 192.168.1.1 PUT R.0.0.8_1.0.4PRRU.chk至此路由器满血复活!正如我前面所说的,任何第三方对路由器固件的刷写都有可能带来路由器的不稳定,笔者在刷写DD固件时就曾经让路由其变砖。但是这时我们往往也不用太过于担心,一般来说我们有两种修复路由器的方法,一个是TFTP恢复,使用TFTP恢复的前提是路由器可以Ping通,并且TTL=100,这时使用TFTP服务器上传恢复固件即可,修复比较简单,基本无难度,适合比较简单的问题。另一种方法就是上文所提到的Debrick修复,通过强制CFE模式后再利用TFTP写入恢复固件,适合无法Ping通,但是可以正常通电的路由。当然我们这里只是提供一个修复和维护路由器的方法,虽然我们并不推荐没有经验的玩家随意刷写路由器的固件,但如此Geek的产品不把玩一下实属可惜,因此在这之前各位玩家也应该做到对出现的各种问题心中有数,并做好修复准备。
1.3.2.超频变砖不用怕,自己动手修复路由
本文读者还喜欢
高级设置里可以改发射功率
已有7次举报
(你可匿名或登录后发表评论。没有帐号可,或使用和直接登录)
上了发条的猫
扫一扫右边的二维码
关注超能网微信账号
酷冷至尊天猫店开张~
2000元价位手机该如何选?
1000元买哪部手机?
现在市面上有哪些智能音箱可选?[使用讨论]
华为悦盒免TTL免拆机破解教程(更新)
参加活动:0 次组织活动:0 次
马上注册旮旯网,结交更多好友,享用免费开店,轻松玩转旮旯网。
才可以下载或查看,没有帐号?
本教程已过时,请勿再用
最近不少朋友说山东联通版的合约IPTV没法破解,现发布破解教程,感谢淄博龙门教育的程老师提供盒子测试。
刷机有风险,进行需谨慎,如因以下操作造成损失作者不负责任,变砖了你可以拿来我给你刷回去,或者自己进入REC模式选择恢复
硬件版本:EC6108V8U
因为没有其他机器测试,所以大家刷机前请首先确认版本:(有其他版本的朋友请提供固件)
发布版本为&HMT V100R003C30LSDL01B011&,硬件版本为&EC6108V8U_pub_sdllt&,系统版本:Android 4.2.2(感谢程老师).
发布版本为&HMT V100R003C30LSDL01&,硬件版本为&EC6108V8U_pub_sdllt&,系统版本:Android 4.2.2(感谢诗萧默提供测试).
并且你的HDMI线不是转接成DVI或者VGA的,不然有个地方你需要摸黑操作。
1 找一个U盘,格式化成FAT32格式,把压缩包Alpha_script.zip的文件解压放在U盘根目录(打开U盘就能看到rootv9a.sh,rootv9.sh,Alpha_script.sh,root目录).
2 将U盘插入网线旁边的USB口,进入机顶盒,点遥控器左上角&设置&--&更多&,往下选&高级设置&,这个时候会要求输入操作码&10010&,然后&确定&,然后点选&装备测试&,这个时候要求输入密码&131022&,&重启进入生产测试&
3 重启进入联通Logo的界面(如果你的是如下图1这样的界面,那不支持这种方法破解,只能用TTL线破解,继续下面第45步恢复正常启动),程序在后台运行,这个要等会,估计不会超过1分钟,程序执行完了也会是那个界面,所以你不用等屏幕,一分钟后按电源键关机,拔掉U盘
4 开机机顶盒的同时遥控器对准机顶盒,不停的按&遥控器&的&关机&键(右上角的按钮),大概半分钟后,会出现&1. Apply update from external storage&的页面,(那些用HDMI转DVI线的同学:如果屏幕一直是黑屏,那说明你成功了,可以继续下面的操作,如果出现联通LOGO说明进入rec模式失败,需要重复开机按遥控器操作)
5 黑屏的同学,按遥控器的&下&键,多按几次,一定要大于6次,为了保险起见按10多次也没事,然后按中间的&确定&.能看到REC模式界面的同学,选择&6 reboot&重启就可以了.等待重启,就有root和RE管理器了.
硬件版本:EC6108V9A 带装备测试模式
发布版本:&HMT V100R003C60LSDL01&,软件版本:B014,硬件版本:&EC6108V9A_pub_sdllt&,系统版本:Android 4.4.4(感谢英年早胖君,Lee提供盒子提取固件和测试,感谢jcwpbb反馈问题,压缩包已经在日10:56:12更新,不靠谱的记事本).
1 找一个U盘,格式化成FAT32格式,把压缩包Alpha_script.zip的文件解压放在U盘根目录(打开U盘就能看到rootv9a.sh,rootv9.sh,Alpha_script.sh,root目录).
2 插入网线(一定要用网线,无线不办事),插入做好的U盘,进入机顶盒,点遥控器左上角&设置&--&更多&,往下选&高级设置&,这个时候会要求输入操作码&10010&,然后&确定&,然后点选&装备测试&,这个时候要求输入密码&131022&,&重启进入生产测试&
3 重启进入彩条的界面,用网线连接盒子和电脑,设置电脑ip为172.16.20.2,然后在电脑上执行telnet 172.16.20.14 (有些电脑上可能没有telnet,那就下载个,打开选择telnet,填上ip,点open就可以了).进入后,会看到提示符&root@rk312x:/ #&
在下面依次执行(一行一个命令,注意要有其中的空格),如果出现&Device or resource busy&或者&No such file or directory&的提示可以忽略
mkdir -p /tmp/udisk
mount -t vfat /dev/block/sda1 /tmp/udisk
mount -t vfat /dev/block/sda /tmp/udisk
mount -t vfat /dev/block/sda4 /tmp/udisk
/tmp/udisk/rootv9a.sh复制代码
盒子会自动重启。
4 如果没有自动重启,就手动关机重启,等待重启后,就有root和RE管理器了.
硬件版本:EC6108V9A 不带装备测试模式
感谢匆匆哥提供盒子测试。
1 准备一条双公头的USB线,U盘,网线,非win10系统,如果你是Linux请加群单独联系我
2 下在附件包v9a-loader-dev-tool.zip解压,安装DriverAssitant_v4.2 loader模式驱动,运行 AndroidTool_Release_v2.35
盒子不要插电源,直接连电脑的usb插靠近音频口的usb口,在插上的同时,不断按遥控器的home键。
直到如图(在压缩包里),发现一个loader设备,点执行,然后重启就进装备测试模式了,彩条的界面(请勿乱操作其他,可能会变砖).
3 找一个U盘,格式化成FAT32格式,把Alpha_script.zip的文件解压放在U盘根目录(打开U盘就能看到rootv9a.sh,rootv9.sh,Alpha_script.sh,root目录).
4 网线连接盒子和电脑,设置电脑ip为172.16.20.2,然后在电脑上执行putty -telnet 172.16.20.14 (下载,打开选择telnet,填上ip,点open就可以了).进入后,会看到提示符&root@rk312x:/ #&
在下面依次执行(一行一个命令,注意要有其中的空格)如果出现&Device or resource busy&或者&No such file or directory&的提示可以忽略
mkdir -p /tmp/udisk
mount -t vfat /dev/block/sda1 /tmp/udisk
mount -t vfat /dev/block/sda /tmp/udisk
mount -t vfat /dev/block/sda4 /tmp/udisk
/tmp/udisk/rootv9a.sh复制代码
如果成功,盒子会自动重启。
5 如果没有自动重启,就手动关机重启,等待重启后,就有root和RE管理器了.
硬件版本:EC6108V9 EC6108V9U 本平台未做严格测试,如有问题请进群4081100反馈,也可以用下面&V9/V9U不带装备测试模式&的方法
感谢鹏鹏的某无名朋友提供盒子测试。
感谢&想想那是不可能的了&提供测试平台。
1 找一个U盘,格式化成FAT32格式,把压缩包Alpha_script.zip的文件解压放在U盘根目录(打开U盘就能看到rootv9a.sh,rootv9.sh,Alpha_script.sh,root目录).
2 插入网线(一定要用网线,无线不办事),插入做好的U盘,进入机顶盒,点遥控器左上角&设置&--&更多&,往下选&高级设置&,这个时候会要求输入操作码,移动版本为&10086&,电信版本为&10000&,联通版本为&10010&,然后&确定&,然后点选&装备测试&,这个时候要求输入密码&131022&,&重启进入生产测试&
3 重启后会黑屏,拿网线连接盒子和电脑,设置电脑ip为192.168.1.2,然后在电脑上执行telnet 192.168.1.1 (有些电脑上可能没有telnet,那就下载个,打开选择telnet,填上ip,点open就可以了).用户名是root 密码是空,进入后会看到提示符&Welcome to HiLinux.
在下面依次执行(一行一个命令,注意要有其中的空格)如果出现&Device or resource busy&或者&No such file or directory&的提示可以忽略
mkdir -p /tmp/udisk
mount -t vfat /dev/sda1 /tmp/udisk
mount -t vfat /dev/sda /tmp/udisk
mount -t vfat /dev/sda4 /tmp/udisk
/tmp/udisk/rootv9.sh复制代码
盒子会自动重启。
4 如果没有自动重启,就手动关机重启,等待重启后,按Home键(多按几次)就能看到沙发桌面了。
硬件版本:EC6108V9A 已经root过,现在山东联通 B014升级到B019
!!!其他省的朋友请用自己本省的升级包升级!!!
1 找一个U盘,格式化成FAT32格式,把压缩包huawei-sdllt-B014toB019-update.tar的文件解压放在U盘根目录(打开U盘就能看到upgrade目录).
2 进入REC模式(开机同时狂按遥控器待机键)选择2,等待完成再次进入REC,选1(顺序不能错,先选2后选1)
3 此时你的系统已经B019,然后按照EC6108V9A通用破解过程再来过就可以了.
硬件版本:EC6108V9 EC6108V9U 不带装备测试模式 部分地区不完美破解,开了iptv后想再进第三方桌面需重启,如有问题请进群4081100反馈
感谢鹏鹏的某无名朋友提供盒子测试。
感谢&想想那是不可能的了&提供测试平台。
1 找一个U盘,格式化成FAT32格式,把压缩包update.zip文件在U盘根目录(zip文件不解压).
2 插上U盘,开机不停按遥控器&待机&键,进入REC模式后,选择1,等待完成后.
3 等待重启后,按Home键(多按几次,如果你的没有锁Home,如果不能就重启一下)就能看到沙发桌面了。
从stbconfig.db中找回密码,适合忘记IPTV明文密码(或者运营商压根没给你)的用户 仅供自己找回明文密码,严禁用于非法用途,造成的后果与作者无关.如有问题请进群4081100反馈
仅作技术思路指导,不提供工具,相关软件大家自己找吧
1 stbconfig.db是个sqlite3文件,你可以用&SQLite Expert Personal&打开,不过我们也可以用记事本打开,然后Ctrl+F搜索&=password&,后面一直到三个方框前面的字符都是加密后的密码,类似&AqTynOradE76+b6FISqoyQ==&这种格式.
2 安装jdk环境,下载dex2jar,从盒子/system/app下复制出settting.apk
4 新建java文件 a.java内容如下import com.huawei.iptv.security.arithmetics.AES;
import java.io.PrintS
public class a
{
& & public static void main(String[] args)
& & {
& && &&&AES aes = new AES();
& && &&&System.out.println(aes.decrypt(&这里写你从sqlite数据库中找到的密码,如AqTynOradE76+b6FISqoyQ==&));
& & }
}复制代码
3 运行以下命令dex2jar\d2j-dex2jar -f Settting.apk -o Settting.apk.jar
javac -classpath .;Settings.apk.jar a.java
java -classpath .;Settings.apk.jar a复制代码
然后你就可以看到明文密码了
1、破解后,启用adb shell的步骤.(现在破解后默认应该已经开启了adbd)
打开Root Explorer,找到/sbin/adbd,打开方式选择&Linux脚本处理器&--选择&执行&(如果请求root权限的,选&允许&,这个会提示一直在执行,不用理),--遥控器&设置&,--在&网络设置&里面找到你的ip,然后&返回&---&更多&---&远程维护连接&,改成&允许&
然后就可以用adb connect ip 进行链接了
2、EC6108V8U/V9的同学,装备测试模式会进入HiLinux,V8U ip是192.168.1.99,V9 ip是192.168.1.1,开放了telnetd服务,root登录密码是空。
开启FTPd的命令是tcpsvd -vE 0.0.0.0 21 ftpd -w /复制代码
/dev/mmcblk0p14是system分区, /dev/mmcblk0p12是REC模式的备份分区(不建议乱动,不然弄坏了system,kernel就不好恢复回去了)
3、EC6108V9A的同学,装备测试模式会进入rk312x,ip是172.16.20.14,开放了telnetd服务,不需要用户名和密码.山东联通B019版本还开启了adbd.
4、退出装备测试模式的方法是:开机的同时,狂按遥控“待机”键,直到出现Recovery界面(选择1-6的界面),选择6 reboot就可以了
5、用HDMI转DVI线的可能会黑屏,等盒子启动起来插拔一下就可以。
6、运行SuperSU会提示是否更新二进制文件,选择否
7、修改网卡MAC的方法(非无线网卡)比如你的网卡MAC想修改为54:93:59:26:DD:E0(这个是有限制的,不是随意改,不明白的不要乱改)进adb shell或者装备测试模式的shell下执行
EC6108V8 EC6108V8U EC6108V9 EC6108V9Uecho -ne &\x54\x93\x59\x26\xDD\xE0& | dd of=/dev/mmcblk0p4 bs=1 seek=$((0x24)) conv= sync复制代码
EC6108V9Aecho -ne &\x54\x93\x59\x26\xDD\xE0& | dd of=/dev/block/platform/.rksdmmc/by-name/deviceinfo bs=1 seek=$((0x24)) conv= sync复制代码
8、高级设置操作码EC6108x系列高级设置操作码可能有这些:&10000&,&10010&,&10086&,&8288&,&2878&
文章没配图,凑活看吧,有问题加我QQ群4081100说
(17.61 MB, 下载次数: 408924)
01:53 PM 上传
点击文件名下载附件
(10.8 MB, 下载次数: 236494)
01:18 PM 上传
点击文件名下载附件
(18.56 MB, 下载次数: 55226)
06:02 AM 上传
点击文件名下载附件
(17.58 MB, 下载次数: 98164)
05:14 PM 上传
点击文件名下载附件
Alpha_script.zip更新日志:
添加EC6108V9 EC6108V9U 不带装备测试模式方法
修正V9的几个错误(感谢&想想那是不可能的了&提供测试平台)
修正因沙发管家跟adbd冲突,默认改用当贝市场
添加山东联通v9a B014-&B019 升级方案
改进v9a修改MAC因busybox sed 忽略NUL字符造成修改失败的问题
修正rootv9.sh的一个错误
添加ECU支持,v9和v9a默认开启adbd
更新没有装备测试模式方法
本帖评分记录发贴积分
总评分:&发贴积分 + 2&
参加活动:0 次组织活动:0 次
本帖最后由 ianhunter 于
02:58 PM 编辑
感谢楼主,已按照教程成功破解
我的版本是:HMT V100R003C60LSDL01 B019,上个月刚拿回来,开机默认版本就是B019了。
顺便提醒各位同学:近期联通发布更新,更新后版本为:HMT V100R003C60LSDL02 B013
更新后就没有装备测试模式了,更新后就没有装备测试模式了,更新后就没有装备测试模式了。(重说三)
此更新无法取消,一开机即开始检测,进入直播界面后就提示安装更新,只有一个安装按钮可选,无法通过遥控机取消,只能安装。
我是按照楼主的教程先恢复到SDL01 B014版本,然后升级到B019版,再破解的,完美破解,再次感谢楼主。
另外,问楼主个问题,我破解后安装了电视猫,老婆看《芈月传》总是音画不同步,本以为是源的问题,换其他视频试了试一切正常,看直播也正常,高清的也没问题。但是换回原来的老盒子看《芈月传》就一切正常,老盒子是杰科的R1,双核CPU,按说性能上应该不如华为悦盒吧?怎么会出现这种情况呢?
参加活动:0 次组织活动:0 次
版本一致!已经搞定了谢谢啊,那个rootv9a.sh在我的电脑不能运行,转个格式搞定,谢谢啊
感谢,,,压缩包已更新
参加活动:0 次组织活动:0 次
老大,破解了有什么用处啊
参加活动:2 次组织活动:0 次
刷机我基本不自己弄 弄黑过
参加活动:0 次组织活动:0 次
能把转换后的格式分享一下吗?
重新下载就可以了,已经更新压缩包
参加活动:0 次组织活动:0 次
root@rk312x:/ # mkdir -p /tmp/udisk
root@rk312x:/ # mount -t vfat /dev/block/sda1 /tmp/udisk
root@rk312x:/ # /tmp/udisk/rootv9a.sh
参加活动:0 次组织活动:0 次
参加活动:0 次组织活动:0 次
本帖最后由 zzj1986 于
11:13 AM 编辑
V9Aroot成功 膜拜楼主 软件也安装好了
参加活动:0 次组织活动:0 次
本帖最后由 mountainboy 于
06:09 PM 编辑
我按照说明破解成功了,可是打开沙发管家和安装的泰捷视频,都不能正常连接网络,打开系统自带的IPTV正常。不知怎么回事。我是用的网线直连的方式,上网方式为DHCP
参加活动:0 次组织活动:0 次
9a版,mount 这句找不到文件
参加活动:0 次组织活动:0 次
刷机我基本不自己弄 弄黑过
安卓基本刷不死,有TTL或者USB就行
参加活动:0 次组织活动:0 次
这个有什么用,不大明白
参加活动:0 次组织活动:0 次
技术贴 学习了 还想问一下 刷了 能多出什么功能来
参加活动:0 次组织活动:0 次
随便找个adb程序就行?
参加活动:0 次组织活动:0 次
随便找个adb程序就行?
adb不都是google发布的那个吗?
参加活动:0 次组织活动:0 次
能进rec。但是没有root和re管理器
参加活动:0 次组织活动:0 次
版本不一样,v9a
参加活动:0 次组织活动:0 次
参加活动:0 次组织活动:0 次
膜拜技术帝!
参加活动:1 次组织活动:0 次
我已经成功的刷坏了
参加活动:0 次组织活动:0 次
我已经成功的刷坏了
刷不坏,拿来我看下
参加活动:1 次组织活动:0 次
刷不坏,拿来我看下
你在哪啊……
参加活动:0 次组织活动:0 次
你在哪啊……
参加活动:1 次组织活动:0 次
QQ短你了……
参加活动:0 次组织活动:0 次
哎呀,不敢试啊 万一废了呢
参加活动:0 次组织活动:0 次
6108v9a能破解么
参加活动:0 次组织活动:0 次
6108v9a能破解么
没固件研究,你给我固件呗
参加活动:0 次组织活动:0 次
没固件研究,你给我固件呗
固件怎么提取啊
参加活动:0 次组织活动:0 次
重启了&&还是没有re
参加活动:0 次组织活动:0 次
版本不一样,v9a
已经更新了
参加活动:0 次组织活动:0 次
6108v9a能破解么
参加活动:0 次组织活动:0 次
谢谢大神,大神辛苦,回家试一下
参加活动:0 次组织活动:0 次
楼主真正是的好人,技术一流。
参加活动:0 次组织活动:0 次
第三行命令时出现错误: /system/bin/sh: /tmp/udisk/rootv9a.sh: No such file or directory,咋弄啊
参加活动:0 次组织活动:0 次
谢谢啊 进行不下去了
参加活动:0 次组织活动:0 次
谢谢啊 进行不下去了
版本确认一致?
参加活动:0 次组织活动:0 次
版本一致!已经搞定了谢谢啊,那个rootv9a.sh在我的电脑不能运行,转个格式搞定,谢谢啊
参加活动:0 次组织活动:0 次
版本一致!已经搞定了谢谢啊,那个rootv9a.sh在我的电脑不能运行,转个格式搞定,谢谢啊
能把转换后的格式分享一下吗?
使用 (可批量传图、插入视频等)快速回复TTL与MOS集成电路的优缺点, 以及各项评判的标准_百度知道
TTL与MOS集成电路的优缺点, 以及各项评判的标准
我有更好的答案
TTL的意思是transistor-transistor logic,是用BJT和电阻来实现的逻辑电路。首先,BJT的最大优点就是响应速度快,通常传输延时在5~10ns,这是因为BJT是电流放大,晶体管工作受寄生电容的影响非常小,因此对于很多高速逻辑运算的应用非常适合;其次,另外由于TTL的输入输出信号是电流,因此其接口电路非常简单,不需要过分考虑电平匹配的问题;最后,BJT器件的ESD性能远远好于CMOS。TTL的缺点,首先是芯片面积,相比起CMOS工艺,单个器件的尺寸会达到几倍甚至十几倍以上,这就限制了芯片的集成度;其次是功耗,BJT工作是有静态功耗的。CMOS电路是互补型金属氧化物场效应管电路,它的物理模型是一个跨导(gm),也就是说输入信号是电压,输出信号是电流,因此CMOS逻辑电路的静态功耗几乎为零,它的功耗主要来自动态功耗,也就是各个逻辑门翻转时产生的动态电流,以及输入电压翻转时,对寄生的输入电容充放电的动态电流;CMOS逻辑电路不需要电阻,集成度能够轻松达到百万,千万门级。CMOS的缺点是ESD性能比较差,还需要专门的接口电路。但是总体来说,CMOS在集成度方面的优势太大,现在基本只有74这种简单的分立逻辑芯片还在用TTL,其他除非特殊应用,都会采用CMOS来完成。
采纳率:86%
为您推荐:
其他类似问题
ttl的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Posts - 90,
Articles - 15,
Comments - 531
19:24 by 熬夜的虫子, ... 阅读,
源码已放出&
本章分3部分
一、安装部署初探
三、api相关
安装 部署 初探
一. 安装部署
  下载 rabbitMQ :
  安装rabbitmq需要erlang,下载erlang:
  按照官网按照步骤,例如windows&&
  安装完rabbitMQ可以再启动插件扩展,其中包含了一个管理后台
  最新版本的后台地址为&&
  用户名和密码都为guest,输入完成进入主菜单
  功能很丰富,可以查看当前服务器的交换机,队列,消息,连接,会话等得使用情况。
  基本上到这里服务器的安装部署环节算是ok,很简单。
  要了解rabbitMQ 首先要了解AMQP协议 百科上给的很详细&
  AMQP 有四个非常重要的概念:虚拟机(virtual host),通道(exchange),队列(queue)和绑定(binding)。
  虚拟机: 通常是应用的外在边界,我们可以为不同的虚拟机分配访问权限。虚拟机可持有多个交换机、队列和绑定。  交换机: 从连接通道(Channel)接收消息,并按照特定的路由规则发送给队列。  队列: 消息最终的存储容器,直到消费客户端(Consumer)将其取走。  绑定: 也就是所谓的路由规则,告诉交换机将何种类型的消息发送到某个队列中。
  这个概念很重要 不然在学习rabbitmq的地方会碰到很多困难。想要进阶学习的可以参考&
  借用官方一个图来阐述AMQP
  RabbitMQ是一个消息代理。它的核心原理非常简单:接收和发送消息。
  你可以把它想像成一个邮局:你把信件放入邮箱,邮递员就会把信件投递到你的收件人处。在这个比喻中,RabbitMQ是一个邮箱、邮局、邮递员。RabbitMQ和邮局的主要区别是,它处理的不是纸,而是接收、存储和发送二进制的数据&&消息。
  对于rabbitMQ本身的特点 参考官网&
  1、可靠性(Reliability)
  RabbitMQ提供很多特性供我们可以在性能和可靠性作出折中的选择,包括持久化、发送确认、发布者确认和高可用性等。
  2、弹性选路(Flexible Routing)
  消息在到达队列前通过交换(exchanges)来被选路。RabbitMQ为典型的选路逻辑设计了几个内置的交换类型。对于更加复杂的选路,我们可以将exchanges绑定在一起或者写属于自己的exchange类型插件。
  3、集群化(Clustering)
  在一个局域网内的几个RabbitMQ服务器可以集群起来,组成一个逻辑的代理人。
  4、联盟(Federation)
  对于那些需要比集群更加松散和非可靠连接的服务器来说,RabbitMQ提供一个联盟模型(Federation Model)
  5、高可用队列(High Available Queue)
  可以在一个集群里的几个机器里对队列做镜像,确保即时发生了硬件失效,你的消息也是安全的。
  6、多客户端(Many Clients)
  有各种语言的RabbitMQ客户端
  7、管理UI(Management UI)
  RabbitMQ提供一个易用的管理UI来监控和控制消息代理人的各个方面。
  8、跟踪(Tracing)
  如果你的消息系统行为异常,RabbitMQ提供跟踪支持来找出错误的根源。
  9、插件系统(Plugin System)
  RabbitMQ提供各种方式的插件扩展,我们可以实现自己的插件。
  使用任务队列一个优点是能够轻易地并行处理任务。当处理大量积压的任务,只要增加工作队列,通过这个方式,能够实现轻易的缩放。
  文中的winform所采取的client为官方的.net版本&
  首先是Connection和Channel的概念
  Connection 建立与rabbitmq server的一个连接,由ConnectionFactory创建,Channel建立在connection基础上的一个频道,相对于connection来说,它是轻量级的。可以理解成一次会话。
  代码示例 本机环境
using (IConnection connection = factory.CreateConnection())
using (IModel channel = connection.CreateModel())
//do something
  exchange常用有三种类型:
  Direct :处理路由键。需要将一个队列绑定到交换机上,要求该消息与一个特定的路由键完全匹配。这是一个完整的匹配。  Fanout :不处理路由键。你只需要简单的将队列绑定到交换机上。一个发送到交换机的消息都会被转发到与该交换机绑定的所有队列上。  Topic : 将路由键和某模式进行匹配。此时队列需要绑定要一个模式上。符号&#&匹配一个或多个词,符号&*&匹配不多不少一个词。
  还有一种多重属性的类型headers,我们在下一章节讨论。
  我们用winform分别造成三种类型的exchange来实际体验一下
  这里所谓的限定exchange是在我们安装rabbitmq server的时候自动生成的一些 我们的测试不使用这些exchange。
  然后我们新建3个Queue,这里我们会发现一个有趣的现象,rabbitmq server对于新生成的队列都会默认绑定在一个名称为&&的默认exchange上。
  先试试direct类型,下面我们分别把Q1,Q2,Q3根据路由key为空,k1,k.#绑定在dEx上(direct exchange)。    
  然后我们根据路由key为空,k,k1,k2,k3来发送消息m1,m2,m3,m4,m5    
  再用3个队列接收消息试一下结果  
  因为发送确认标记ack,所以队列上读取过的消息会被删除,为了进一步认证,我在结尾又添加了一个routingkey为k.#的消息(对应绑定Q3),由图可见direct 模式下队列之收取他们完全对应的routingkey消息。
  下面我们再试一下fanout类型,把Q1,Q2,Q3根据路由key为空,k1,k.#绑定在fEx上(fanout exchange)。
    同上步骤建立绑定关系
  生产消息,然后看下队列接受消息的情况  
  效果很明显,fanout为广播模式。
  再试试topic类型 把Q1,Q2,Q3根据路由key为空,k1,k.#绑定在tEx上(topic exchange)。
  推送消息  
  接收消息    通过3种模式 3个队列的消息读取 大家应该了解了这3中模式的区别。
一. &exchange属性
  前一章我们说了exchange的类型分为fanout,direct,topic.还有一种不常用的headers。  headers这种类型的exchange绑定的时候会忽略掉routingkey,Headers是一个键值对,可以定义成成字典等。发送者在发送的时候定义一些键值对,接收者也可以再绑定时候传入一些键值对,两者匹配的话,则对应的队列就可以收到消息。匹配有两种方式all和any。这两种方式是在接收端必须要用键值"x-mactch"来定义。all代表定义的多个键值对都要满足,而any则代码只要满足一个就可以了。之前的几种exchange的routingKey都需要要字符串形式的,而headers exchange则没有这个要求,因为键值对的值可以是任何类型  举个例子,发送端定义2个键值{k1,1},{k2,2},接收端绑定队列的时候定义{"x-match", "any"},那么接收端的键值属性里只要存在{k1,1}或{k2,2}都可以获取到消息。  这样的类型扩展的程度很大,适合非常复杂的业务场景。
  Durability
  持久性,这是exchange的可选属性,如果你Durability设置为false,那些当前会话结束的时候,该exchange也会被销毁。   新建一个transient exchange     关闭当前连接再查看一下  
  刚才我们新建的transient已经销毁了。
  Auto delete
  当没有队列或者其他exchange绑定到此exchange的时候,该exchange被销毁。这个很简单就不示例了。
  Internal&(比较简单 也不展示了)
  表示这个exchange不可以被client用来推送消息,仅用来进行exchange和exchange之间的绑定。
  PS: 无法声明2个名称相同 但是类型却不同的exchange
二. &Queue属性  
  Durability&和exchange相同,未持久化的队列,服务重启后销毁。
  Auto delete&当没有消费者连接到该队列的时候,队列自动销毁。
  Exclusive&使队列成为私有队列,只有当前应用程序可用,当你需要限制队列只有一个消费者,这是很有用的。
  扩展属性如下对应源程序&RabbitMQ.Client.IModel.QueueDeclare(string, bool, bool, bool, System.Collections.Generic.IDictionary&string,object&)最后的参数
  Message TTL&当一个消息被推送在该队列的时候 可以存在的时间 单位为ms,(对应扩展参数argument&"" )
  Auto expire&在队列自动删除之前可以保留多长时间(对应扩展参数argument&"")
  Max length&一个队列可以容纳的已准备消息的数量(对应扩展参数argument&"")
  ... 更多参考&
  ps:一旦创建了队列和交换机,就不能修改其标志了。例如,如果创建了一个non-durable的队列,然后想把它改变成durable的,唯一的办法就是删除这个队列然后重现创建。
三. &Message属性
  Durability&
  消息的持久在代码中设置的方法与exchange和queue不同,有2种方法
  IBasicProperties properties = channel.CreateBasicProperties();
  properties.SetPersistent(true);
  byte[] payload = Encoding.ASCII.GetBytes(message);
  channel.BasicPublish(exchange.name, txtMessageRoutingKey.Text.Trim(), properties, payload);
  IBasicProperties properties = channel.CreateBasicProperties();
  properties.DeliveryMode = 2;
  byte[] payload = Encoding.ASCII.GetBytes(message);
  channel.BasicPublish(exchange.name, txtMessageRoutingKey.Text.Trim(), properties, payload);
  contentType: 标识消息内容的MIME,例如JSON用application/json
  replayTo: 标识回调的queue的地址
  correlationId:用于request和response的关联,确保消息的请求和响应的同一性
  Message的2种状态:
  此状态的消息存在于队列中待处理。
  Unacknowledged
  此状态的消息表示已经在处理未确认。
  说到Unacknowledged,这里需要了解一个ack的概念。当Consumer接收到消息、处理任务完成之后,会发送带有这个消息标示符的ack,来告诉server这个消息接收到并处理完成。RabbitMQ会一直等到处理某个消息的Consumer的链接失去之后,才确定这个消息没有正确处理,从而RabbitMQ重发这个消息。  Message acknowledgment是默认关闭的。初始化Consumer时有个noAck参数,如果设置为true,这个Consumer在收到消息之后会马上返回ack。
  string BasicConsume(string queue, bool noAck, RabbitMQ.Client.IBasicConsumer consumer)
  一般来说,常用的场景noack一般就是设置成true,但是对于风险要求比较高的项目,例如支付。对于每一条消息我们都需要保证他的完整性和正确性。就需要获取消息后确认执行完正确的业务逻辑后再主动返回一个ack给server。可以通过rabbitmqctl list_queues name message_rady message_unacknowleded 命令来查看队列中的消息情况,也可以通过后台管理界面。
  我们先hold住一条消息
  然后我们再关闭链接或者重启服务
    数据还是完整的。 
  ps:message的消费还分为consume和baseget 下面讲到集群的时候再介绍。
四. &binding相关
  如果你绑定了一个durable的队列和一个durable的交换机,RabbitMQ会自动保留这个绑定。类似的,如果删除了某个队列或交换机(无论是不是 durable),依赖它的绑定都会自动删除。
  在声明一个队列的同时,server会默认让此队列绑定在默认的exchange上,这个exchange的名称为空。
&五. &发布订阅
  我们上一章的demo中实际上已经使用了发布订阅模式。
  RabbitMQ消息模型的核心理念是:发布者(producer)不会直接发送任何消息给队列。事实上,发布者(producer)甚至不知道消息是否已经被投递到队列。发布者(producer)只需要把消息发送给一个exchange。exchange非常简单,它一边从发布者方接收消息,一边把消息推入队列。exchange必须知道如何处理它接收到的消息,是应该推送到指定的队列还是是多个队列,或者是直接忽略消息。这些规则是通过exchange type来定义的。
    发布订阅其实很简单,例如上章我所示例,假设我们一开始没有任何消息,现在有一个生产者P1,他是一个天气预报播放者。然后我们有2个消费者来订阅他的消息。  P1通过广播类型的交换机fEx来发布他的天气消息,c1,c2分别建立一个队列为Q1,Q2. 并且订阅P1的fEx.
  基本可以如图所示    我们P1利用fEx生成一条消息的时候,c1,c2通过Q1,Q2都可以获取到p1所发布的消息
  我们发布3条消息    查看队列情况  Q1:    Q2:
  Q1,Q2都拿到了广播的消息,至于C1,C2如何消费这些消息,互相之间完全没有干扰。
  ps:简单一句话 发布订阅中发布者所产生的消息通过exchange对所有绑定他的队列队形消息推送,每个队列获取绑定所对应的消息
六. &WorkQueue (可用于消费者集群)
  区分于发布订阅,消费者集群主要解决横向服务器扩展问题,如果一个队列积压太多,如何均与的让不同的消费者来承担。
  默认来说,RabbitMQ会按顺序得把消息发送给每个消费者(consumer)。平均每个消费者都会收到同等数量得消息。这种发送消息得方式叫做&&轮询(round-robin)。
  我们开3个程序,1个生产 2个消费。
  如图所示绑定关系如下
  2个消费者用同样的程序,这里记录进程pid以区分,实际项目中可以用不同服务器来区分
   启动消息消费,使消费者处理work状态
  然后我们不停的通过生产者这发布消息
  然后我们看下2个消费者的消费情况
  2.  
  3.  
  4.  
  5.    
  默认地,RabbitMQ会逐一地向下一个Consumer发放消息,每一个Consumer会得到数目相同的消息。文中所示之所以是按照1条一条的轮询,是因为程序中控制了一个队列单次消费的数量。
  void BasicQos(uint prefetchSize, ushort prefetchCount, bool global)
API CommandLine 以及其他功能
RabbitMQ API
  RabbitMQ Server提供了丰富的http api。
  举个列子
  需要HTTP基本身份验证。默认的用户名/密码为guest/guest。
  这些返回值得意义我从官网搬来解释,为了避免翻译的问题导致大家理解的误差这里直接给出原文
cluster_name
The name of the entire cluster, as set with&rabbitmqctl set_cluster_name.
erlang_full_version
A string with extended detail about the Erlang VM and how it was compiled, for the node connected to.
erlang_version
A string with the Erlang version of the node connected to. As clusters should all run the same version this can be taken as representing the cluster.
exchange_types
A list of all exchange types available.
All (non-HTTP) network listeners for all nodes in the cluster. (See&contexts&in&/api/nodes&for HTTP).
management_version
Version of the management plugin in use.
message_stats
A message_stats object for everything the user can see - for all vhosts regardless of permissions in the case of&monitoring&and&administrator&users, and for all vhosts the user has access to for other users.
The name of the cluster node this management plugin instance is running on.
object_totals
An object containing global counts of all connections, channels, exchanges, queues and consumers, subject to the same visibility rules as for&message_stats.
queue_totals
An object containing sums of the&messages,&messages_ready&and&messages_unacknowledged&fields for all queues, again subject to the same visibility rules as for&message_stats.
rabbitmq_version
Version of RabbitMQ on the node which processed this request.
statistics_db_node
Name of the cluster node hosting the management statistics database.
statistics_level
Whether the node is running fine or coarse statistics.
  又或者通过api查询虚拟主机    许多api的URI需要一个虚拟主机路径的一部分的名字,因为名字只有唯一在一个虚拟主机识别物体。作为默认的虚拟主机称为&/&,这将需要被编码为&%2F&。
  在我的demo程序中对应的api功能可以通过这里的功能来实现
  其更丰富的功能可以参考官网说明文档&
  一般来说我们常用的我在应用程序中已经给出&例如查看所有队列等
&RabbitMQ CommandLine
  除了丰富的http api,rabbitmq server自然也有其很全面命令行。
  例如查询所有exchange。
  查询所有队列以及他们包含的消息数目
  rabbitmqctl更多的命令说明参考&
Message的BasicGet于consume的区别
&  consume的功能上一张介绍过,basicget更偏向于我们平时用过的其他类型的MessageQueue,它就是最基本的接受消息,consume的消费针对basicget来说属于一个长连接于短连接的区别。
消费者关系一旦确定,基本上默认它就是在侦听通道的消息是否在生产。而basicget则是由客户端手动来控制。
  在demo中在下图所示处区分
  如果你选择了消费消息,那么基本上代码层面是这样来完成的
var consumer = new QueueingBasicConsumer(channel);
channel.BasicQos(0, 1, false);
channel.BasicConsume(queue.name, rbAckTrue.Checked, consumer);
while (true)
var e = consumer.Queue.Dequeue();
MessageBox.Show(string.Format("队列{0}获取消息{1},线程id为{2}", queue.name, Encoding.ASCII.GetString(e.Body), Process.GetCurrentProcess().Id));
Thread.Sleep(1000);
本篇先到此,希望对大家有帮助  }

我要回帖

更多关于 好几个进口互封 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信