[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[f-cpu] SR security



Hi,

	Because on the F-CPU all the security depend on TLB and SR, we need to 
discuss about them. 
	About SR, I think that we have 2 differents class of SR, the one that can 
only be read and the other than can be read and write. The one that are 
readed can be readed by a lot of normal program, I mean that we will have 
some SR for the Floating Point (rouding flags, ...) for example. And you must 
have a quick access to them.
	For the others, they can be slow, because write on them can change the 
internal state of the CPU. Finally we must access to both of them with the 
immediate form of GET/PUT.

	Why not using the LSB to determine if the SR is read only or not ?

	In the manual, we currently have some specified SR : TLB_OFF, GET_CMB,
GET_VM (I think we have : FAMILY, STEPPING, MAX_SIZE, SIZE_0, SIZE_1, SIZE_2,
SIZE_3, MAX_CHUNK_SIZE, CYCLE, IRQ_BASE, IRQ_SIZE, TRAP_BASE, TRAP_SIZE,
SYSCALL_BASE, SYSCALL_SIZE, URL, URL_SIZE, TIME_SLICE, CMB_NEXT, CMB). In 
fact we must clarify them, TLB_OFF is really usefull. We didn't need  GET_CMB 
and GET_VM has defined into the manual. We currently have an other strange 
SR : TLBMISS_BASE (For me it's a trap). And I didn't understood the meaning of
PAGING and CONTROL.
	What I think we need to add :
		- READ_ONLY, that say if we must trap or not when we access 
to read only SR
		- WRITE_ONLY, idem but for read/write SR
		- ASI, the Identifier of the current task
		- IRQ_STACK_BASE and IRQ_STACK_SIZE, for being able to handle 
multiple IRQ at the same time
		- TRAP_STACK_BASE and TRAP_STACK_SIZE, in case of multiple TRAP
(I think it's not usefull, because the trap handler must do his job correctly)
		
	So it's a resume of what I read in the last snapshot from Whygee, in the 
manual and what we say on the mailing list. I hope I didn't forget or 
missunderstand something.

Cedric

PS: my objective it's to start adding a SR map for the next release of the 
manual so that thinking to port an OS like L4 can start.
*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu       in the body. http://f-cpu.seul.org/