论文部分内容阅读
随着计算机的发展,特别是操作系统和多处理器的出现,如何开发高效率的多线程的并发程序也显得越来越重要。传统的基于锁的同步机制解决了多线程对同一对象操作的正确性问题,但是没有解决一些例如死锁和优先级倒置等问题,而且在中度甚至高度并发的情况下,系统的效率也不能满足人们的要求。本文重点研究了非阻塞算法,实现了堆栈和链表数据结构上的非阻塞算法,并将其应用到文件访问控制系统中。实验表明,非阻塞算法在实现并发控制功能的同时也提高了系统的吞吐率以及解决了基于锁的机制中存在的死锁等问题。为了解决基于访问控制列表的方法所存在的问题,文中将基于PKI技术的SPKI属性证书引入到文件访问控制系统中,对SPKI证书的一些相关问题进行研究:在MIT的JSDSI包的基础上,改进现有的SPKI证书的结构,设计和实现了颁发给用户的属性证书和资源所拥有的策略证书;同时对于证书的生成过程和在关系数据库中的存储与管理进行了研究;最后详细讨论了证书链搜索中的证书集的化简问题,实现了基于Collection和HashMap的方法。本文最后设计和实现了一个基于Web的安全文件访问系统,通过试验验证了非阻塞方法取代基于锁的同步方法的可行性。