// if (C->N[0] == C->N[0]); // this line will speed up execution significantlyC = C->N[u]; } void addNode(Key *key, int value){...};在前缀树(也称为Trie)的实现中,我发现90%的findNode()执行时
因为我试图为raspberry pi 0开发一个简单的基本操作系统,因此我使用wiki.osdev.org的引导代码跳转到c代码。在它里面,我试图写一些数据到协处理器寄存器,确切地说,是“协处理器控制访问寄存器”。我能读得很好,但当我尝试写作时,价值不会改变。根据处理器的技术参考手册:,您必须在更新协处理器访问控制寄存器之后立即执行指令内存屏障(IMB)序列。我尝试过数据同步屏障操作和预取缓冲区的刷新操作的多种组合。但这不起作用,所以我不知道如何做这个