Archive for April, 2009

0

看完就懂的是变态,10秒懂的是禽兽,20秒懂的是色鬼


初一学生在上生理卫生课….

当看到男人性器官时,一单亲家庭的女孩笑道:“我知道,这是牛奶吸管…”

当看到女人性器官图时,一单亲家庭的男孩捂嘴惊道:“今天我可没有犯错…”

看完就懂的是变态,10秒懂的是禽兽,20秒懂的是色鬼,50秒后懂的很纯洁,一直不懂的很郁闷………..

0

[转] Symbian OS 9 可执行文件格式


原译者:陈啸天(cxt_programmer)
请关注www.cpplite.com及bbs.cpplite.com

声明:原文出自大牛——ScreenShot作者A ntony  P ranata 。本人英语很烂,之所以瞎译出来一是为了以后参考方便一些,二是在翻译的过程中自己能更仔细的看~。强烈建议大家对照英文原版来看哈。另外有些地方没有翻译,大家意会哈。

原文地址:

http://www.antonypranata.com/articles/new-symbian-os-9-executable-file-format-e32image

前言:

  9已经发布,与之前的版本相比,OS 9增加了许多新特性并有了一些改变,其中之一就是新的可执行文件格式(E32Image)。本文主要讨论了这个新的文件格式,如果你想了解OS 9之前的可执行文件格式,可以阅读一下我之前关于此话题的文章。

在开始之前,请注意我们仅仅讨论的是真机环境下的可执行文件格式(ARM)。为什么不讨论模拟器环境呢?因为运行在模拟器的可执行文件使用了一种不同的文件格式(Cxt注:模拟器下的可执行文件应该是windows的PE格式),如果你之前不了解任何一个平台的可执行文件格式,下面的介绍会更好的帮助你理解E32文件格式。

这篇文章是在Symbian网站或者其他拥有Symbian OS licensees的厂商(例如Nokia)提供的公开信息(文档)之上完成的。虽然我目前在一家手机厂商工作,但这篇文章涉及内容的正确性并未经过公司的核对。尽管我已经紧握最大的努力确保这篇文章内容的正确,但我仍然无法100%保证(Cxt音:看看,大牛总是很谦虚的,我们要做一个谦虚的人哈)。

EABI介绍( Introduction to EABI ):

ABI(应用程序二进制接口,Application Binary Interface)是由ARM及其合作伙伴们制定的一个标准,它定义了如何编译、链接,以及其他工具怎样生成obj文件和可执行文件。这个标准可以让不同编译器生成的obj文件互通,例如可以把不同编译器生成的obj文件组合在一起。EABI(嵌入式应用程序二进制接口, Embedded Application Binary Interface )也是这样的标准,它就是嵌入式平台的ABI。

写这篇文章的时候,有两种编译器可以用于Symbian OS 9——RVCT( RealView Compilation Tools )和GCCE。RVCT是ARM公司开发的编译器,license费用可达数千美元;与此不同,GCCE是一个由 CodeSourcery 开发的免费编译器;顾名思义,GCCE基于GNU编译器。

    EABI编译器生成的格式为ELF( Executable and Linking Format ),它不同于Symbian OS 9之前的PE格式。然而Symbian OS并不使用ELF格式,因为Symbian OS通常在大小受限的ROM上,而标准ELF文件的尺寸通常又很大。所以Symbian把标准的ELF转换为Symbian特有的E32Image格式。如果你有安装Symbian SDK,可以在epoc32\tools目录下找到用于把ELF转换为E32Image的工具,它叫elf2e32.exe。

下图展示了Symbian OS 9的新工具链。如你所见,最后生成的是由elf2e32.exe转换完的Symbian特有格式——E32Image。Symbian网站和SDK中有更多关于这方面的介绍。(Cxt注:SDK help:   »   Symbian OS v9.1   »   Symbian OS Tools And Utilities   »   Build tools guide   »  The native build targets 目录下有全面详细的文档介绍)。通常你不会看到下图所示的流程,因为Symbian OS使用一些脚本工具(例如bldmake、abld等)自动完成。

如果你不熟悉.dso文件也没关系,它其实与Symbian OS 9以及其他平台的.lib文件是一样的。(Cxt注:.dos提供导出的函数的名称和位置,DLL包含实际的函数和数据。)

