Break instruction in kernel code[#1]:

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
Absolut
Linux 4.x
Linux 4.x
Messaggi: 1465
Iscritto il: gio 10 feb 2005, 0:00
Slackware: current
Località: Roma

Break instruction in kernel code[#1]:

Messaggio da Absolut »

Cos'è esattamente!!??? e cosa lo può causare!?

grazie!

Mario Vanoni
Iper Master
Iper Master
Messaggi: 3174
Iscritto il: lun 3 set 2007, 21:20
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey
Località: Cuasso al Monte (VA)

Re: Break instruction in kernel code[#1]:

Messaggio da Mario Vanoni »

Absolut ha scritto:Cos'è esattamente!!??? e cosa lo può causare!?
#1 e` un argomento di as(1),
non avendo mai lavorato con assembler, ignoro, sorry.

Ricorda che il kernel ha minima parte scritta in assembler.

Avatar utente
Absolut
Linux 4.x
Linux 4.x
Messaggi: 1465
Iscritto il: gio 10 feb 2005, 0:00
Slackware: current
Località: Roma

Re: Break instruction in kernel code[#1]:

Messaggio da Absolut »

sapresti indicarmi dove trovare qualche informazione circa il Break instruction in kernel code!?

grazie!

Mario Vanoni
Iper Master
Iper Master
Messaggi: 3174
Iscritto il: lun 3 set 2007, 21:20
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey
Località: Cuasso al Monte (VA)

Re: Break instruction in kernel code[#1]:

Messaggio da Mario Vanoni »

Absolut ha scritto:sapresti indicarmi dove trovare qualche informazione circa il Break instruction in kernel code!?
Sorry, non nel kernel, essendo una istruzione assembler
http://www.redhat.com/docs/manuals/ente ... #MODIFIERS

Codice: Seleziona tutto

6.36.3. Constraint Modifier Characters
Here are constraint modifier characters.
=
    Means that this operand is write-only for this instruction: the previous value is discarded and replaced by output data.
+
    Means that this operand is both read and written by the instruction.
    When the compiler fixes up the operands to satisfy the constraints, it needs to know which operands are inputs to the instruction and which are outputs from it. = identifies an output; + identifies an operand that is both input and output; all other operands are assumed to be input only.
    If you specify = or + in a constraint, you put it in the first character of the constraint string.
&
    Means (in a particular alternative) that this operand is an earlyclobber operand, which is modified before the instruction is finished using the input operands. Therefore, this operand may not lie in a register that is used as an input operand or as part of any memory address.
    & applies only to the alternative in which it is written. In constraints with multiple alternatives, sometimes one alternative requires & while others do not. See, for example, the movdf insn of the 68000.
    An input operand can be tied to an earlyclobber operand if its only use as an input occurs before the early result is written. Adding alternatives of this form often allows GCC to produce better code when only some of the inputs can be affected by the earlyclobber. See, for example, the mulsi3 insn of the ARM.
    & does not obviate the need to write =.
%
    Declares the instruction to be commutative for this operand and the following operand. This means that the compiler may interchange the two operands if that is the cheapest way to make all operands fit the constraints. GCC can only handle one commutative pair in an asm; if you use more, the compiler may fail. Note that you need not use the modifier if the two alternatives are strictly identical; this would only waste time in the reload pass.
#
    Says that all following characters, up to the next comma, are to be ignored as a constraint. They are significant only for choosing register preferences.
*
    Says that the following character should be ignored when choosing register preferences. * has no effect on the meaning of the constraint as a constraint, and no effect on reloading. 
Quindi "#" significante unicamente per il registro di memoria scelto, a livello del SW utilizzato.

Rispondi