久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

U盤枚舉(自己總結)

時間:2019-05-15 09:45:36下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《U盤枚舉(自己總結)》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《U盤枚舉(自己總結)》。

第一篇:U盤枚舉(自己總結)

插入U盤

直接拔出

安全拔出

A9枚舉

Linux USB gadget設備驅動解析(2)---驅動調試 作者:劉洪濤, 華清遠見嵌入式學院金牌講師。

這一節主要把在實現“linuxU盤功能”過程中的一些調試過程記錄下來,并加以解析。

一、背景知識

1、USB Mass Storage類規范概述

USB 組織在universal Serial Bus Mass Storage Class Spaceification 1.1版本中定義了海量存儲設備類(Mass Storage Class)的規范,這個類規范包括四個

獨立的子類規范,即:

1.USB Mass Storage Class Control/Bulk/Interrupt(CBI)Transport 2.USB Mass Storage Class Bulk-Only Transport 3.USB Mass Storage Class ATA Command Block 4.USB Mass Storage Class UFI Command Specification 前 兩個子規范定義了數據/命令/狀態在USB 上的傳輸方法。Bulk-Only 傳輸規范僅僅使用Bulk 端點傳送數據/命令/狀態,CBI 傳輸規范則使用Control/Bulk/Interrupt 三種類型的端點進行數據/命令/狀態傳送。后兩個子規范則定義了存儲介質的操作命令。ATA 命令規范用于硬盤,UFI 命令規范是針對USB 移動存儲。Microsoft Windows 中提供對Mass Storage 協議的支持,因此USB 移動設備只需要遵循 Mass Storage 協議來組織數據和處理命令,即可實現與PC 機交換數據。而Flash 的存儲單元組織形式采用FAT16 文件系統,這樣,就可以直接在Windows的瀏覽器中通過可移動磁盤來交換數據了,Windows 負責對FAT16 文件系統的管理,USB 設備不需要干預FAT16 文件系統操作的具體細節。

USB(Host)唯一通過描述符了解設備的有關信息,根據這些信息,建立起通信,在這 些描述符中,規定了設備所使用的協議、端點情況等。因此,正確地提供描述符,是USB 設備正常工作的先決條件。

Linux-2.6.26內核中在利用USB gadget驅動實現模擬U盤時主要涉及到file_storage.c、s3c2410_udc.c等驅動文件(這些文件的具體結構,將在下一篇文章中 描述)。此時我們想先從這些代碼中找到USB描述描述符,從中確定使用的存儲類規范,從而確定協議。確定通訊協議是我們調試的基礎。存儲類規范是由接口描述符決定的。接口描述符各項的定義義如下:

其中,bInteaceClass、bInterfaceSubClass、bInterfaceProtocol可以判斷出設備是否是存儲類,以及屬于哪種存儲子類和存儲介質的操作命令。在file_storage.c文件中,/* USB protocol value = the transport method */ #define USB_PR_CBI 0x00 // Control/Bulk/Interrupt #define USB_PR_CB 0x01 // Control/Bulk w/o interrupt #define USB_PR_BULK 0x50 // Bulk-only /* USB subclass value = the protocol encapsulation */ #define USB_SC_RBC 0x01 // Reduced Block Commands(flash)#define USB_SC_8020 0x02 // SFF-8020i, MMC-2, ATAPI(CD-ROM)#define USB_SC_QIC 0x03 // QIC-157(tape)#define USB_SC_UFI 0x04 // UFI(floppy)#define USB_SC_8070 0x05 // SFF-8070i(removable)#define USB_SC_SCSI 0x06 // Transparent SCSI 默認的情況是:

mod_data = { // Default values.transport_parm = “BBB”,.protocol_parm = “SCSI”, ??

默認的賦值如下:

bInterfaceClass=08 表示:存儲類

bInterfaceSubClass=0x06 表示:透明的SCSI指令 bInterfaceProtocol=0x50 表示:bulk-only 傳輸

2、Bulk-Only 傳輸協議

下面看看Bulk-Only 傳輸協議:(詳細的規范請閱讀《Universal Serial BusMass Storage ClassBulk-Only Transport》)

設 備插入到USB 后,USB 即對設備進行搜索,并要求設備提供相應的描述符。在USBHost 得到上述描述符后,即完成了設備的配置,識別出為Bulk-Only 的Mass Storage 設備,然后即進入Bulk-Only 傳輸方式。在此方式下,USB 與設備間的所有數據均通過Bulk-In和Bulk-Out 來進行傳輸,不再通過控制端點傳輸任何數據。

在 這種傳輸方式下,有三種類型的數據在USB 和設備之間傳送,CBW、CSW 和普通數據。CBW(Command Block Wrapper,即命令塊包)是從USB Host 發送到設備的命令,命令格式遵從接口中的bInterfaceSubClass 所指定的命令塊,這里為SCSI 傳輸命令集。USB設備需要將SCSI 命令從CBW 中提取出來,執行相應的命令,完成以后,向Host 發出反映 當前命令執行狀態的CSW(Command Status Wrapper),Host 根據CSW 來決定是否繼續發 送下一個CBW 或是數據。Host 要求USB 設備執行的命令可能為發送數據,則此時需要將 特定數據傳送出去,完畢后發出CSW,以使Host 進行下一步的操作。USB 設備所執行的操

作可用下圖描述:

CBW的格式如下:

dCBWSignature:

CBW的標識,固定值:43425355h(little endian)。dCBWTag:

主機發送的一個命令塊標識,設備需要原樣作為dCSWTag(CSW中的一部分)再發送給Host;主要用于關聯CSW到對應的CBW。dCBWDataTransferLength:

本次CBW命令要求在命令與回應之間傳輸的字節數。如果為0,則不傳輸數據。bmCBWFlags:

反映數據傳輸的方向,0 表示來自Host,1 表示發至Host; bCBWLUN:

對于有多個LUN邏輯單元的設備,用來選擇具體目標。如果沒有多個LUN,則寫0。

bCBWCBLength:

命令的長度,范圍在0~16.CBWCB:

傳輸的具體命令,符合bInterfaceSubClass.中定義的命令規范,此處是SCSI CSW命令格式如下:

dCSWSignature:

CSW的標識,固定值:53425355h(little endian)dCSWTag:

設置這個標識和CBW中的dCBWTag一致,參照上面關于dCBWTag的解釋 dCSWDataResidue:

還需要傳送的數據,此數據根據dCBWDataTransferLength-本次已經傳送的數據得到

bCSWStatus:

指示命令的執行狀態。如果命令正確執行,bCSWStatus 返回0 即可。

3、SCSI指令集

Bulk-Only 的CBW 中的CBWCB 中的內容即為如下格式的命令塊描述符(Command Block Descriptor)。SCSI-2 有三種字長的命令,6 字節、10字節和12字節,Microsoft Windows 環境下支持12 字節長的命令。

Operation Code:

操作代碼,表示特定的命令。高3 位為Group Code,共有8 種組合,即8 個組,低5 五位為Command Code,可以有32 種命令。Logicol unit Number:

為了兼容SCSI-1 而設的,此處可以不必關心。Logical block address:

為高位在前,低位在后的邏輯塊地址,即扇區地址。第2 位為高位,第3、4、5 依次為低位。

Transfer length:

為需要從邏輯塊地址處開始傳輸的扇區數(比如在Write 命令中)。Parameter list length:

為需要傳輸的數據長度(比如在Mode Sense 命令中); Allocation length:

為初始程序為返回數據所分配的最大字節數,此值可以為零,表示不需要傳送數據。

SCSI指令集的Direct Accesss 類型存儲介質的傳輸命令有許多,Mass Storage協議只用到了其中的一些。更多的SCSI指令參見:http://en.wikipedia.org/wiki/SCSI_command 指令代碼 指令名稱 說明

04h Format Unit 格式化存儲單元 12h Inquiry 索取器件信息 1Bh Start/Stop load/unload 55h Mode select 允許Host對外部設備設置參數。5Ah Mode Sense 向host傳輸參數 Eh Prevent/Allow Medium Removal 寫保護

>28h Read(10)Host讀存儲介質中的二進制數據 A8h Read(12)同上,不過比較詳細一點 25h Read Capacity 要求設備返回當前容量

23h Read Format Capacity 查詢當前容量及可用空間 03h Request Sense 請求設備向主機返回執行結果,及狀態數據

01h Rexero Unit 返回零軌道 2Bh Seek(10)為設備分配到特定地址 1Dh Send Diagnostic 執行固件復位并執行診斷

00h Test Unit Ready 請求設備報告是否處于Ready狀態 2Fh Verify 在存儲中驗證數據

2Ah Write(10)從主機向介質寫二進制數據 AAh Write(12)同上,不過比較詳細 2Eh Write and Verify 寫二進制數據并驗證

對于不同的命令,其命令塊描述符略有不同,其要求的返回內容也有所不同,根據相 應的文檔,可以對每種請求作出適當的回應。比如,下面是INQUIRY 請求的命令塊描述符和其返回內容的數據格式:如:INQUIRY 命令描述符:

返回數據格式

Host 會依次發出INQUIRY、Read Capacity、UFI Mode Sense 請求,如果上述請求的返回結果都正確,則Host 會發出READ 命令,讀取文件系統0 簇0 扇區的MBR 數據,進入文件系統識別階段。

4、利用USB View觀察結果

可通過USB View軟件查看到USB設置階段獲取到的信息。

二、出現的主要問題

在調試過程中遇到了一個問題。現象是:在目標板加載完驅動后,即執行完: # insmod g_file_storage.ko file=“/dev/mtdblock2” stall=“0” removable=“1” 后,接好USB線。此時在windows端設備出有usb storage設備加入,但出現不了盤符。

下面記錄下調試過程。

三、調試過程

根據規范,當完成SCSI指令集中Inquiry 命令時,可以出現盤符。所以可以通過bushound軟件查看通訊過程,找出原因。下面是利用bushound工具在出現問題時采集到的數據。

Dev Phase Data Info Time Cmd.Phase.Ofs------------------------------------26 CTL 80 06 00 0100 00 00 1012 03 01 02........%.......4.8ms 1.2.0 03 01..1.2.16 26 CTL 80 06 00 0201 01 04 c000 00 20 00 GET DESCRIPTR 16us 3.1.0 26 DI 09 02 20 0001 09 04 0081 02 40 0002 40 00 00 P.....@......@..3.2.16 26 CTL 80 06 00 0301 01 04 c000 00 04 00 GET DESCRIPTR 15us 5.1.0 26 DI 04 03 09 04....3.9ms 6.1.0 26 CTL 80 06 03 0309 04 1a 00 GET DESCRIPTR 18us 7.1.0 26 DI 1a 03 33 0030 00 34 0037 00 37 0000 00 00 00 SET CONFIG 16us 8.1.0 26 CTL 01 0b 00 0000 00 01 00 CLASS 62ms 10.1.0 26 DI 00.3.9ms 10.2.0 26 DO 55 53 42 4324 00 00 0000 00 00 0000 00 00...$...........11.1.16 26 DI 00 80 02 024c 69 6e 752d 53 74 6f64 67 65 74 File-Stor Gadget 12.1.16 30 33 31 32 0312 12.1.32 26 CTL 80 06 00 0201 01 04 c000 02 08 06...............4.1ms 13.2.0 50 05 07 0500 07 05 0200 00 20 00 GET DESCRIPTR 2.7sc 14.1.0 26 DI 09 02 20 0001 09 04 0081 02 40 0002 40 00 00 P.....@......@..14.2.16 26 USTS 05 00 00 c0 no response 2.8sc 15.1.0 注意上面紅色部分的代碼,DO發出了55 53 42 43開 始的CBW命令塊,命令碼是12,即Inquiry命令。要求目標返回Inquiry命令要求的數據,長度是0x24。接下來設備端通過DI返回了設備信 息。按照規范,在返回完了數據后,設備端還應該通過DI向系統返回CSW的值。但實際的捕獲內容并沒有。所以導致不能正確出現盤符。

在file_storage.c中,發送數據時都會調用到start_transfer()函數。在此函數中加入printk調試語句,觀察現象。發現只要加入的調試語句,windows端就能夠正常設別設備了。于是,可以猜測是因為需要在連續 兩次發送之間加上一些延時。在函數中加入udelay(800)后,windows系統可以正常發現設備了。具體的代碼架構,將在下一遍文章中解析。下面是程序正常后,用bushound捕獲到的數據。

紅色部分,可以看出設備正確的按照規范在發送完數據后,返回CSW信息。

四、總結做好USB gadget驅動、或者USB host驅動調試需要: ·掌握一定的知識基礎

包括:USB協議、具體的類設備規范、USB驅動程序架構、USB設備端控制器操作等。·合理利用調試工具。

包括:USB view、bushound、及一些硬件USB信號分析儀。

一、追蹤USB大容量設備的實現流程

1、從main.c開始

(1)main函數的執行流程

Set_System();//設置時鐘、端口等。

Set_USBClock();//設置usb的時鐘

USB_Interrupts_Config();//設置中斷

Led_Config();//設置所使用的到的燈。

MSD_Init();//SD卡初始化

Get_Medium_Characteristics();//獲取SD塊總數、每塊字節數。

USB_Init();//USB_init.c提供的初始化函數。從這里開始USB設備被主機檢測到。

while(1)

{ //USB的工作都是在中斷中完成的,主執行流程什么也沒做。

}

(2)與鼠標例程不同的地方

在中斷配置中,使能了USB高優先級中斷。

NVIC_InitStructure.NVIC_IRQChannel= USB_HP_CAN_TX_IRQChannel;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_Init(&NVIC_InitStructure);

用到了幾個燈指示,這個我的開發板上用不到,就不詳細看了。

MSD_Init(),是對SD卡進行初始化。該函數在msd.c中,我看了一下它的SD卡實現的代碼,比我的SD函數代碼齊整多了。以后有時間要把我的USB驅動好好的整理一下。不過現在就先不管了。

接下來這個函數獲取SD卡的容量,這樣的函數我在SD卡驅動中也實現了,改變一下調用方式就行了。

USB_Init()函數在usb_init.c庫函數中,但它最終會調用user_prop.c宏的用戶初始化例程。下面就追蹤進去看一看。

(3)大容量存儲設備的初始化

void MASS_init()

{ pInformation->Current_Configuration = 0;

PowerOn();連接電纜主機很快發總線復位。

_SetISTR(0);

wInterrupt_Mask = IMR_MSK;

_SetCNTR(wInterrupt_Mask);開啟復位和傳輸中斷。

pInformation->Current_Feature = MASS_ConfigDescriptor[7];

while(pInformation->Current_Configuration == 0)

{

NOP_Process();

}

bDeviceState = CONFIGURED;//這句執行完成后,設備處于已配置狀態。我先在這里加一句調試語句。

#if usb_debug

Uart_PutString(“設備已配置”);

#endif

}

2、進入復位中斷

(1)先列出中斷處理代碼

發生總線復位中斷以后,處理是在usb_prop.c的Mass_Reset()函數中完成的。

void MASS_Reset(){

Device_Info.Current_Configuration = 0;

SetBTABLE(BTABLE_ADDRESS);

SetEPType(ENDP0, EP_CONTROL);//端點0控制端點

SetEPTxStatus(ENDP0, EP_TX_NAK);//不響應IN

SetEPRxAddr(ENDP0, ENDP0_RXADDR);//設置接收緩沖區(OUT)

SetEPRxCount(ENDP0, Device_Property.MaxPacketSize);接收長度。

SetEPTxAddr(ENDP0, ENDP0_TXADDR);//發送緩沖區(IN)

Clear_Status_Out(ENDP0);

SetEPRxValid(ENDP0);//使能端點0的接收。

SetEPType(ENDP1, EP_BULK);//端點1批量模式

SetEPTxAddr(ENDP1, ENDP1_TXADDR);//設置發送緩沖區(IN)

SetEPTxStatus(ENDP1, EP_TX_NAK);發送不響應。

SetEPRxStatus(ENDP1, EP_RX_DIS);//接收無效。對OUT無效

SetEPType(ENDP2, EP_BULK);//端點2批量模式

SetEPRxAddr(ENDP2, ENDP2_RXADDR);//設置接收緩沖區OUT

SetEPRxCount(ENDP2, Device_Property.MaxPacketSize);

SetEPRxStatus(ENDP2, EP_RX_VALID);

SetEPTxStatus(ENDP2, EP_TX_DIS);//發送無效,對IN無效

SetDeviceAddress(0);//使能USB接口模塊。

CBW.dSignature = BOT_CBW_SIGNATURE;

Bot_State = BOT_IDLE;//命令狀態機初始化為空閑狀態

}

在這里沒有我沒有看到將批量端點設置為雙緩沖模式的跡象,難道這個例程沒有用它?

3、進入枚舉過程

因為在鼠標例程中已經詳細分析過枚舉過程,這里主要是大容量設備枚舉過程中不同的地方做一下分析。

(1)獲取設備描述符、設置地址。

(2)獲取配置描述符

(3)獲取配置描述符集合,這里主要講接口描述符分析一下。

0x09, /* bLength: Interface Descriptor size */

0x04, /* bDescriptorType: */

0x00, /* bInterfaceNumber: Number of Interface */

0x00, /* bAlternateSetting: Alternate setting */

0x02, /* bNumEndpoints*/ 使用兩個端點

0x08, /* bInterfaceClass: MASS STORAGE Class,大容量存儲類 */

0x06, /* bInterfaceSubClass : SCSI transparent,SCSI傳輸*/

0x50, /* nInterfaceProtocol,僅批量傳輸*/ 4, /* iInterface: */

(4)獲取字符串描述符

(5)類請求實現:

類獲取邏輯盤:

一般返回0

類請求復位:

ClearDTOG_TX(ENDP1);

ClearDTOG_RX(ENDP2);

CBW.dSignature = BOT_CBW_SIGNATURE;

Bot_State = BOT_IDLE;

(6)設置配置

在用戶設置的回調函數中,又調用

void Mass_Storage_SetConfiguration(void)

{

if(pInformation->Current_Configuration)

{

ClearDTOG_TX(ENDP1);

ClearDTOG_RX(ENDP2);

Bot_State = BOT_IDLE;}

} 這個工作前面已經做過了。

4、主機發命令INQUIRY

(1)首先進入批量輸出中斷

該中斷的回調函數調用Mass_Storage_Out()進行處理。

(2)追蹤進入Mass_Storage_Out()

void Mass_Storage_Out(void)

{

u8 CMD;

CMD = CBW.CB[0];//

Data_Len = GetEPRxCount(ENDP2);

PMAToUserBufferCopy(Bulk_Data_Buff,ENDP2_RXADDR, Data_Len);

switch(Bot_State)

{

case BOT_IDLE:

CBW_Decode();//第一次收到命令肯定調用這個解碼函數。

break;//它的作用應該是填充CBW命令塊封包結構

case BOT_DATA_OUT:

if(CMD == SCSI_WRITE10)

{

SCSI_Write10_Cmd();

break;

}

}

(3)追蹤進入CBW_Decode()

這個函數的代碼較長,我就不列舉在這里了,我就分析一下本次的主要工作。

首先將用戶緩沖區的數據復制到命令封包結構里面。

然后準備好狀態封包結構:

CSW.dTag = CBW.dTag;//這個標志由主機生成,可以用于檢查設備是否正確收到該命令。

CSW.dDataResidue = CBW.dDataLength;

然后主要是根據命令操作碼,調用相應的SCSI命令處理函數。

switch(CBW.CB[0])

{

case SCSI_REQUEST_SENSE:

SCSI_RequestSense_Cmd();

break;

case SCSI_INQUIRY:

SCSI_Inquiry_Cmd();

break;

我這里就列出了兩項,實際的命令是很多的。本次主要是查詢處理。

(4)追蹤進入SCSI_Inquiry_Cmd()

以上函數是在usb_bot.c里面,現在跳轉到usb_scsi.c里面。

這個函數的主要工作是調用Transfer_Data_Request(Inquiry_Data, Inquiry_Data_Length)來完成。

這個Inquiry_Data = Standard_Inquiry_Data,后面這個Standard_Inquiry_Data是scsi_data.c里面定義的一個數據結構,專門用于inquiry命令的返回。

u8 Standard_Inquiry_Data[] =

{

0x00, /* Direct Access Device */

0x80, /* RMB = 1: Removable Medium */

0x02, /* Version: No conformance claim to standard */

0x02, //這里圈圈的書上說應該為 0x01

36BULK_MAX_PACKET_SIZE;

Block_offset = BULK_MAX_PACKET_SIZE;

}

else

{

UserToPMABufferCopy(Data_Buffer + Block_offset, ENDP1_TXADDR, BULK_MAX_PACKET_SIZE);

Block_Read_count-= BULK_MAX_PACKET_SIZE;

Block_offset += BULK_MAX_PACKET_SIZE;

}

SetEPTxCount(ENDP1, BULK_MAX_PACKET_SIZE);SetEPTxStatus(ENDP1, EP_TX_VALID);

Memory_Offset += BULK_MAX_PACKET_SIZE;

Transfer_Length-= BULK_MAX_PACKET_SIZE;//剩下的需要傳輸的字節數。

CSW.dDataResidue-= BULK_MAX_PACKET_SIZE;

Led_RW_ON();

}

這里不清楚的是主機是一次把512字節讀完,還是每次發一個命令讀取64字節。我覺得應該是發一次讀命令,8次“IN”讀取一個扇區,再發一個“IN”讀取命令狀態封包。

8、寫命令WRITE(10)

這個命令的處理過程跟讀命令的處理差不多,只是最后它會調用Write_Memory()進行處理。

i = 0;

for(;Counter < temp;Counter++)

{

Data_Buffer[Counter] = Bulk_Data_Buff[i];

i++;

}

從接受緩沖區得到的數據總是先放到用戶緩沖區,這個緩沖區有512個字節。

if(!(Transfer_Length % 512))

{

Counter = 0;

MSD_WriteBlock(Data_Buffer, Memory_OffsetInquiry之后會發出ReadFormatCapacity命令,這個命令在SCSI規范中是“廠家自定義命令”,可以參考UFI命令集文檔(實際上,U盤所使用的所有SCSI命令集都可以參考UFI文檔,它比SCSI標準文檔更簡潔明了)。注意這個命令在BusHound里是沒有描述的,必須在“Device”選項頁里勾選上這個U盤所對應的USB Mass Storage Device這個節點,才能看到這個命令的數據流。

-ReadFormatCapacity之后會發出ReadCapacity命令。

-U盤讀數據(讀扇區)時會發送Read(10)。ReadCapacity完成后就會發送Read(10)讀取U盤的第一個扇區。

-U盤寫數據時(寫扇區)會發送Write(10)。

-TestUnitReady會在無其他數據傳輸時會定時發送,如果設備沒有回應成功的CSW給主機,則主機認為設備已不存在。此時如果再雙擊磁盤圖標,Windows會提示“請插入磁盤”。RequestSense:如果CSW指示此次傳輸不成功,那么主機會發出此請求。ModeSense6/10這兩個命令可以不支持(不支持不代表不反應,任何一個命令你都要做出反應,對于不支持的命令,可以通過STALL握手來向主機表明),暫時也未遇到過什么異常情況,而且我查看過一些U盤,有相當一部分就是隨便回了幾個數據給主機。這兩個命令只會在U盤插入后發送一次,此后不再發送。

U盤開發的幾點體會

如果你開發過USB相關項目,理解USB的一些基本概念,例如設備描述符、配置描述符、子類規范等,那么開發U盤只要概念清晰應該不難。以下是我開發過程中的幾個相關步驟:

? ? ? ? ? ? ? 保證USB 芯片正常工作,用其他USB成功項目驗證硬件連接及固件的正確性

按Mass Storage協議 Bulk-Only 模式提供描述符,使PC 機控制面板上設備類型出現Mass Storage Device 響應SCSI指令集中Inquiry 命令,可以出現盤符 實現FAT16文件系統

處理SCSI命令集中READ命令及其他UFI命令,可以訪問盤符 處理SCSI命令集中WRITE命令 U盤開發成功

開發U盤有三個工具軟件應該必備:USBVIEW 察看設備描述符,端點測試等;BUSHOUND 截取USB總線數據,可分析UFI命令及U盤返回的數據流;串口助手可實時了解U盤所收命令流及程序流程由于每個人知識面不同,我想實現上面的幾個步驟遇到的問題也不一樣。對我最大的困惑是實現FAT16文件系統,直到在微軟網站找到它的白皮書才算解惑。這里簡介一下方便大家有的放矢。USB 組織定義了海量存儲設備類(Mass Storage Class)的規范,這個類規范包括四個獨立的子類規范,即:

1.USB Mass Storage Class Control/Bulk/Interrupt(CBI)Transport 2.USBMass Storage Class Bulk-Only Transport 3.USB Mass Storage Class ATA Command Block 4.USB Mass Storage Class UFI Command Specification。

前兩個子規范定義了數據/命令/狀態在USB 上的傳輸方法。Bulk-Only 傳輸規范僅僅使用Bulk 端點傳送數據/命令/狀態,CBI 傳輸規范則使用Control/Bulk/Interrupt三種類型的端點進行數據/命令/狀態傳送。后兩個子規范則定義了存儲介質的操作命令。ATA 命令規范用于硬盤,UFI 命令規范是針對USB 移動存儲。

Windows95 OSR2和Windows 98開始支持FAT32 文件系統,它是對早期DOS的FAT16文件系統的增強,由于文件系統的核心--文件分配表FAT由16位擴充為32位,所以稱為FAT32文件系統。在一邏輯盤(硬盤的一分區)超過 512 兆字節時使用這種格式,會更高效地存儲數據,減少硬盤空間的浪費,一般還會使程序運行加快,使用的計算機系統資源更少,因此是使用大容量硬盤存儲文件的極有效的系統。本人對Windows 98下的FAT32 文件系統做了分析實驗,總體上與FAT16文件系統變化不大,現將有關變化部分簡介如下:

(一)FAT32 文件系統將邏輯盤的空間劃分為三部分,依次是引導區(BOOT區)、文件分配表區(FAT區)、數據區(DATA區)。引導區和文件分配表區又合稱為系統區。

(二)引導區從第一扇區開始,使用了三個扇區,保存了該邏輯盤每扇區字節數,每簇對應的扇區數等等重要參數和引導記錄。之后還留有若干保留扇區。而FAT16文件系統的引導區只占用一個扇區,沒有保留扇區。

(三)文件分配表區共保存了兩個相同的文件分配表,因為文件所占用的存儲空間(簇鏈)及空閑空間的管理都是通過FAT實現的,FAT如此重要,保存兩個以便第一個損壞時,還有第二個可用。文件系統對數據區的存儲空間是按簇進行劃分和管理的,簇是空間分配和回收的基本單位,即,一個文件總是占用若干個整簇,文件所使用的最后一簇剩余的空間就不再使用,而是浪費掉了。

從統計學上講,平均每個文件浪費0.5簇的空間,簇越大,存儲文件時空間浪費越多,利用率越低。因此,簇的大小決定了該盤數據區的利用率。FAT16系統簇號用16位二進制數表示,從0002H到FFEFH個可用簇號(FFF0H到FFFFH另有定義,用來表示壞簇,文件結束簇等),允許每一邏輯盤的數據區最多不超過FFEDH(65518)個簇。FAT32系統簇號改用32位二進制數表示,大致從00000002H到FFFFFEFFH個可用簇號。FAT表按順序依次記錄了該盤各簇的使用情況,是一種位示圖法。每簇的使用情況用32位二進制填寫,未被分配的簇相應位置寫零;壞簇相應位置填入特定值;已分配的簇相應位置填入非零值,具體為:如果該簇是文件的最后一簇,填入的值為FFFFFF0FH,如果該簇不是文件的最后一簇,填入的值為該文件占用的下一個簇的簇號,這樣,正好將文件占用的各簇構成一個簇鏈,保存在FAT表中。0000000H、00000001H兩簇號不使用,其對應的兩個DWORD位置(FAT表開頭的8個字節)用來存放該盤介質類型編號。FAT表的大小就由該邏輯盤數據區共有多少簇所決定,取整數個扇區。

(四)FAT32系統一簇對應8個邏輯相鄰的扇區,理論上,這種用法所能管理的邏輯盤容量上限為16TB(16384GB),容量大于16TB時,可以用一簇對應16個扇區,依此類推。FAT16系統在邏輯盤容量介于128MB到256MB時,一簇對應8個扇區,容量介于256MB到512MB時,一簇對應16個扇區,容量介于512MB到1GB時,一簇對應32個扇區,容量介于1GB到2GB時,一簇對應32個扇區,超出2GB的部分無法使用。顯然,對于容量大于512MB的邏輯盤,采用FAT32的簇比采用FAT16的簇小很多,大大減少了空間的浪費。

但是,對于容量小于512MB的盤,采用FAT32雖然一簇8個扇區,比使用FAT16一簇16個扇區,簇有所減小,但FAT32的FAT表較大,占用空間較多,總數據區被減少,兩者相抵,實際并不能增加有效存儲空間,所以微軟建議對小于512M的邏輯盤不使用FAT32。

另外,對于使用FAT16文件系統的用戶提一建議,硬盤分區時,不要將分區(邏輯盤)容量正好設為某一區間的下限,例:將一邏輯盤容量設為1100M(稍大于1024M),則使用時其有效存儲容量比分區為950M的一般還少,因其簇大一倍,浪費的空間較多。還有,使用FDISK等對分區指定容量時,由于對1MB的定義不一樣(標準的二進制的1MB為1048576B,有的系統將1MB理解為1000000B,1000KB等),及每個分區需從新磁道開始等因素,實際分配的容量可能稍大于指定的容量,亦需注意掌握。

(五)根目錄區(ROOT區)不再是固定區域、固定大小,可看作是數據區的一部分。因為根目錄已改為根目錄文件,采用與子目錄文件相同的管理方式,一般情況下從第二簇開始使用,大小視需要增加,因此根目錄下的文件數目不再受最多512的限制。FAT16文件系統的根目錄區(ROOT區)是固定區域、固定大小的,是從FAT區之后緊接著的32個扇區,最多保存512個目錄項,作為系統區的一部分。

(六)目錄區中的目錄項變化較多,一個目錄項仍占32字節,可以是文件目錄項、子目錄項、卷標項(僅跟目錄有)、已刪除目錄項、長文件名目錄項等。目錄項中原來在DOS下保留未用的10個字節都有了新的定義,全部32字節的定義如下:

(1)0--7字節 文件正名。(2)8--10字節 文件擴展名。

(3)11字節 文件屬性,按二進制位定義,最高兩位保留未用,0至5位分別是只讀位、隱藏位、系統位、卷標位、子目錄位、歸檔位。

(4)12--13字節 僅長文件名目錄項用,用來存儲其對應的短文件名目錄項的文件名字節校驗和等。(5)14--15字節 24位二進制的文件建立時間,其中的高5位為小時,次6位為分鐘。

(6)16--17字節 16位二進制的文件建立日期,其中的高7位為相對于1980年的年份值,次4位為月份,后5位為月內日期。

(7)18--19字節 16位二進制的文件最新訪問日期,定義同(6)。(8)20--21字節 起始簇號的高16位。

(9)22--23字節 16位二進制的文件最新修改時間,其中的高5位為小時,次6位為分鐘,后5位的二倍為秒數。

(10)24--25字節 16位二進制的文件最新修改日期,定義同(6)。(11)26--27字節 起始簇號的低16位。(12)28--31字節 32位的文件字節長度。

其中第(4)至(8)項為以后陸續定義的。對于子目錄項,其(12)為零;已刪除目錄項的首字節值為E5H。在可以使用長文件名的FAT32系統中,文件目錄項保存該文件的短文件名,長文件名用若干個長文件名目錄項保存,長文件名目錄項倒序排在文件短目錄項前面,全部是采用雙字節內碼保存的,每一項最多保存十三個字符內碼,首字節指明是長文件名的第幾項,11字節一般為0FH,12字節指明類型,13字節為校驗和,26--27字節為零。

(七)以前版本的 Windows 和DOS與 FAT32 不兼容,不能識別FAT32分區,有些程序也依賴于 FAT16文件系統,不能和 FAT32 驅動器一道工作。將硬盤轉換為 FAT32,就不能再用雙引導運行以前版本的Windows(Windows 95 [Version 4.00.950]、Windows NT 3.x、Windows NT 4.0 和 Windows 3.x)。

磁盤結構綜述 1.硬盤結構

硬盤的內部是由圓形金屬片堆疊起來的,每個盤片的兩面都有一個磁頭(Head)負責讀寫這個磁面(Side),在每個磁面上劃分了一圈一圈的同心圓,叫做柱面(Cylinder)對于軟盤通常稱之為磁道,在每個柱面中又劃分了若干段,稱之為扇區(Sector)。由于技術的發展,硬盤的密度越來越大,使得硬盤的實際盤片數越來越少,對磁盤操作的柱面、磁頭、扇區被硬盤控制器內部轉換,已經不是實際的柱面、磁頭、扇區了。由于最早時磁盤存取系統估計不足,傳輸數據時只給扇區留了6位,柱面留了10位,磁頭留了8位。也就是說,柱面最大只能為1023。但是大硬盤的柱面遠大于這個數,所以后來就采用將柱面數減少,將磁頭數增加的方式來滿足磁盤尋址的要求,對于實際地址的轉換在BIOS中進行,這叫邏輯塊尋址方式(Logical Block Addressing,LBA)硬盤中有關柱面、磁頭、扇區的數據都是以此為基準的。

第二篇:《枚舉算法》教學設計

《枚舉算法》教學設計

蒼南縣成人教育中心學校 陳榮軍

一、教學目標

1、知識與技能目標:

理解枚舉算法的基本原理,熟悉枚舉算法程序設計的基本思路及程序結構特點;學會使用枚舉算法解決現實生活、學習中所遇到的問題。

2、過程與方法:

圍繞“課堂任務導航程序”,通過課堂任務設計,讓學生熟悉用枚舉算法求解問題的基本過程,并把它運用到實際生活中去解決問題,學會選擇適當的枚舉方法多角度分析問題,解決問題。

3、情感態度與價值觀:

激發學生的學習熱情,提高學生自主學習能力,增強學生創新意識;引導學生關注枚舉算法在社會生活中的應用,并以此培養學生將算法思想運用到解決實際問題中去的能力。

二、學情分析

本節內容的教學對象是普通高中高一學生,他們經過半學期的信息技術教學,具備了一定的計算機操作能力;在VB程序設計方面,也已經有所學習,具備一定的基礎,但因所上課時不多,學生對VB還只是略知皮毛,語法及編程能力有待于進一步提高。

三、教材分析

1、本節主要內容介紹

枚舉算法是程序設計中使用最為普遍、學生必須熟練掌握和正確運用的一種算法。它利用計算機運算速度快、精確度高的特點,對要解決問題的所有可能情況,一個不漏地進行檢查,從中找出符合要求的答案。用枚舉算法解決問題,通常可以從確定范圍、逐一列舉,驗證條件、逐一驗證這兩個方面進行分析,把這兩個方面分析好了,問題自然會迎刃而解。

2、重點難點分析 教學重點:

(1)理解枚舉算法的基本原理。

(2)能根據問題描述確定枚舉范圍,并能用程序正確表示驗證條件。(3)枚舉算法的程序實現。教學難點:

(1)各種枚舉算法的優劣評價。(2)編程實現枚舉算法。

四、教學設計理念 采用了以學生的學習和發展為中心,基于建構主義理論的任務驅動、情境教學等教學方法,突出自主、合作、探究等學習方法;強調信息技術與生活實際的聯系,培養學生的邏輯思維能力、解決問題的能力以及創新意識等;設置多元化的評價方式,讓學生掌握學習內容的同時,形成交流與評價的能力。

主要教學方法:講授法、演示法、任務驅動、情境教學等 主要學習方法:自主學習,合作探究學習等

五、教學策略

通過“課堂任務導航程序”,在教學過程中,圍繞“情境導入→回顧算法思想→任務引領→自主學習→合作探究→交流評價→課堂總結”的教學流程來展開教學活動。

六、教學環境

教師用VB自制的“課堂任務導航程序”(客戶端)、教師服務端程序、多媒體網絡教室、多媒體教學軟件、VB6.0中文企業版等。

七、教學過程

一、情境導入(3分鐘)

教師活動:同學們,大家好!首先,很高興今天能給大家上一節課,希望老師今天的這節課能讓大家有所收獲。在上新課內容之前,老師想先請同學們幫老師一個忙(教師廣播展示VB制作的“QQ登錄程序”):老師前段時間申請了個QQ,結果把密碼給忘記了,但我記得密碼是由六位相同的數字組成,哪位同學能上來幫老師找出密碼?

學生活動:學生上臺,根據老師的描述,從000000到999999一一測試密碼,最終找到密碼。教師活動:非常感謝這位同學的幫忙!這位同學能說下,你是怎么找出密碼的嗎? 學生活動:從000000,111111,222222?? 999999這樣逐個測試。教師活動:很好。像剛才這位同學這樣,根據老師給的范圍,逐一列舉所有可能,并根據程序提示(驗證條件)逐一驗證,從而找出答案的方法就是今天我們要來共同學習的《枚舉算法》。

設計理念:通過學生熟悉的QQ密碼破解來引入課堂,增強學生興趣,也能使學生樂于接受。

二、回顧枚舉算法思想,提出課堂任務(5分鐘)

教師活動:教師廣播展示課件,學習枚舉算法的概念,說明枚舉算法的兩個關鍵點:

1、確定范圍,一一列舉(既不遺漏,也不多余);

2、確定條件,逐一驗證。教師活動:在了解了枚舉算法的概念后,同學們能不能列舉幾個我們實際生活中用枚舉算法解決的問題的例子呢? 學生活動:學生舉例(教師根據例子引導分析,重點強調“確定范圍、一一列舉,根據條件、逐一驗證”)

教師活動:非常好!看來大家對枚舉算法已經有了一定的理解了,接下來,我們來看下在程序里面,如何實現枚舉算法解決問題。請大家打開桌面“學生”文件夾里的“課堂任務導航.exe”,完成“任務一”。(教師簡要說明“課堂任務導航程序“使用方法)

三、課堂任務一(10分鐘)

學生活動:根據課堂任務導航程序及幫助信息自主完成課堂“任務一”(4分鐘)教師活動:教師巡視、個別指導,觀察、總結并及時記錄學生在完成任務過程中出現的問題。同時,在“教師服務端”程序中觀察展示學生任務一的完成情況,及時了解學生的學習進度。

任務反饋:大部分學生能順利完成任務一,對于不能自主完成的,可由已完成學生幫助完成。

教師活動:很好!大部分同學已經完成任務一了,接下來讓我們一起看下我們的程序是如何實現枚舉算法的。教師展示任務一程序(廣播)教師活動:我們知道要想實現枚舉算法,主要是要做到兩點:一個是確定枚舉范圍進行一一列舉;還有就是根據條件,逐一驗證。我們來看下我們的程序的怎么實現這兩點的?

學生活動:觀察程序,思考。

教師活動:我們先來看下“確定范圍、一一列舉”在程序里是如何體現的?(6分鐘)

學生活動:使用for語句實現

教師活動:“根據條件,逐一驗證”呢? 學生活動:if語句

教師活動:很好!一般實現枚舉算法的程序都是由循環結構嵌套分支結構組成。好了,大家現在已經知道了枚舉算法的程序結構了,接下來請同學們繼續完成任務二。

(設計理念:通過任務一的設計,讓學生自主探究學習,培養學生的自主探究學習能力,通過學生互助,培養學生互幫互助的精神;通過對任務一的程序分析,培養學生的善于觀察思考、解決問題的能力,并讓學生熟悉枚舉算法的程序結構特點,以便學生能更加順利的完成任務二。)

四、課堂任務二(設置陷阱,探討交流)(15分鐘)學生活動:學生先自主完成任務二。(5分鐘)

教師活動:教師巡視、個別指導,觀察學生在完成任務過程中出現的問題:有些學生能輸出58個數,有些學生只輸出6個數,原因在哪里?請一個能輸出58個數的學生上臺演示操作,然后讓學生分析輸出的這些數都能滿足要求嗎?經過分析,學生會發現有些數的個位數不符合要求。提出問題:如何修改程序將不符合要求的數去掉?(2分鐘)

學生活動:修改程序(由學生小組合作相互探討完成)。(5分鐘)教師活動:當有部分學生輸出正確答案后,請一個能輸出正確結果的學生分析如何修改,并到教師機上修改剛才錯誤的程序(算法1); 請一個不同算法的同學來修改程序(算法2);讓他們分析各自算法的效率誰更高。然后教師小結,鼓勵學生要善于發現問題、深入分析問題、積極解決問題;從不同角度分析問題可以得到不同效率的算法。(3分鐘)

(設計理念:設計任務陷阱培養學生善于發現問題、深入分析問題、積極解決問題的能力;通過探討交流,培養學生的團體協作能力及合作探究精神;設計任務一題多解,培養學生從不同角度分析問題的能力,鍛煉學生的發散性思維。通過算法分析,讓學生理解算法的執行效率,懂得選擇最優算法去解決問題,提高程序的性能。)

五、層層遞進,任務拓展(高層次學生做)

拓展任務:在任務二的基礎上,增加驗證條件:“十位數是3的倍數,百位數是4的倍數”,提出問題:如何將數字里的十位數和百位數分離?

學生活動:學生通過教師提供的幫助材料,討論分析問題,嘗試去完成拓展任務 教師活動:教師觀察,引導。

(設計理念:設計拓展任務,提高任務難度梯度,供高層次學生完成,以實施課堂中的分層教學。)

六、提交作品,課堂評價(3分鐘)

學生提交作品,教師選擇幾個作品做總結性評價。

七、歸納總結、布置課后作業(1分鐘)

1、通過“教師服務端”程序中學生“自我評價”中的知識點,進行課堂總結:(1)枚舉算法的基本原理:

確定范圍、逐一列舉(既不遺漏,也不多余)(循環語句)確定條件、逐一驗證

(條件語句)

(2)枚舉算法中范圍的確定及列舉:循環語句(如for)實現

(3)枚舉算法中驗證條件的表示:利用if語句進行條件判斷;條件表示主要運用VB中的算數運算符及邏輯運算符實現。(4)實現枚舉算法的程序結構特點:

外層循環嵌套內層條件判斷

2、布置課后作業: 找水仙花數(學生任務導航程序)

(設計理念:通過知識總結,幫助學生將知識系統化,便于學生理解記憶。通過知識的延伸,促使學生將知識內化,并進行能力遷移,進一步提高學生解決問題的能力。)

八、自我評價(1分鐘)

讓學生利用“課堂任務導航程序”中的自我評價功能進行自我評價。教師活動:展示學生自評結果。

(設計理念:通過評價,引導學生自我反思,加深對所學知識的認識與理解;教師查看學生自我評價結果能及時了解到學生對本堂課所學知識點的掌握情況,以便安排后續教學內容。)

第三篇:簡單枚舉個性化教案

大愚教育中小學個性化學習中心

簡單枚舉

專題解析:

枚舉是一種常見的分析問題、解決問題的方法。一般地,要根據問題要求,一一列舉問題解答。運用枚舉法解應用題時,必須注意無重復、無遺漏,因此必須有次序、有規律地進行枚舉。運用枚舉法解題的關鍵是要正確分類,要注意以下兩點:一是分類要全,不能造成遺漏;二是枚舉要清,要將每一個符合條件的對象都列舉出來。

例1.小華家到學校有3條路可走,從學校到文峰公園有4條路可走。從小華家到文峰公園,有幾種不同的走法?

分析與解答:為了幫助理解題意,我們可以畫出如上示意圖。

我們把小華的不同走法一一列舉如下:根據列舉可知,從小明家經學校到文峰公園,走①路有4種不同走法,走②路有4種不同走法,走③路也有4種不同走法,共有4×3=12種不同走法。

練習一

1.從甲地到乙地,有3條公路直達,從乙地到丙地有2條鐵路直達。從甲地到丙地有多少種不同走法?

2.新華書店有3種不同的英語書,4種不同的數學讀物銷售。小明想買一種英語書和一種數學讀物,共有多少種不同買法?

例2.用紅、綠、黃三種信號燈組成一種信號,可以組成多少種不同的信號?

分析與解答:要使信號不同,要求每一種信號顏色的順序不同,我們可以把這些信號進行列舉。可以看出,紅色信號燈排在第一個位置時,有兩種不同的信號,綠色信號燈排在第一個位置時,也有兩種不同的信號,黃色信號燈排在第一個位置時,也有兩種不同的信號,因而共有3個2種不同排列方法,即2×3=6種。

練習二

1.用紅、黃、藍三種顏色涂圓圈,每個圓圈涂一種顏色,一共有多少種不同的涂法?○○○

大愚教育中小學個性化學習中心

2.用2、3、5、7四個數字,可以組成多少個不同的四位數?

例3.一個長方形的周長是22米,如果它的長和寬都是整米數,那么這個長方形的面積有多少種可能?

分析與解答:由于長方形的周長是22米,可知它的長與寬之和為11米。下面列舉出符合這個條件的各種長方形:

練習三

1.一個長方形的周長是30厘米,如果它的長和寬都是整厘米數,那么這個長方形的面積有多少種可能值?

2.3個自然數的乘積是18,問由這樣的3個數所組成的數組有多少個?如(1.2.9)就是其中的一個,而且數組中數字相同但順序不同的算作同一數組,如(1.2.9)和(2.9,1)是同一數組。

例4.有4位小朋友,寒假中互相通一次電話,他們一共打了多少次電話?

分析與解答:把4個小朋友分別編號:A、B、C、D,A與其他小朋友打電話,應該打3次,同樣B小朋友也應打3次電話,同樣C、D應該各打3次電話。4個小朋友,共打了3×4=12次。但題目要求兩個小朋友之間只要通一次電話,那么A打電話給B時,A、B兩人已經通過話了,所以B沒有必要再打電話給A,照這樣計算,12次電話中,有一半是重復計算的,所以實際打電話的次數是3×4÷2=6次。

練習四

1.6個小隊進行排球比賽,每兩隊比賽一場,共要進行多少次比賽?

2.小芳出席由19人參加的聯歡會,散會后,每兩人都要握一次手,他們一共握了多少次手?

課后練習

1.明明有2件不同的上衣,3條不同的褲子,4雙不同的鞋子。最多可搭配成多少種不同的裝束?

2.用數字1、2、3.可以組成多少個不同的三位數?分別是哪幾個數?

3把15個玻璃球分成數量不同的4堆,共有多少種不同的分法?

4.有8位小朋友,要互通一次電話,他們一共打了多少次電話?

第四篇:2011.10.25詢盤總結

關于詢盤的報告

第一封回盤非常重要,關系到后續客戶會不會繼續跟你交談,對不的產品滿不滿意等問題,所以在第一封回盤時,要先對客戶的詢盤進行認真的分析。

拿到一份詢盤,我們要先認真看清客戶的資料,包括:對你的稱呼、名字、哪種郵箱,國家。客戶的產品需求等。其中國家很重要,我們要關注他們的時差問題,根據他們的活躍時間段給他們回復郵件,這樣被關注率會大大提高,進一步的交流也會大大提高。

我們把詢盤大致分為三種:

1、垃圾詢盤,問一些不相關的信息,對于這種郵件可以直接pass掉。

2、群發詢盤,這種詢盤一般可以根據稱呼來判斷,如Dear sir,這種郵件一般是想尋找合作伙伴,不用馬上給他回復,可以等把手頭上重要的郵件回復完再去回復他們。這種客戶一般是潛在客戶,要持續和他們保持聯系,了解他們的需求。必要的時候用不同郵箱跟他們交流。

3、高質量詢盤,有針對性地問了產品問題或者直接給出訂單等。這些郵件要認真揣測客戶的意象,具體有下面幾種形式。

(1)直接要報價單,這種郵件一般是群發的。第一次回復一定不能馬上給我們的報價單。先跟他進行一些細節的交談,看看客戶是不是真誠的要買產品。比如問客戶需要什么類型產品、規格、型號、材質、市場需求、以為的采購數量、有沒有與中國供應商交易的經歷等。如果客戶有留下自己的公司名稱,可以直接到谷歌去搜索一下。經過交談我們也可以跟他推薦一下他們之前用過、我們有的一些新款產品,說出我們產品的優點等。

(2)如果詢盤的郵件用很大的篇幅去描述他們的公司,就是針對一些大公司客戶時,我們的回盤一定要專業。價格一般不是大公司考慮的首要問題,品質和服務是最重要的。我們要詳細地舉出我們產品品質的優勢,回盤要讓客戶感受的我們的良好的服務質量。

(3)如果一些客戶詢盤是直接給出了要買哪種產品,型號,數量都已經說得很清楚,也就是說訂單已經成了,現在只關心價格問題。這時他肯定針對的不只是你一個客戶。所以我們一定要給出報價,價格要適當留一點空間,而且服務要好點,這種客戶能成就馬上成,不行就over了。不過如果這次訂單沒成的話,我們也要這個客戶保存著,實時跟他聯系,了解他的需求。這有一關鍵的點,就是如果你可以打電話,直接打電話更好。這樣客戶對你就印象深刻,也讓客戶知道你對他的重視。

我們要有針對地回復客戶的詢盤,比如一些客戶有講了他們公司的簡介,我們回盤時也要相應介紹一下我們公司等。

報價問題,對小訂單的報價,我們一般直接報總價(產品價格和一切運費雜費都加進去),對于大訂單的報價,我們一般報基本價格和FOB,這兩部分。

以上是我今天的心得總結。

Michael cheung

2011.12.25

第五篇:4月份復盤總結

4月份復盤總結

通過4月份的工作,監理單位對本月工作情況總結:

一、質量方面:

1、鋼筋加工

鋼筋料場方面:監理單位在上月對現場鋼筋料場進行了嚴格管控,做到每日一檢。對料場內鋼筋的凈長尺寸,彎鉤長度,以及箍筋內截面尺寸進行實測實量,如實填寫實測實量表格并及時上報給業主。通過上月監理對料場的嚴格管控,施工方在鋼筋安裝時減少了很多不必要的錯誤,加快了監理驗收進度,同時也控制了現場的鋼筋安裝質量。

2、鋼筋安裝

上月監理單位嚴格按照圖集及規范要求對鋼筋安裝方面進行了重點檢查,對于措施筋,墻柱鋼筋以及梁板筋進行了嚴格管控,包括鋼筋搭接錨固長度問題,保護層問題,鋼筋偏位問題,綁線滿綁及墊塊的鋪放問題等。監理單位在驗收過程中做到了過程中管控,對于現場每道施工工序做到提前驗收,并做好實測實量工作。對于現場鋼筋施工進度方面給予了最大的支持,施工方對于監理單位的要求也進行了相應的整改,但有些細節問題仍沒有完全按照首件制制度進行施工。要求施工單位在本月的施工過程中對于細節問題進行進一步的管控。

3、模板安裝

現場模板安裝方面存在的問題相應較多,包括模板標高,垂直度,定位情況,模板加固情況以及現場支模架問題。監理單位在模板安裝過程中進行了嚴格管控,并及時做好實測實量工作,對于不滿足規范要求的地方,要求其立即整改。但對于部分問題的解決有了相應的難度,例如支模架的安裝不能完全按照施工方案進行施工。要求下月在模板安裝的過程中,施工單位必須對此類問題進行進一步整改,監理單位對模板安裝加強管控。

4、混凝土澆筑

①監理單位對于混凝土澆筑做到了全程管控并做好旁站工作,對于現場混凝土澆筑過程中鋼筋修補問題,混凝土標號問題,現場混凝土振搗問題做到了及時管控,并做好旁站記錄。同時也對混凝土澆筑完成后的養護及成活面問題進行了及時跟蹤,對于不滿足規范要求問題,要求施工單位及時進行整改。

② 對于現場混凝土拆模后的墻面、梁底混凝土缺陷問題進行及

時跟蹤。并對墻身截面尺寸,垂直度,平整度問題做好實測實量工作,并及時要求施工單位對于相應問題進行整改。

5、實測實量工作

上月監理單位對于實測實量工作進行了嚴格管控,在各項工序驗收的過程中對于各道工序進行具有真實性的實測實量工作,并及時做好實測實量記錄與臺帳并要求施工單位進行100%。實測實量,對提升施工質量和施工速度起到了重要作用。

二、安全方面

1、外腳手架問題

上月監理單位對現場外腳手架安裝問題進行了嚴格管控,并有了相應的改進。但在2013年施工過程中,對于外腳手架安裝問題的遺留過多,監理單位已經及時發現并要求施工單位及時進行整改。希望施工單位在遺留問題整改過程中能做到進一步的管控,并加強管控力度。做到在最短的時間內將上述問題整改完畢。

2、支模架問題

監理單位在驗收過程中,對于現場支模架問題進行了嚴格管控,包括支模架掃地桿,橫桿、立桿間距,剪刀撐,U托,次龍骨間距,自由端橫桿等問題。施工單位對于支模架的安裝也有了相應改進,但仍有一些問題沒有完全按照施工方案進行施工,希望施工單位在日后施工過程中能進一步加強管控。同時也將此項工作作為今后安全管控的重點。

3、臨邊洞口修復問題

監理單位在巡視過場中對于各棟號內洞口及臨邊防護問題進行跟蹤檢查,并且要求施工單位對于此類問題進行及時整改。但對于拆模后樓層洞口筋臨邊的防護問題監理單位雖然反復要求,但施工單位仍沒有整改動作。在本月監理方重點加強這方面的管控。

4、配電箱管控問題

1、對于現場配電箱電線無接地,一閘多用,巡檢記錄不完整等

問題,監理單位已明確提出并要求施工單位及時進行整改。

三、內業資料問題

1、監理工程師通知單,聯系單的下發與回復問題

監理單位對于現場各道工序發生的問題及時以監理通知單或聯系單形式及時下發到施工單位,并要求施工單位及時整改并回復。但施工單位對監理通知單的回復嚴肅性沒有高度的認識,對監理通知單的回復有敷衍現象。

2、原材料進廠管控問題

上月監理單位對于現場原材料進廠問題進行了重點控制,對于原材料外觀,直徑尺寸,合格證及爐批號進行重點驗收,做好實測實量表格及影像資料等并及時匯總,做好臺帳。如果發現原材料不符合規范要求,要求其立即退場。

3、澆筑令問題

① 混凝土澆筑前,要求施工單位將混凝土澆筑令及相應資料提前做好。所有人簽字確認后方可允許施工單位進行混凝土澆筑。

② 對于澆筑令內各項隱蔽驗收、檢驗批、測量放線、復試報告、施工單位自檢記錄(施工單位實測實量驗收表)進行檢查。合格后對與現場進行驗收,并做好實測實量記錄。

4、各類臺帳的建立、存檔問題

監理單位對所有臺帳進行建立,并及時存檔。

5、二次復試報告管控

監理單位對于現場鋼筋送樣及二次報告回復問題進行嚴控,并要求施工單位在二次復試報告問題加強管理。

6、會議紀要、監理例會等

上月監理單位對各項會議所提出的問題進行了充分的總結,并已會議紀要的形式下發給施工單位。同時監理單位也做到了問題的跟蹤與解決,并要求施工單位對于會議內容上的問題進行及時整改與回復。每周做好監理例會總結,并將監理在每周發現的問題及下周工作重點及時上報給業主。

7、銷項清單

監理單位堅持每周對現場施工進行檢查,做好記錄及影像資料。及時匯總成銷項清單形式并下發給施工單位。對于發現的問題要求施工單位及時整改并回復。

四、現場文明施工問題

現場文明施工方面:本月監理單位重點管控了現場文明施工問題,對于現場鋼筋加工區圍擋,責任人標識牌,鋼筋標識標牌,以及現場加工棚進行了嚴格檢查,施工單位也積極的配合了監理單位的工作,對現場文明施工情況進行了及時整改。但現場鋼筋料場仍有不足的地方,包括彎曲機芯軸問題,現場機械未能全部在加工棚內進行加工問題等。監理單位應對此類問題進行進一步的管控。

通過上月各棟號首件制制度的落實,施工單位對于各道工序的質量方面有了明顯的改進。但仍有一些問題沒有完全按照首件制制度執

行,希望施工單位在日后的施工過程中能完全按照首件制制度執行。監理單位對于日后的施工工作加強管控,同時也希望業主對監理單位的工作給予支持。

下載U盤枚舉(自己總結)word格式文檔
下載U盤枚舉(自己總結).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    盤車工藝總結

    龍背灣盤車及抱瓦工藝總結 一、發電機盤車(軸線測量)并調整 1、盤車前準備 (1)、上導沿圓周八等分或十二等分(可結合自己電廠上導瓦的個數確認等分數目,由于我廠上、下導均為12塊......

    踩盤方法總結

    踩盤方法總結 研發部 第一部分:踩盤者的潛規則 1、到售樓處踩盤就是為了搜集情報和增長見識和做到“知彼知己,百戰不殆” 踩盤的作用有兩個: 一是了解可類比樓盤和競爭對手的......

    踩盤學習總結

    學習總結 時間過得好快,轉眼我來到公司一個月了,從一個會計轉為一名置業顧問,期間,我學到了很多知識,從短短的幾天時間學房地產基礎知識、**項目基礎知識,到最后上崗接待客戶,從中......

    第一次踩盤總結

    第一次踩盤沒有什么經驗,我簡單和大家分享一下今天出現的問題,希望引以為鑒。 一 根據自身實力選擇明踩、暗踩。 1現在大家的水平估計很快就會被認出來所以建議明踩,而且暗踩......

    實用的枚舉算法教案

    《實用的枚舉算法》教案 上課時間:2016.4.29 班級:技術1班 授課教師:徐飛翔 一、教學目標: 1、知識與技能: (1)理解枚舉算法的概念。 (2)通過枚舉算法,理解循環中嵌套分支的結構特點,執......

    論證模型之枚舉歸納

    論證模型之枚舉歸納 首先,我們先來看一道真題: 莫大偉到吉安公司上班的第一天,就被公司職工自由散漫的表現所震驚,莫大偉由此得出結論,吉安公司是一個管理失效的公司。吉安公司的......

    第6課 枚舉法 說課稿

    各位評委老師好!我說課的題目是《枚舉法》主要分為六個方面來說課。 一、說教材: 枚舉法求解問題是現實生活中經常用到的一種方法,重點是如何從實際問題建立適當的數學模型、構......

    踩盤技巧總結匯總

    關于踩盤 討論背景 最近公司的踩盤活動較多,發現在踩盤過程中有很多信息是可以不用去現場就可以查到的,有些信息到了現場還是得不到。于是腦袋里出現了一些問題——踩盤的目的......

主站蜘蛛池模板: 精品国产自在现线看久久| 亚洲第一最快av网站| 国产成人麻豆精品午夜福利在线| 国色天香天天影院综合网| 激情五月开心综合亚洲| 国产免费无遮挡吸乳视频| 日本成本人片视频免费| 亚洲精品av中文字幕在线| 免费观看美女裸体网站| 国产精品另类激情久久久免费| 182tv午夜福利在线地址二| 狠狠噜天天噜日日噜色综合| 亚洲中文超碰中文字幕| 中文字幕人妻丝袜成熟乱| 一本色道久久88综合日韩精品| 免费一区二区三区成人免费视频| 亚洲综合另类小说色区| 欧美成人午夜精品久久久| 国产精品亚洲日韩欧美色窝窝色欲| 色偷偷888欧美精品久久久| 美女黄18以下禁止观看| 蜜桃视频插满18在线观看| 国产在线视频精品视频| 男女啪啪高清无遮挡免费| 久久婷婷色综合一区二区| 蜜桃视频无码区在线观看| 久久久久久久性潮| 国产精品v欧美精品v日韩精品| 日韩一区二区三区高清电影| 国产97成人亚洲综合在线| 成人亚洲欧美一区二区| 国产午夜福利短视频| 国产午夜福利久久精品| 国产人妻丰满熟妇嗷嗷叫| 亚欧乱色国产精品免费九库| 国产精品免费观看久久| 日本大片免a费观看视频三区| 亚洲精品一区二区三区的| 久久婷婷五月综合97色| 国产69久久精品成人看| 欧美三级中文字幕在线观看|