我在前面说过,ELF文件通常都很大,不适合用于手机。减少ELF尺寸的方法之一是把函数名字替换为序号。例如可以把MyFunction()替换为1,正如你期望的,这种方法可以极大的减小ELF的尺寸,特别是当函数名称很长时(例如 ThisIsVeryLongFunction ())这种效果更加明显。额等等!如此一来,如何找到序号和函数名称之间的对应关系呢?别急,我们有一个.def文件,它提供了序号与函数名之间的对应关系。(Cxt:呼 ……

E32Image概述( Overview of E32Image ):

现在让我们来看看E32Image吧。与其他标准的可执行文件类似,它也包含头(Header)、代码段(Code Section)、数据段(Data Section)、导入段(Import Section)等等。

上图展示了E32文件格式,与其他可执行文件格式一样,最开始的部分是header。下面我会着重介绍E32 header里面都有些什么东东。在Header之下还有一些其它section(Cxt:这部分大家意会哈^_^):

·  Code section, contains all the object files (.o) of your source code as well as export address table that lists all the exported functions.

·  BSS section, contains un-initialized data.

·  Data section, contains initialized data.

·  Import section, contains the information about all imported functions used by your program.

· Relocation section, contains relocation table needed by Symbian OS loader to load your program.

E32Image头( Header of E32Image ):

头信息也许是最有趣的部分,因为它包含了可执行文件的很多信息。E32ImageHeader的声明可以在SDK的\epoc32\include\f32image.h中找到。看看class  E32ImageHeaderV 的声明,这可是E32Image文件格式完整的头信息。如果你仔细看了class  E32ImageHeaderV ,你会发现它继承了E32HeaderComp(E32HeaderComp继承了E32ImageHeader)。下图对它们的关系做了更好的说明:

下面的代码片段展示了 EImageHeader EImageHeaderComp E32ImageHeaderV 的声明,请注意我删减了部分函数以及注释以便于更清晰的查看:

 E32ImageHeader

{

public :

  TUint32 iUid1;

  TUint32 iUid2;

  TUint32 iUid3;

  TUint32 iUidChecksum;

  TUint iSignature;  // ’EPOC’

  TUint32 iHeaderCrc;  // CRC-32 of entire header

  TUint32 iModuleVersion;  // Version number for this executable (used in link resolution)

  TUint32 iCompressionType;  // Type of compression used (UID or 0 for none)

  TVersion iToolsVersion;  // Version of PETRAN/ELFTRAN which generated this file

  TUint32 iTimeLo;

  TUint32 iTimeHi;

  TUint iFlags;  // 0 = exe, 1 = dll, 2 = fixed address exe

  TInt iCodeSize;  // size of code, import address table, constant data and export dir

  TInt iDataSize;  // size of initialised data

  TInt iHeapSizeMin;

  TInt iHeapSizeMax;

  TInt iStackSize;

  TInt iBssSize;

  TUint iEntryPoint;  // offset into code of entry point

  TUint iCodeBase;  // where the code is linked for 

  TUint iDataBase;  // where the data is linked for

  TInt iDllRefTableCount;  // filling this in enables E32ROM to leave space for it

  TUint iExportDirOffset;  // offset into the file of the export address table

  TInt iExportDirCount;

  TInt iTextSize;  // size of just the text section, also doubles as the offset for the

  // iat w.r.t. the code section

  TUint iCodeOffset;  // file offset to code section, also doubles as header size

  TUint iDataOffset;  // file offset to data section

  TUint iImportOffset;  // file offset to import section

  TUint iCodeRelocOffset;  // relocations for code and const

  TUint iDataRelocOffset;  // relocations for data

  TUint16 iProcessPriority;  // executables priority

  TUint16 iCpuIdentifier;  // 0×1000 = X86, 0×2000 = ARM

};

class  E32ImageHeaderComp :  public  E32ImageHeader

{

public :

  TUint32 iUncompressedSize;  // Uncompressed size of file

  // For J format this is file size - sizeof(E32ImageHeader)

  // and this is included as part of the compressed data :-(

  // For other formats this is file size - total header size

};

class  E32ImageHeaderV :  public  E32ImageHeaderComp

{

public :

  SSecurityInfo iS;

  // Use iSpare1 as offset to Exception Descriptor

  TUint32 iExceptionDescriptor;  // Offset in bytes from start of code section to Exception Descriptor,

  // bit 0 set if valid

  TUint32 iSpare2;

  TUint16 iExportDescSize;  // size of bitmap section

  TUint8 iExportDescType;  // type of description of holes in export table

  TUint8 iExportDesc[1];  // description of holes in export table - extend

};

     我将逐一解释上面这些字段。从下面的列表中,左端的16进制数表示这个字段在文件中的偏移量,例如iUid2的位置是从文件头部开始0×04的位置。换句话说,如果你把可执行文件用二进制编辑器打开,然后找到偏移量0×04的位置你就可以找到iUid2。注意E32Image使用小端格式(little-endian order)。

E32ImageHeader

0×00:   iUid1 ,可执行文件的第一个UID。这个UID可被看作是一个系统级别的标识符,例如Dlls是 0×1000 0079 ,可执行程序是 0×1000 007A 。如果你想更多的了解Symbian OS UID相关信息,可以 访问这里

0×04: iUid2 ,可执行文件的第二个UID。当两个对象拥有同一个UID1的时候,就需要用这个UID来区分它们,例如 0×1000 39CE 表示多态接口Dll( polymorphic interface DLLs ),  0×1000 008d 表示静态接口( static interface (shared library) )。

0×08: iUid3 ,可执行文件的第三个UID。   每个程序的UID3都不同。下面这段不翻译了,贴个图看图识字吧^_^。

It is unique for each application. Developers have to request this UID from Symbian Signed service. Symbian OS 9 applications usually have UIDs in the range of 0×200 0000 and 0x2FFF FFFF. Examples from Symbian OS SDKs, like S60 SDK or UIQ SDK, have the UIDs in the range of 0xA000 0000 and 0xAFFF FFFF. There are also some UID available for testing, which can be chosen from the range 0×0100 0000 to 0x0FFF FFFF.

0x0C: iUidChecksum ,校验前面提到的3个UID。Symbian SDK中提供了一个uidcrc.exe工具完成该功能;下面的例子展示了如何生成这三个UID: 0×1000 007A 0×1000 39CE  0xA000 017F 的校验码:

C:\>uidcrc 0x1000007A 0x100039CE 0xA000017F

0x1000007a 0x100039ce 0xa000017f 0x1e7cca07

0×10: iSignature ,E32文件唯一签名( unique signature )。值统一为“EPOC”。图示如下:

0×14: iHeaderCrc ,整个头信息的完整校验,使用 CCITT CRC-32 算法。

0×18: iModuleVersion ,可执行版本号。该信息用于链接过程(linking process)。在S60 3 rd  iModuleVersion  值为10( 0×0000 000A )(Cxt注:大牛这里可能笔误了,iModuleVersion是T u int32,占4个字节,这个值应该是0x000A 0000)。

0x1C: iCompressionType ,一个UID,表示使用哪种压缩算法压缩了可执行文件。如果值为0就说明未压缩。就我目前所看到的,只使用了一种压缩算法:由RFC 1951定义的 Deflate/Huffman 算法。它的UID是 KUidCompressionDeflate 0x101F 7AFC )。需要注意的是,未来也许会使用其他压缩算法。

