[42Seoul] libasm 평가지표

hyeonze·2021년 3월 9일
0

42Seoul

목록 보기
9/9

Git repository

Introduction

Please respect the following rules:

  • Remain polite, courteous, respectful and constructive throughout the evaluation process. The well-being of the community depends on it.
  • Identify with the person (or the group) evaluated the eventual dysfunctio ns of the work. Take the time to discuss and debate the problems you have identified.
  • You must consider that there might be some difference in how your peers might have understood the project's instructions and the scope of its functionalities. Always keep an open mind and grade him/her as honestly as possible. The pedagogy is valid only and only if peer-evaluation is conducted seriously.

Guidelines

  • Only grade the work that is in the student or group's GiT repository.
  • Double-check that the GiT repository belongs to the student or the group. Ensure that the work is for the relevant project and also check that "git clone" is used in an empty folder.
  • Check carefully that no malicious aliases was used to fool you and make you evaluate something other than the content of the official repository.
  • To avoid any surprises, carefully check that both the evaluating and the evaluated students have reviewed the possible scripts used to facilitate the grading.
  • If the evaluating student has not completed that particular project yet, it is mandatory for this student to read the entire subject prior to starting the defence.
  • Use the flags available on this scale to signal an empty repository, non-functioning program, a norm error, cheating etc. In these cases, the grading is over and the final grade is 14 (or -42 in case of cheating). However, with the exception of cheating, you are encouraged to continue to discuss your work (even if you have not finished it) in order to identify any issues that may have caused this failure and avoid repeating the same mistake in the future.
  • Remember that for the duration of the defence, no segfault, no other unexpected, premature, uncontrolled or unexpected termination of the program, else the final grade is 14. Use the appropriate flag.
    You should never have to edit any file except the configuration file if it exists.
    If you want to edit a file, take the time to explicit the reasons with the evaluated student and make sure both of you are okay with this.
  • You must also verify the absence of memory leaks. Any memory allocated on the heap must be properly freed before the end of execution.
    You are allowed to use any of the different tools available on the computer, such as leaks, valgrind, or e_fence. In case of memory leaks, tick the appropriate flag.

Attachments

subject.pdf

Mandatory Part

Check the library

  • The library should consist of only .s files
  • The makefile should not relink if not necessary
  • Use the main.c and link it to the library with -L. -lasm
  • For each function, you must check with errno (#include ) that the syscalls errors are properly reported from the asm code
    Yes
    No

ft_strlen

  • Try ft_strlen with an empty string
  • Try ft_strlen with a very long string
    Yes
    No

ft_strcpy

  • Try ft_strcpy with an empty string
  • Try ft_strcpy with a very long string
    Yes
    No

ft_strcmp

  • Try ft_strcmp with 2 empty strings
  • Try ft_strcmp with 1 empty string as first argument
  • Try ft_strcmp with 1 empty string as second argument
  • Try ft_strcmp with multiple strings, equal or not, think about switching them
    Yes
    No

ft_write

  • Try ft_write with the stdout
  • Try ft_write with an open file descriptor
  • Try ft_write with a wrong file descriptor
  • Check the return value
    Yes
    No

ft_read

  • Try ft_read with the stdin
  • Try ft_read with an open file descriptor
  • Try ft_read with a wrong file descriptor
  • Check the return value
    Yes
    No

ft_strdup

  • Try ft_strdup with an empty string
  • Try ft_strdup with a very long string
    Yes
    No

Bonus

We will look at your bonuses if and only if your mandatory part is excellent. This means that you must complete the mandatory part, beginning to end, and your error management must be flawless, even in cases of twisted or bad usage. So if you didn't score all the points on the mandatory part during this defence bonuses will be totally ignored.

ft_atoi_base

  • Check if ft_atoi_base is working as expected
  • Try with a base 2 and a base 314
    Yes
    No

ft_list_push

  • Check if ft_list_push is working as expected
    Yes
    No

ft_list_size

  • Check if ft_list_size is working as expected
    Yes
    No

ft_list_sort

  • Check if ft_list_sort is working as expected
    Yes
    No

ft_list_remove_if

  • Check if ft_list_remove_if is working as expected
  • You can use ft_strcmp in it for example
profile
Advanced thinking should be put into advanced code.

0개의 댓글