游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

CPU模型,内存分页与调优,内核与用户空间

  CPU模型
  去过机房的同学都知道,一般在大型服务器上会配置多个CPU,每个CPU还会有多个核,这就意味着多个CPU或者多个核可以同时(并发)工作1。1CPURegister
  CPURegister也就是CPU寄存器。CPU寄存器是CPU内部集成的,在寄存器上执行操作的效率要比在主存上高出几个数量级
  在CPU中至少要有六类寄存器:指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)、数据寄存器(DR)、累加寄存器(AC)、程序状态字寄存器(PSW)。这些寄存器用来暂存一个计算机字,其数目可以根据需要进行扩充
  按与CPU远近来分,离得最近的是寄存器,然后缓存,最后内存。所以,寄存器是最贴近CPU的,而且CPU只与寄存器中进行存取。寄存器从内存中读取数据,但由于寄存器和内存读取速度相差太大,所以有了缓存。即读取数据的方式为:
  CPU〈〉寄存器〈缓存内存
  当寄存器没有从缓存中读取到数据时,也就是没有命中,那么就从内存中读取数据1。2CPUCacheMemory
  CPUCacheMemory也就是CPU高速缓存。相对于硬盘读取速度来说内存读取的效率非常高,但是与CPU还是相差数量级,所以在CPU和主存间引入了多级缓存,目的是为了做一下缓冲。
  CPU内部集成的缓存称为一级缓存(L1Cache),外部的称为二级缓存(L2Cache)。
  一级缓存中又分为数据缓存(DCache)和指令缓存(ICache)。二者可以同时被CPU进行访问,减少了争用Cache所造成的冲突,提高了CPU的效能。
  CPU的一级缓存通常都是静态RAM(StaticRAMSRAM),速度非常快,但是贵
  二级缓存是CPU性能表现的关键之一,在CPU核心不变化的情况下,增加二级缓存容量能使性能大幅度提高。而同一核心的CPU高低端之分往往也是在二级缓存上存在差异
  三级缓存是为读取二级缓存后未命中的数据设计的一种缓存,在拥有三级缓存的CPU中,只有约5的数据需要从内存中调用,这进一步提高了CPU的效率,从某种意义上说,预取效率的提高,大大降低了生产成本却提供了非常接近理想状态的性能1。3MainMemory
  MainMemory就是主存,主存比L1、L2缓存要大很多
  注意:部分高端机器还有L3三级缓存。
  内存中相关概念:ROM(ReadOnlyMemory)
  只读储存器,对于电脑来讲就是硬盘,在系统停止供电的时候仍然可以保持数据PROM
  PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,现在已经不可能使用了,而EPROM是通过紫外光的照射擦除原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦除,价格很高,写入时间很长,写入很慢。RAM(RandomAccessMemory)
  随机储存器,就是电脑内存条。用于存放动态数据。(也叫运行内存)系统运行的时候,需要把操作系统从ROM中读取出来,放在RAM中运行,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存静态RAM(StaticRAMSRAM)
  当数据被存入其中后不会消失。SRAM速度非常快,是目前读写最快的存储设备。当这个SRAM单元被赋予0或者1的状态之后,它会保持这个状态直到下次被赋予新的状态或者断电之后才会更改或者消失。需要46只晶体管实现,价格昂贵。
  一级,二级,三级缓存都是使用SRAM动态RAM(DynamicRAMDRAM)
  DRAM必须在一定的时间内不停的刷新才能保持其中存储的数据。DRAM只要1只晶体管就可以实现。
  DRAM保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,
  计算机内存就是DRAM的1。4主存存取原理
  目前计算机使用的主存基本都是随机读写存储器(RAM),现代RAM的结构和存取原理比较复杂,这里本文抛却具体差别,抽象出一个十分简单的存取模型来说明RAM的工作原理。
  从抽象角度看,主存是一系列的存储单元组成的矩阵,每个存储单元存储固定大小的数据。每个存储单元有唯一的地址,现代主存的编址规则比较复杂,这里将其简化成一个二维地址:通过一个行地址和一个列地址可以唯一定位到一个存储单元。上图展示了一个4x4的主存模型。
  主存的存取过程如下:当系统需要读取主存时,则将地址信号放到地址总线上传给主存,主存读到地址信号后,解析信号并定位到指定存储单元,然后将此存储单元数据放到数据总线上,供其它部件读取。写主存的过程类似,系统将要写入单元地址和数据分别放在地址总线和数据总线上,主存读取两个总线的内容,做相应的写操作。
  这里可以看出,主存存取的时间仅与存取次数呈线性关系,因为不存在机械操作,两次存取的数据的距离不会对时间有任何影响,例如,先取A0再取A1和先取A0再取D3的时间消耗是一样的。1。5磁盘存取原理
  与主存不同,磁盘IO存在机械运动耗费,因此磁盘IO的时间消耗是巨大的。
  下图是磁盘的整体结构示意图。
  一个磁盘由大小相同且同轴的圆形盘片组成,磁盘可以转动(各个磁盘必须同步转动)。在磁盘的一侧有磁头支架,磁头支架固定了一组磁头,每个磁头负责存取一个磁盘的内容。磁头不能转动,但是可以沿磁盘半径方向运动(实际是斜切向运动),每个磁头同一时刻也必须是同轴的,即从正上方向下看,所有磁头任何时候都是重叠的(不过目前已经有多磁头独立技术,可不受此限制)。
  下图是磁盘结构的示意图。
  盘片被划分成一系列同心环,圆心是盘片中心,每个同心环叫做一个磁道,所有半径相同的磁道组成一个柱面。磁道被沿半径线划分成一个个小的段,每个段叫做一个扇区,每个扇区是磁盘的最小存储单元。为了简单起见,我们下面假设磁盘只有一个盘片和一个磁头。
  当需要从磁盘读取数据时,系统会将数据逻辑地址传给磁盘,磁盘的控制电路按照寻址逻辑将逻辑地址翻译成物理地址,即确定要读的数据在哪个磁道,哪个扇区。为了读取这个扇区的数据,需要将磁头放到这个扇区上方,为了实现这一点,磁头需要移动对准相应磁道,这个过程叫做寻道,所耗费时间叫做寻道时间,然后磁盘旋转将目标扇区旋转到磁头下,这个过程耗费的时间叫做旋转时间。1。6局部性原理与磁盘预读
  由于存储介质的特性,磁盘本身存取就比主存慢很多,再加上机械运动耗费,磁盘的存取速度往往是主存的几百分分之一,因此为了提高效率,要尽量减少磁盘IO。为了达到这个目的,磁盘往往不是严格按需读取,而是每次都会预读,即使只需要一个字节,磁盘也会从这个位置开始,顺序向后读取一定长度的数据放入内存。
  这样做的理论依据是计算机科学中著名的局部性原理:
  当一个数据被用到时,其附近的数据也通常会马上被使用。程序运行期间所需要的数据通常比较集中。由于磁盘顺序读取的效率很高(不需要寻道时间,只需很少的旋转时间),因此对于具有局部性的程序来说,预读可以提高IO效率。
  预读的长度一般为页(page)的整倍数。页是计算机管理存储器的逻辑块,硬件及操作系统往往将主存和磁盘存储区分割为连续的大小相等的块,每个存储块称为一页(在许多操作系统中,页得大小通常为4k),主存和磁盘以页为单位交换数据。当程序要读取的数据不在主存中时,会触发一个缺页异常,此时系统会向磁盘发出读盘信号,磁盘会找到数据的起始位置并向后连续读取一页或几页载入内存中,然后异常返回,程序继续运行。2内存分页
  虽然Java语言的这些特点很容易惯坏开发人员,使得我们不需要太关心到底程序是怎么使用内存的,使用了多少内存。但是我们最好也了解Java是如何管理内存的,当我们真的遇到OutOfMemoryError时不会奇怪地问,为什么Java也有内存泄漏:要快速地知道到底什么地方导致了OutOfMemoryError,并能根据错误日志快速地定位出错原因2。1物理内存与虚拟内存2。1。1物理内存
  所谓物理内存就是我们通常所说的RAM(随机存储器)。在计算机中,还有一个存储单元叫寄存器,它用于存储计算单元执行指令(如浮点、整数等运算时)的中间结果。寄存器的大小决定了一次计算可使用的最大数值。
  连接处理器和RAM或者处理器和寄存器的是地址总线,这个地址总线的宽度影响了物理地址的索引范围,因为总线的宽度决定了处理器一次可以从寄存器或者内存中获取多少个bit。同时也决定了处理器最大可以寻址的地址空间,如32位地址总线可以寻址的范围为(0x000000000ffffffff。这个范围是2324294967296个内存位置,每个地址会引用一个字节,所以32位总线宽度可以有4GB的内存空间。
  通常情况下,地址总线和寄存器或者RAM有相同的位数,因为这样更容易传输数据,但是也有不一致的情况,如x86的32位寄存器宽度的物理地址可能有两种大小,分别是32位物理地址和36位物理地址,拥有36位物理地址的是PentiumPro和更高型号。
  不管是在Windows系统还是Linux系统下,我们要运行程序,都要向操作系统先申请内存地址。
  通常操作系统管理内存的申请空间是按照进程来管理的,每个进程拥有一段独立的地址空间,每个进程之间不会相互重合,操作系统也会保证每个进程只能访问自己的内存空间。这主要是从程序的安全性来考虑的,也便于操作系统来管理物理内存。
  其实上面所说的进程的内存空间的独立主要是指逻辑上独立,也就是这个独立是由操作系统来保证的,但是真正的物理空间是不是只能由一个进程来使用就不一定了。因为随着程序越来越庞大和设计的多任务性,物理内存无法满足程序的需求,在这种情况下就有了虚拟内存的出现。2。1。2虚拟内存
  虚拟内存的出现使得多个进程在同时运行时可以共享物理内存,这里的共享只是空间上共享,在逻辑上它们仍然是不能相互访问的。虚拟地址不但可以让进程共享物理内存、提高内存利用率,而且还能够扩展内存的地址空间,如一个虚拟地址可能被映射到一段物理内存、文件或者其他可以寻址的存储上。
  一个进程在不活动的情况下,操作系统将这个物理内存中的数据移到一个磁盘文件中(也就是通常windows系统上的页面文件,或者Linux系统上的SWAP交换分区),而真正高效的物理内存留给正在活动的程序使用。在这种情况下,在我们重新唤醒一个很长时间没有使用的程序时,磁盘会吱吱作响,并且会有一个短暂的停顿得到印证,这时操作系统又会把磁盘上的数据重新交互到物理内存中。但是我们必须要避免这种情况的经常出现,如果操作系统频繁地交互物理内存的数据和磁盘数据,则效率将会非常低,尤其是在Linux服务器上,我们要关注Linux中swap的分区的活跃度。
  如果swap分区被频繁使用,系统将会非常缓慢,很可能意味着物理内存已经严重不足或者某些程序没有及时释放内存。
  点击了解Linux分区(目录中选择分区)2。2内存分页大小对性能提升原理
  首先,我们需要回顾一小部分计算机组成原理,这对理解大内存分页至于JVM性能的提升是有好处的。2。2。1什么是内存分页
  我们知道,CPU是通过寻址来访问内存的。32位CPU的寻址宽度是00xFFFFFFFF,计算后得到的大小是4G,也就是说可支持的物理内存最大是4G。但在实践过程中,碰到了这样的问题,程序需要使用4G内存,而可用物理内存小于4G,导致程序不得不降低内存占用。
  为了解决此类问题,现代CPU引入了MMU(MemoryManagementUnit内存管理单元)
  MMU的核心思想是利用虚拟地址替代物理地址,即CPU寻址时使用虚址,由MMU负责将虚址映射为物理地址。MMU的引入,解决了对物理内存的限制,对程序来说,就像自己在使用4G内存一样。
  内存分页(Paging)是在使用MMU的基础上,提出的一种内存管理机制。它将虚拟地址和物理地址按固定大小(4K)分割成页(page)和页帧(pageframe),并保证页与页帧的大小相同,这种机制,从数据结构上,保证了访问内存的高效,并使OS能支持非连续性的内存分配。在程序内存不够用时,还可以将不常用的物理内存页转移到其他存储设备上,比如磁盘,这就是大家耳熟能详的虚拟内存。
  页表其实是一个数组用于把虚拟页号和物理帧号对应起来
  其索引为VPN(虚拟地址)索引值对应的项为PTE(页表项)项中的值为PFN(物理页帧),每个PTE中还有很多别的内容,比如有很多不同的位:有效位、保护位、存在位、脏位、参考位
  虚拟地址与物理地址需要通过映射,才能使CPU正常工作。而映射就需要存储映射表。在现代CPU架构中,映射关系通常被存储在物理内存上一个被称之为页表(pagetable)的地方。
  如下图:
  从这张图中,可以清晰地看到CPU与页表,物理内存之间的交互关系。
  由于页表是被存储在内存中的。我们知道CPU通过总线访问内存,肯定慢于直接访问寄存器的。为了进一步优化性能,现代CPU架构引入了TLB(Translationlookasidebuffer,页表寄存器缓冲),用来缓存一部分经常访问的页表内容。
  如下图:
  2。2。2为什么要支持大内存分页
  TLB是有限的,这点毫无疑问。当超出TLB的存储极限时,就会发生TLBmiss,之后,OS就会命令CPU去访问内存上的页表。如果频繁的出现TLBmiss,程序的性能会下降地很快。
  为了让TLB可以存储更多的页地址映射关系,我们的做法是调大内存分页大小。
  如果一个页4M,对比一个页4K,前者可以让TLB多存储1000个页地址映射关系,性能的提升是比较可观的。2。3调整OS和JVM内存分页
  在Linux和windows下要启用大内存页,有一些限制和设置步骤。2。3。1Linux
  Linux限制:需要2。6内核以上或2。4内核已打大内存页补丁。
  确认是否支持,请在终端敲如下命令:catprocmeminfogrepHugeHugePagesTotal:0HugePagesFree:0Hugepagesize:2048kB
  如果有HugePage字样的输出内容,说明OS是支持大内存分页的。Hugepagesize就是默认的大内存页size
  接下来,为了让JVM可以调整大内存页size,需要设置下OS共享内存段最大值和大内存页数量。2。3。1。1共享内存段最大值
  建议这个值大于JavaHeapsize,这个例子里设置了4G内存。echo4294967295procsyskernelshmmax2。3。1。2大内存页数量echo154procsysvmnrhugepages
  这个值一般是Java进程占用最大内存单个页的大小,比如java设置1。5G,单个页10M,那么数量为153610154。
  注意:因为proc是内存FS,为了不让设置在重启后被冲掉,建议写个脚本放到init阶段(rc。local)。2。3。2Windows
  Windows限制:仅支持windowsserver2003以上server版本
  操作步骤:ControlPanelAdministrativeToolsLocalSecurityPolicyLocalPoliciesUserRightsAssignment双击Lockpagesinmemory,添加用户和组重启电脑
  注意:需要管理员操作。2。3。3单个页大小调整
  JVM启用时加参数XX:LargePageSizeInBytes10m
  如果JDK是在1。5update5以前的,还需要手动加XX:UseLargePages,作用是启用大内存页支持。2。4大内存分页的副作用
  因为每页size变大了,导致JVM在计算Heap内部分区(perm,new,old)内存占用比例时,会出现超出正常值的划分。最坏情况下是,某个区会多占用一个页的大小。不过后续jvm版本也在调整这个策略。
  一般情况,不建议将页size调得太大,464M,是可以接受的(默认是4M)3内核空间与用户空间3。1定义
  一个计算机通常有一定大小的内存空间,如使用的计算机是4GB的地址空间,但是程序并不能完全使用这些地址空间,因为这些地址空间被划分为内核空间和用户空间。程序只能使用用户空间的内存,这里所说的使用是指程序能够申请的内存空间,并不是程序真正访问的地址空间。
  内核空间主要是指操作系统运行时所使用的用于程序调度、虚拟内存的使用或者连接硬件资源等的程序逻辑。3。2为何需要内核空间和用户空间的划分
  由于每个进程都独立使用属于自己的内存一样,为了保证操作系统的稳定性,运行在操作系统中的用户程序不能访问操作系统所使用的内存空间。这也是从安全性上考虑的,如访问硬件资源只能由操作系统来发起,用户程序不允许直接访问硬件资源。如果用户程序需要访问硬件资源,如网络连接等,。可以调用操作系统提供的接口来实现,这个调用接口的过程也就是系统调用。
  每一次系统调用都会存在两个内存空间的切换,通常的网络传输也是一次系统调用,通过网络传输的数据先是从内核空间接收到远程主机的数据,然后再从内核空间复制到用户空间,供用户程序使用。这种从内核空间到用户空间的数据复制很费时,虽然保住了程序运行的安全性和稳定性,但是也牺牲了一部分效率。但是现在已经出现了很多其他技术能够减少这种从内核空间到用户空间的数据复制的方式,如Linux系统提供了sendflle文件传输方式。
  内核空间和用户空间的大小如何分配也是一个问题,是更多地分配给用户空间供用户程序使用,还是首先保住内核有足够的空间来运行,这要平衡一下。如果是一台登录服务器,很显然,要分配更多的内核空间,因为每一个登录用户操作系统都会初始化一个用户进程,这个进程大部分都在内核空间里运行。在当前的Windows32位操作系统中默认内核空间和用户空间的比例是1:1(2GB的内核空间,2GB的用户空间),而在32位Linux系统中默认的比例是1:3(1GB的内核空间,3GB的用户空间)3。3内核用户空间切换的影响
  java的线程是映射到操作系统原生线程之上的,如果要阻塞或唤醒一个线程就需要操作系统介入,需要在用户态与核心态之间切换,这种切换会消耗大量的系统资源,因为用户态与内核态都有各自专用的内存空间,专用的寄存器等,用户态切换至内核态需要传递给许多变量、参数给内核,内核也需要保护好用户态在切换时的一些寄存器值、变量等,以便内核态调用结束后切换回用户态继续工作。
  如果线程状态切换是一个高频操作时,这将会消耗很多CPU处理时间

终于魅族19有信儿了2022061010:10安兔兔6月9日,魅族PANDAER携两大全新主题GAMESTART和往日既视系列的一众新品与我们同游于初夏时节。魅友,心爱传家产品焕新未来……小米官宣预售太阳能板,光伏迎来新机会?昨天文章写了:小米发布米家太阳能板100W产品,预售到手价为1099元。如图。我们可以算一下,1W是11元,而上面说的通威的中标价是1。98,就算2元W,售价差了5倍,非……乡宁县市场监管局为2023年云丘山中和文化旅游节保驾护航3月6日,乡宁县委副书记、代县长李永芳带队督导检查云丘山景区中和文化节节前安全生产工作,现场对县市场监管局食品快检工作进行指导。李永芳强调,市场监管执法人员要进一步提高思……野菜有必要冰冻起来常年吃吗?野菜即便是冷冻起来,您能存储多少野菜呢?而且,也不是所有的野菜都适合冷冻存储的。所以,即便是您家有一个冰柜,也不可能把所有的冷冻空间都用来存储野菜吧。我记着在老家的时候,……儿童柔韧度,尤其是坐位体前屈怎样科学提高?儿童柔韧度,尤其是坐位体前屈怎样科学提高?如题,坐位体前屈是小学体育的其中一项必考项目。看到有人说不科学的拉筋会让孩子很疼而且容易受伤。想要知道怎样科学拉伸,……谢霆锋偷偷给张柏芝生活费,还为她买房,网友王菲这下要哭了要说起张柏芝和谢霆锋的感情,他们的关系真的是剪不断理还乱,在和张柏芝离婚之后,谢霆锋选择和王菲复合了,张柏芝则是照顾着自己的两个孩子,十分的辛苦,很多网友都说,谢霆锋在离婚后,……夏天必吃的凉拌菜,营养丰富,口感爆汁,吃上一盆超过瘾每到这个季节,总想来一盘美味又好吃的凉拌菜。虽说凉拌菜的种类和菜品有非常多种,但今天我们做的这种,绝对是口感和颜值都是超一流的,它就是凉拌黄瓜腐竹木耳。在口感上拥有丰富的层次,……宁德时代首席科学家公司研发布局覆盖电池路线上所有潜力股宁德时代近年来,新能源产业步入了发展快车道,如何实现高质量发展成为了各界关注的议题。11月3日,在2022年APEC工商领导人中国论坛上,宁德时代首席科学家吴凯表示……如何吃得便捷又健康手有余粮,心里不慌。无论是受疫情的影响,还是上班繁忙、加班辛苦的上班族,便捷的速食已成为众多人的囤货优选。而且速食不仅吃起来方便,现在的速食食品也越来越多,在家就能轻轻松松做出……秋染安徽大别山浪漫金钱松美如画卷在安徽省安庆市岳西县石关乡,游客在这里游玩、打卡。王先国摄一棵棵高大的金钱松披上秋天的外衣,浪漫金钱松美如画卷。王先国摄一棵棵高大的金钱松披上秋天的外衣,浪漫金钱松……辛巴妻子初瑞雪在创业中成就自我,梦华录三位女子的创业之路近年来,随着女性力量的不断崛起,有越来越多的女性创业者在商业进程中发挥着女性特有的价值和魅力,让世界听见她声音。就如直播电商企业辛选集团的联合创始人初瑞雪雪大,她正是在创业路上……700万,恭喜76人!又一巨头崛起,承认吧哈登,你身边的帮手4胜0负,作为休赛期引援最为成功的球队之一,76人在季前赛展现出了非常良好的状态,几名新援不仅没有让人感觉到和球队需要磨合时间,反而他们看起来完美融入了76人。没有人会怀疑PJ……
网友评选出最难吃的水果,你吃过几种?所有的水果真的都好吃吗?都是香甜可口水润多汁的吗?那可不见得。说起来,你们有没有不爱吃的水果?今天果哥就整理了网友们评选出的难吃的水果,看看有哪些水果上榜了!鹰嘴芒……西岭雪山今日降大雪!所有游客,整个3月滑雪场景区免门票今日西岭雪山又降下大雪漫天飞雪的场景真是浪漫至极虽然山下已是梨花菜花桃花开西岭雪山飘落的雪花更别具一格西岭雪山景区对外官宣自今日起至3月31日景区针对所有游客免滑雪场景区门票一……肉末炒青豆要想好吃不变色,掌握这2小技巧,鲜香又入味特下饭嗨大家好!我是小猫爱厨房的小猫,今天又和大家见面了,分享生活、分享美食、分享快乐!今天小猫给大家带来的是一道用毛豆制作的炒菜,记得在小的时候家在农村,每年的七八月份,这道菜可以……立秋后,这5汤一定要喝,滋补不上火立秋之后将迎来秋老虎,这时气温不降,我们在注意清热消暑的同时,也要注意一些温和的滋补。平时吃饭,我们讲究至少一荤一素一汤,而煲汤也是有讲究的,什么季节喝什么汤,立秋喝对了汤能补……果不其然,阿里再战社区团购,这次出手更直接果不其然,阿里再战社区团购,这次出手更直接!阿里再次出手社区团购了,这个市场已经逐渐的开始定型。说阿里做卖菜这个话题之前,我们先说一下前几天网上很火的一个事情,就是……串串香为什么那么好吃,大厨给你分享灵魂配方和蘸料我的花样生活作为一名厨师,很少到外边吃饭,偶尔的一次,听朋友说有一家串串香店生意特别火爆,我们就去尝了一下。说白了就跟麻辣烫性质差不多,只不过变了一下形式,料还是那个料,……莫将乳腐等闲尝丨小山来源:嘉兴日报嘉兴在线暑假一日三餐倒腾吃食,有点黔驴技穷。忽而,想起儿时家乡的开胃小菜:乳腐。乳在我们嘉桐交界地方的乡音里发成寺。村民们称乳腐为寺腐。以前的乳腐在村……立秋过后,这5道硬菜要多吃,营养又美味,合理贴秋膘身体棒一叶梧桐一报秋,稻花田里话丰收。虽非盛夏还伏虎,更有寒蝉唱不休。转眼间立秋已经过了好几天了,虽然现在天气还是特别的热,但是吹得风非常清爽,如果中午有大太阳的话,躲在大树下就特别……面包一次发酵,口感一点也不输二次发酵这个配方适合懒人,不用二次发酵就能吃到绵软的手撕吐司哈〔偷笑〕天气比较炎热,所以我在空调房和面哈,重点敲黑板,用冰牛奶(带点点冰渣更好哈),一个冰的鸡蛋白,这样和面的时候……收好这10道家常菜,美味又下饭,一周做饭不重样1。虾仁炒蛋虾仁鲜嫩Q弹,是怎么做都好吃的食材,营养丰富,做给孩子们吃最好不过。搭配鸡蛋和蔬菜一起清炒,调味也简单,吃起来不会油腻也不会浓重,食欲一下子就有了2。照……韩网热议LPL世界赛4队除了GEN,好像没有战队能和LPL对LPL夏季赛正式结束,4支代表LPL去参加S12世界赛的战队也全部诞生。分别是JDG、TES、EDG和RNG。因为世界赛LPL和LCK互为最大对手,所以LCK网友也对于今年LP……入秋后一定要喝这款超有能量的裙带鸡汤,肉嫩滑不柴,汤浓稠丝滑今天给大家带来一款适合秋冬常喝的裙带鸡汤,非常简单好做,这个裙带鸡汤,又香又鲜,鸡块没有腥味,汤汁奶白醇厚,怎样做到呢?接下来关键几个步骤,你看好了。一:把裙带菜泡好洗净……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网