0×20: iToolsVersion ,生成这个可执行文件的 ELFTRAN 工具版本。

0×24: iTimeLo ,时间戳。 the lowest word of the timestamp when the file is created.

0×28: iTimeHi ,时间戳。 the lowest word of the timestamp when the file is created.

0x2C: iFlags ,可执行文件的一个标记,比如 KImageDll  KImageNoCallEntryPoint  等。这些标记定义在f32image.h中。f32image.h中有一些函数定义用来解释这些标记的意思。例如:如果flag值为 0×1200 002A ,我们可以把它看作: 0×1000 0000 + 0×0200 0000 + 0×0000 00020 + 0×0000 0008 + 0×0000 00002 ,结合f32image.h中的常量声明,我们可以发现:

·  0×10000000 = KImageImpFmt_PE ,可执行文件使用ELF-derived入口。

·  0×02000000 = KImageHdrFmt_V ,header的版本支持。

·  0×00000020 = KImageEpt_Eka2 ,EKA2

·  0×00000008 = KImageABI_EABI ,可执行文件为EABI image file。

·  0×00000002 = KimageNoCallEntryPoint ,no call to entry point。

    

0×30: iCodeSize is the size of code section, import address table, constant data and export dir.

0×34: iDataSize , size of initialised data.

0×38: iHeapSizeMin , the minimum size of the heap.

0x3C: iHeapSizeMax , the maximum size of the heap.

0×40: iStackSize , the size of the stack.

0×44: iBssSize , the size of the un-initialized data section.

0×48: iEntryPoint , offset into code of entry point.

0x4C: iCodeBase , where the code is linked for.

0×50: iDataBase , where the data is linked for.

0×54: iDllRefTableCount , the number of DLLs imported by this program.

0×58: iExportDirOffset , offset into the file of the export address table.

0x5C: iExportDirCount , the offset of the export address table.

0×60: iTextSize , size of just the text section, also doubles as the offset for the iat w.r.t. the code section.

0×64: iCodeOffset , file offset to code section, also doubles as header size.

0×68: iDataOffset , file offset to data section.

0x6C: iImportOffset , file offset to import section.

0×70: iCodeRelocOffset , relocations for code and const.

0×74: iDataRelocOffset , relocations for data.

0×78: iProcessPriority , executables priority.

0x7A: iCpuIdentifier , the identifier of CPU. Look at the following constant for all possible values:

enum TCpu

{

  ECpuUnknown=0, 

  ECpuX86=0×1000, 

  ECpuArmV4=0×2000, 

  ECpuArmV5=0×2001, 

  ECpuArmV6=0×2002, 

  ECpuMCore=0×4000

};                 

E32ImageHeaderComp

    开始之前,我们需要知道2个结构:定义在e32cmn.h的 ScapabilitySet SSSecurityInfo 。Symbian OS 9可以看到它们,它们保存了平台安全相关信息,比如能力(capability)、安全标识符(secure identifier)和厂商标识符(vendor identifier)。

