boost在linux下序列化然后在windows反序列的问题

在linux下使用了boost的序列化,发现序列化的文件是
开始:
&(此处有7个空格)serialization::archive&
正方形的符号我打不出来,用&代替

而我在windows下执行反序列化的时候
发现在读取文件头的时候错误,然后我最终代码,发现在读取serialization::archive的时候,之前多了4个0值

在windows下,正确的序列化文件应该是
&(此处有3个空格)serialization::archive&

问题出在了&符号后面,在linux下,自动对齐补了7个字节,而在windows下,却只在&后补了3个字节自动对齐

请问,如何才能是在linux下,自动对齐只补3个字节,或者说在windows下,自动对齐的时候会补上7个字节?