The correct answer is D. All of the above.
In a perfectly competitive market, there are a large number of firms producing identical products. This means that each firm has a small share of the market and cannot influence the market price. Firms are also free to enter and exit the market, which means that if a firm is making supernormal profits, other firms will enter the market and compete away those profits. Similarly, if a firm is making losses, it will exit the market.
Perfect knowledge means that all firms and consumers have perfect information about prices, costs, and technology. This means that firms cannot charge a price above the market price, and consumers cannot buy goods at a price below the market price.
Perfect mobility of factors means that factors of production (such as labor and capital) can move freely between firms and industries. This means that if a firm is making supernormal profits, it will attract more factors of production, which will increase its costs and reduce its profits. Similarly, if a firm is making losses, it will lose factors of production, which will reduce its costs and increase its profits.
As a result of these factors, in the long run, perfectly competitive firms will earn normal profits. This is because the entry and exit of firms will ensure that the market price is equal to the average cost of production.