struct SCapabilitySet

{

enum {ENCapW=2};

TUint32 iCaps[ENCapW];

};

struct SSecurityInfo

{

TUint32 iSecureId;

TUint32 iVendorId;

SCapabilitySet iCaps; // Capabilities re. platform security

};

好了,让我们回到 E32ImageHeaderV

0×80: iS.iSecureId ,可执行文件的安全ID(secure ID)。就是可执行文件的UID3。

0×84: iS.iVendorId ,可执行文件的厂商ID(vendor ID)。对于第三方应用程序,值为0。

0×88: iS.iCaps.iCaps ,运行可执行文件需要的能力。Symbian OS所有的能力定义可以在 e32capability.h 文件中找到。

enum TCapability

{

  ECapabilityTCB = 0,

  ECapabilityCommDD = 1,

  ECapabilityPowerMgmt = 2,

  ECapabilityMultimediaDD = 3,

  ECapabilityReadDeviceData = 4,

  ECapabilityWriteDeviceData = 5,

  ECapabilityDRM = 6,

  ECapabilityTrustedUI = 7,

  ECapabilityProtServ = 8,

  ECapabilityDiskAdmin = 9,

  ECapabilityNetworkControl = 10,

  ECapabilityAllFiles = 11,

  ECapabilitySwEvent = 12,

  ECapabilityNetworkServices = 13,

  ECapabilityLocalServices = 14,

  ECapabilityReadUserData = 15,

  ECapabilityWriteUserData = 16,

  ECapabilityLocation = 17,

  ECapabilitySurroundingsDD = 18,

  ECapabilityUserEnvironment = 19,

};

    能力以bit的形式表示,例如 ECapabilityTCB 意味着最低有效位(LSB),如果设置了最低有效位,可执行文件就具有TCB能力。

0×90: iExceptionDescriptor is offset in bytes from start of code section to Exception Descriptor, bit 0 set if valid

0×94: iSpare2 , reserved.

0×98: iExportDescSize , size of bitmap section.

0x9A: iExportDescType[1] , type of description of holes in export table.

0x9B: iExportDesc[1] , is description of holes in export table.

Example

    下面我们来看一个例子,来帮助你更好的理解上面说的那些字段。我们将使用标准的Symbian OS build command来编译3.0 SDK提供的Helloworld Basic例子。

C:\Symbian\9.1\S60_3rd\S60Ex\helloworldbasic>bldmake bldfiles

C:\Symbian\9.1\S60_3rd\S60Ex\helloworldbasic>abld build gcce urel

现在切换到 \epoc32 \r elease\gcce\urel 目录,使用 2E32 工具读取E32 image头信息。做法如下:

C:\Symbian\9.1\S60_3rd\S60Ex\helloworldbasic>elf2e32 –e32input=helloworldbasic.exe

然后你将会看到 helloworldbasic.exe 的头信息;输出的过程可能会很长,所以一个比较好的方法是将他转储到文件,便于我们进一步分析:

C:\Symbian\9.1\S60_3rd\S60Ex\helloworldbasic>elf2e32 –e32input=helloworldbasic.exe > helloworldbasic.txt

打开 helloworldbasic.txt ,你将会看到头信息(我已经用绿色的注释标明了 E32ImageHeaderV 的字段):

  E32ImageFile ’helloworldbasic.exe’

  V2.00(505) Time Stamp: 00e0eb0a,d2525b80  // iTimeStampHi, iTimeStampLo

  EPOC Exe for ARMV5 CPU  // iCpuIdentifier = 0×20001 (ARMv5)

  Flags: 1200002a  // iFlags

  Priority Foreground

  Entry points are not called

  Image header is format 2

  Image is compressed using the DEFLATE algorithm  // iCompressionType

  Uncompressed size 0000b788

  Image FPU support : Soft VFP

  Secure ID: a000017f  // iSecureId

  Vendor ID: 00000000  // iVendorId

  Capabilities: 00000000 00000000  // iSs.iCaps.iCaps

  Exception Descriptor Offset: 00002561  // iExceptionDescriptor

  Exception Index Table Base: 00012dfc

  Exception Index Table Limit: 000130bc

  RO Segment Base: 00008001

  RO Segment Limit: 0000a77c

  Export Description: Size=000, Type=01  // iExportDescSize = 000 iExportDescType = 01

  Export description consistent

  Module Version: 10.0  // iModuleVersion

  Imports are ELF-style

  ARM EABI

  Built against EKA2

  Uids: 1000007a 100039ce a000017f (1e7cca07)

  // iUid1 = 1000007a, iUid2 = 100039ce, iUid3 = a000017f, iUidChecksum = 1e7cca07

  Header CRC: 023aca0d  // iHeaderCrc

  File Size: 0000b788  // iUncompressedSize

  Code Size: 0000b0bc  // iCodeSize

  Data Size: 00000000  // iDataSize

  Compression: 101f7afc  // iCompressionType

  Min Heap Size: 00001000  // iHeapSizeMin

  Max Heap Size: 00100000  // iHeapSieMax

  Stack Size: 00005000  // iStackSize

  Code link addr: 00008000  // iCodeBase

  Data link addr: 00400000  // iDataBase

  Code reloc offset: 0000b650  // iCodeRelocOffset

  Data reloc offset: 00000000  // iDataRelocOffset

  Dll ref table count: 10  // iDllRefTableCount

  Offset Size Relocs #Relocs

  Code 00009c 00b0bc 00b650 00007d +002504 (entry pnt)

  // iCodeOffset = 00009c iCodeSize = 00b0bc iCodeRelocOffset = 00b650

  Data 000000 000000

  // iDataOffset iDataSize

  Bss 000000  // iBssSize

  Import 00b158  // iImportOffset

    全都在这了!!希望你能够喜欢这篇文章!

