Finding page size (Allocation Unit) of SD cards and other flash devices. RRS feed

  • Question

  • Hello,

    I need to know if there's anyway in win32 to find out the flash page size (Allocation Unit size as the SD specification calls them) of an SD card or other flash devices in a user mode application. The reason is that I've developed a file system library for embedded devices and I would like to provide a format utility for Windows but it needs to be able to align the file system with the flash pages.

    On the device I can get it from the SD card registers, so I'm looking for a similar way to do it in Windows. I know I make a good guess of the page size by probing the card with writes and timing how long it takes but I'm looking for a simple and 100% accurate way of doing it, and preferably one that works for any flash device, not just SD. It would also be useful to find the speed class of the SD card but the essential thing is the page (AU) size.



    • Moved by Jane Wang - MSFT Monday, December 16, 2013 3:17 AM more appropriate forum
    Saturday, December 14, 2013 2:12 AM

All replies

  • Hello,

    I have moved this question to the related forum for better response.

    Thanks for your understanding.

    Best Regards,


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Monday, December 16, 2013 3:18 AM
  • Thanks, I thought of posting on this forum but thought the C++ forum would be more appropriate since I'm not writing a windows driver. I'm just looking for a Win32 API call that I can call from a user application to get the page size of the SD card or other flash memory.
    Wednesday, December 18, 2013 1:00 AM