0

肥肉父子踢踏舞


一对另人欢快的父子,一开始评委还拿他们开涮,问儿子说:Do you worry that you may end up like your dad?(你是否担心将来会变得和你老爸一样?)结果Lagi当即回答:I am not glad to answer that.(我不高兴回答这样的问题)。

0

[转] OSI七层参考模型记忆方法


文章作者:Slyar
文章来源:Slyar Home (www.slyar.com)

开放系统互联参考模型-(Open System Interconnection)

OSI参考模型采用了分层的结构化技术,将功能逻辑上划分开来,以使整个结构具有较高的灵活性。OSI参考模型共七层。

应用层(Application Layer)

表示层(Presentation Layer)

会话层(Session Layer)

传输层(Transport Layer)

网络层(Network Layer)

数据链路层(Data Link Layer)

物理层(Physical Layer)

有一句英文可以巧妙记忆OSI七层参考模型:

All people seem to need data process.

(所有的人看起来都需要进行数据处理)

从上到下,每个单词的最前一个字母与每一个层相对应。

还有一句比较雷人的中文:

阿婆死踢你的屁

0

停止拖延!20个帮你摆脱萎靡的方法


咖啡因的效用消退了吗?不要让短暂的萎靡毁了你的一天。重新振作就是要在体力,精力和感情上都振作起来,让你更好的工作。

下面是20个摆脱萎靡,帮你完成工作的方法“

1.停止!-要么就继续集中精力工作,要么就完全停止你的工作,不要一边工作一边休息。 不要打开你的邮箱,回复读者的邮件或者浏览网页使你自己看起来很忙。放下你手头的工作几秒钟,闭上眼睛,呼吸。即使是一分钟也能够帮你重新集中注意力继续工作。

2.明确你的目标-花几秒钟的时间重新审视你想要达到的目标。看看你现在所做的与之相关工作能不能帮你达到更大的目的。

3.吃点水果-提高你身体的血糖。一个苹果比一根棒棒糖更能帮你提神,使你更有体力继续工作。

4.明确结束时间-你还要继续工作30分钟?一个小时?还是3个小时?如果你不知道结束工作需要的具体时间的话,就不能够使你全力以赴的工作。你要知道你还要坚持多久,这样你才可以集中注意力继续工作,并坚持到最后一分钟。

5.事后镐劳一下自己-找出一些你喜欢的东西,并告诉自己只要再完成那一部分工作就可以得到那个东西。不要提前奖赏你自己或者不给自己奖励。每个奖赏都会帮助你实现目标。忽视了奖赏就意味着你无法给自己足够的动力。

6.消除分散注意力的影响-切断宽带,关上门并在门上挂一个“请勿打扰”的标语,排除一切会干扰你工作的外在因素,直到你认为你可以集中注意力工作。关掉一切在接下来一到两个小时内你电脑可能会发出的任何提示。

7.发掘你的下一个目标-不要把你自己限制在一个无限的计划列表中。在你的计划表中写下下一个你要实现的目标。

8.衡量利益-在你的脑中衡量一下实现该目标会给你带来什么利益。你的任务能否能给你带来前进的动力。如果不能的话,是时候认真的思考一下既然他不能给你带来前进的动力,那么为什么你还将他做为你的首要任务来为之奋斗呢?

9.放音乐-我个人喜欢在我工作的时候放音乐,但是当我觉得太嘈的时候我就将它关掉,但是音乐真的是能够帮你再次集中注意力工作的很好的工具。但是要确保你喜欢的歌都在你的播放列表里,这样你就不必不断的转换音轨。

10.不要有一次做多种工作的想法-将注意力集中在一件事情上,不要一次做两件或者是二十件的事情。你集中注意力一个小时做的工作远远比你分心注意力工作二十个小时要多的多了。

11.头脑风暴-通过头脑风暴训练消除你的障碍。小小的头脑有氧操就会使你产生新的想法,锻炼你的思维。

12.变化任务-从逻辑工作转到创造性工作。从社会性工作转为个人性工作。不断的变换做不同的工作以此来刺激你不同的大脑区,使你更有效率的工作。

13.重新构思-改变你对现在工作的看法。你是在想象你眼前有一堆枯燥无味的工作任务呢还是只有一点点的工作?你的尽头是一片光明的前途还是黑暗无底的深渊?改变你对现有工作的看法,控制住你的情绪。

14.十分钟规则-只在这个问题上再花十分钟的时间。这是扫除思想障碍和一时干扰的有效方法。十分钟过后,你就可以决定你是否要继续完成这个工作,这个时候你的拖延问题也就会得到解决。

15.休息好-在长时间的工作之后,你还要继续工作的话,你的一些行为已经存在问题了。放下手中的工作,休息一下,将你的注意力从工作中转移,恢复一下精力。

16.做不同的工作 -换一份你喜欢,有创新和有趣的工作。你可以写另外一篇文章,或者你可以写一篇文章,而每段的副标题都是一首个的名字。将你的草坪修成圆形的或者在一排衣服里不要将所有的衣服都折成同一个形状。做不同的工作比你一直以来都做同一份工作要好而且有效率的多了。

17.设定时间-拿出一个计时器,将它设到六点,花一个小时的时间做你计划列表上要做的事情,然后开始!阅读这篇文章,获取如何在规定的时间内获得最大的工作效率的信息。

18.随意的活动-做一个游戏。在你的计划列表上写上一到六这几个数字,然后投掷骰子,掷出哪个数字你就完成那个数字列出来的工作。

19.消灭退路  -排除任何影响你工作的因素。将自己琐在房里一个小时并且把钥匙给你的朋友。将电脑的宽带线给你的朋友直至你完成工作。

20.“我耽搁了!”-对你自己大声的说这句话,有时候承认毛病是帮你改掉这个缺点最好的方法。

0

全新2009高校BBS上充满温馨的调情小笑话


1.装修房子,施工队太不负责,于是男友和他们吵起来,我过来劝架。
  男友:正好你来了,快靠墙站直喽——看见了吗,这才叫平!你那墙上贴的砖也敢叫平?!!
  施工队:……(日月光华)

  2.楼里一女生晾的文胸丢了,怒!在楼下黑板上挑衅道:我就不信我这E罩杯的文胸在咱楼还能有女生戴得上!”
  当晚,文胸挂在了宿舍门把上……(小百合)

  3.办公室里,导师怒吼道:“现在的大学生也太没素质了,上我电脑里拷毛片居然用剪切!”(我爱南开)

  4.MM:前几天我生你的气了!
  我:为啥?貌似我没惹到你啊。
  MM:那天我问你500万和恋人之间只能选一个,你选哪个,结果你选了500万,于是我就生气了。
  我:囧。然后呢?印象中我好像还没跟你道歉吧?
  MM:没,不过后来我想想,我也会选500万,所以现在我就原谅你了~
  我:……

  5.现在金融危机太离谱了,刚才面试后,等过会再打电话过去问点事,结果没想到连面试官都给裁掉了!(日月光华)

  6.春运的火车太挤了,旁边一MM实在扛不住了,就问我能不能挤挤坐一会。可3个人的座位都坐了4个人,而且座位之间的空档里还站了好些人,换我站这 么小的地方我站不下啊……正犹豫着呢,MM实在是累狠了,什么都不管了,“太累了,就坐你腿上吧。”就一屁股坐了下来,然后和我一边聊天一边打趣说:“其 实这样也不错,没想到我还能混个软座噢……”话音未落,MM起身惊呼道:“天呀,看来得意得太早了,软座变硬座啦~~~”(北大未名)

  7.刚才去老师办公室答疑,见老师边听佛教音乐边批卷子,问何故,答曰:“听着佛教音乐批卷子比较容易手下留情,要不然这群小兔崽子全都不及格!”-.-(水木清华)

  8.GG(紧张地):你对俺们寝室的老大有感觉吗?
  mm(局促地):没有。
  GG:那——你对老二有感觉吗?
  mm:这个…是有…还是没有啊?
  GG:这有没有你自己心里还不清楚嘛?
  mm:哦,那没有!
  GG(长长地舒了一口气):那你对我有感觉吗?
  mm:没有。
  GG:这个…可以有……
  mm:这个,真没有~(饮水思源)

  9.懒懒地躺在小床上,女友学广告里的声音撒娇道:“人家是你的优乐美嘛~”
  我一听两眼放光:啊,那太好了!来,快让我把管儿插进去!(水木社区)

  10.第一次亲热后,问MM感觉如何,却见MM红着脸拿出一张麦当劳的优惠券,我顿时心中大悦……(隐讳,日月光华)

  11.MM发短信问:日本忍者龟头受伤,你觉得是日本忍者比较可怜还是日本忍者龟可怜……(水木社区)

  12.学姐和一个gay合租。一天晚上回来,学姐心情很沮丧,然后那个gay就很体贴地给她烧了碗面吃,她觉得很温馨,于是很感动地说:“我们就这么凑合过算了~”没想到gay却从凳子上跳起来说道:“那可不行,你没男人要,我可有男人要的!”(郁金香)

  13.面试,HR不屑一顾地说:“这北大清华毕业的都有的是,你个破浙大的有啥可炫耀的!”只见MM很自信地指着自己的胸脯说:“浙大就是浙大,你服不?!!”(饮水思源)

  14.三个月前单位调来一小丫头,漂亮不说而且成天电话不断,一看就是一大帮追的那种。单位光棍围了一堆,就我对她不搭理。 一天要下班了,她终于忍不住过来对我说了一句让我终生难忘的话——她说:“黄大哥,别怪我嘴快,你要是生理上有病可要早治哦~”(饮水思源)

  15.一mm大清早4-5点钟去锻炼。那时候天还蒙蒙亮四处静悄悄, 忽然看见对面走过来一男的 见到mm就凶巴巴的问:你去干嘛?
  要不说清华学生脑子快呢,mm怕是遇到歹人,不想被劫财,遂说:“去借钱……”
  “借钱干嘛?”男子又凶巴巴的问。
  mm又怕被劫色,曰:“得了性病没钱治……”(水木社区)

  16.中午在家睡醒后吃了两桔子,吃完手指上黄黄的,也没洗手就直接去了学校。下午聊天,有个同学说:“你丫怎么这么恶心,拉完屎粘手指头上了也不 擦!”我说不是屎,是中午吃桔子搞的,说完还唆了唆手指。没过两天惨了,全校都知道我们学校有个拉屎用手指头擦屁股,等干了不时地唆了唆手指还说有桔子味 的同学……(郁金香)

  17.张艺谋:想不想来参演我执导的奥运会开幕式?
  mm:背景我不当!
  张:绝对给镜头!
  mm:没看见脸镜头就切过去的我不干!
  张:让你出场绝对超过一小时!
  mm:站着不动的我不来!
  张:保证让你蹦蹦跳跳!
  mm:这么好?那好,我答应了~
  被潜规则后,该mm在运动员入场式的欢迎啦啦队里跳了两个小时,哭成泪人……(水木社区)

  18.和学姐聊起以前她心仪已久但后来很长时间没联络的男孩。
  我:现在你俩联系上了,你就要主动地去追啊!
  学姐:我都这么大了,就别害人家啦~
  我:说不定他就盼着你去害他。
  学姐:我现在冷淡ing……
  我:再冷的水被扔进一块生石灰后也会爆发出强烈的能量!
  学姐:唉,那我这里的水这辈子也煮不开了……
  我:所以你需要找生石灰,也就是CaO~(日月光华)

  19.晚上10点多,一对小情侣在小区门口磨蹭。
  女孩:“今天我生日,你准备了什么浪漫的礼物给我呀?”
  男孩:“我让对面的楼都为你亮灯,所有车为你鸣笛怎么样?”
  女孩:“骗人,你有这么大本事?”
  男孩二话不说,不知从哪掏出个二踢脚在路边点着,只听咚~噹两声,在寂静的夜里显得格外响亮,对面楼里所有的声控灯都被震亮了,整栋楼灯火通明,楼下停的私车的警报被震的一片尖叫。
  结果女孩笑得花枝乱颤,幸福地投入男孩的怀抱……(水木社区)

  20.傍晚,一女学生在校门外散步,突然她发现地上有个钱包,于是弯腰去捡。这时,身后隐藏多时的小偷趁着夜色用一把特制的钳子一下剪断了她脖上的金 项链,然后转身溜了。女学生把钱包捡起来,发现里面什么也没有,就把钱包扔地上走了。小偷回去后很高兴,心想这下发了,这沉甸甸的金项链至少半两,于是到 金店去卖,哪知人家伙计一看,扬手就把金项链扔出大门,说:“电视购物里花198买的吧?假的!”小偷自尊心受到了极大的伤害,回到家越想越生气,气得晚 上睡不着觉。第二天小偷拿着假项链去学校门口堵那个女学生,结果还真把那人给堵着了。小偷二话没说,上去抽了她几个大耳光,然后把项链摔到地上气吭吭地指 着女学生骂道:“还大学生呢,你说你又贪财又虚荣,你他妈的什么人品!(日月光华)
to be continued

0

这些牌子你们穿吗?


1 梦特娇

国人非常认这个牌子,我也不知道为什么,号称法国品牌,一件T恤动轧上千,在2、3级城市尤其是有钱人的代名词。其实,这个牌子不过是在法国注册而已,在国外…算了不说了,此牌主攻中年人这个年龄段。

2 卡迪乐鳄鱼和鳄鱼恤
鳄鱼有很多种,什么头朝里的,头朝外的,张嘴的,闭嘴的…
  卡迪乐和香港的鳄恤基本和雅戈尔一个档次吧,有的款式却卖得和LACOSTE差不多价,这就有点不厚道了。
  鳄鱼,只有法国的LACOSTE最为正宗,最为出名。

3 ZARA
ZARA 业界称为时尚杀手,绝对一线大牌的款式,最低级的面料与保证1个月穿烂的工艺,每天以超音速的速度发货至各门店,顾客也是超音速的速度抢到身上,这个西班 牙品牌进入上海,非常受追捧。大家都以为这是国外大牌呢,价格也直追LEVI’S、G-STAR了,其实不过是西班牙的班尼路罢了。
这点,我觉得H&M做得不错,它进入上海后,价格依然还是那样,虽然它们家的衣服卖到了全世界,好莱坞明星也穿,不过没怎么黑我们中国人。

4 ONLY、 VERO MODA、JACK&JONES
这个来自丹麦BESTSELLER旗下的三个牌子在我们国家算赚到钱了 。不过价格越卖越贵,东西越做越差,无论做工、面料还是设计,而且在国外,也就是班尼路吧~~

5 ESPRIT
这家公司也厉害!总部在香港,品牌授权给各个行业。这个我们不说了。单说服装类,价格正价也超贵,直逼CK JEANS了,也没见东西好到哪去,全场5折,一件长袖TEE也要200+,我怎么觉得还不值呢~~~~~~

6 马克华菲
这个…其实我不太想说的。因为毕竟是国产品牌(怎么?你不知道??)
它是七匹狼旗下的品牌,风格和JACK&JONES非常像,价格卖得比JJ还贵!好在喜欢打折,打完折后的东西值那个价!

7 PORTS 宝姿
是的,你没看错!这个在国内时尚杂志喜欢跟DIOR、夏奈尔站在一起的牌子其实只能在亚洲混混。
  它注册在加拿大,好像是几个亚洲人注册的,我记不清了。但它的运作极为成功。欧美的专卖店很少,几乎绝大部分的专卖店都开在亚洲,在国内,几乎所有的高档商场都有它的专柜,它的服装定价真正标的是一线大牌的价格,你不服不行。剩下的,我不想说了,你自己想吧~

8 GAP
这个牌子在美国本土,是真正的美利坚班尼路。此牌子来到中国就不再那么价廉了,价格上扬了好多。
  其实它家东西质量还可以,不过不款式出挑,就是学生穿的,没必要在中国卖这么贵吧??

9 ELAND
这个是韩国的品牌。不过老喜欢在店里贴欧美的学生模特,把自己拌成英伦风格。这家衣恋公司,以前好像也是做出口外单的,后来把自己的品牌打响了,来中国后,价格一直不便宜。东西呢,见仁见智。

10 Rapido
这个牌子是韩国三星旗下的在中国,这个牌子的特点的价格坚挺,极少打折,东西没什么技术含量。

11 KAPPA
这个在意大利档次很低的牌子字最近在国内不知道为啥火起来了~~它跟AD NIKE,PUMA(别说我把他们抬高了,在国外这些虽然也不是什么高档的~~可能跟中国的李宁差不多吧~~但至少比KAPPA强很多!!)~~等,都差一个的档次,结果标价还跟他们相当。

12 CONVERSE
自从被NIKE收购后一路狂涨 长青款从185涨到了238 还有400 500的!注意是布鞋!!!还不是皮的!你贵也就算了 质量还差 一个月保证脱胶 两个月基本开口!

Random Posts Recent Comments

  • 女友糖尿病害我蛀牙 Says:

    汗一个…...

  • Htj06 Says:

    zhenyouchuangyi...

  • 电商圈 Says:

    试图该怎么建立啊,,怎在程序中是吸纳...

  • edward Says:

    看得人心旷神怡,好文,情不自禁的顶一下...

  • Daniel Says:

    我也在处理这个问题,没有找到好的方法。我用了楼上兄弟的方法,还是可以的。不知道您找到好的方法了吗、我暂时楼上兄弟的方法。...

  • 卡,卡 Says:

    弱弱问一句:博主,你博客的模板这样设计pv高吗?...

  • 站长工具 Says:

    博主,兔年快乐!...

  • health Says:

    great post!!I hope I can read more in your website....

  • pdu Says:

    好博文,支持分享...

  • 站长工具 Says:

    博主的文章很不错,我是站长工具-站长精灵的作者,一款专业的SEO工具软件(可以帮您提高博客的流量),想跟您交换个链接,不知可否...

Tag Cloud

arm audio blog brew cache class debug flash google html j2me java javascript Joke linux lua mobile mtk php python ror ruby server shell stream unix web windows 优化 动态加载 女人 女生 平台 开发 手机 技术 流媒体 测试 漫画 生活 男人 男生 缓存 芯片